From 71771034aa34e52f960d6eff678d1fba74945bef Mon Sep 17 00:00:00 2001 From: Nick Date: Wed, 18 Mar 2026 16:58:37 +0200 Subject: [PATCH 1/5] add contentful app with actions and triggers --- .github/workflows/pull_request.yml | 2 + ts/package.json | 1 + ts/src/ActionsCatalogue/index.ts | 2 + .../actions/assets/archive-asset.action.ts | 63 + .../actions/assets/create-asset.action.ts | 114 + .../actions/assets/delete-asset.action.ts | 62 + .../actions/assets/get-asset.action.ts | 48 + .../actions/assets/publish-asset.action.ts | 55 + .../actions/assets/search-assets.action.ts | 87 + .../actions/assets/unpublish-asset.action.ts | 54 + .../actions/assets/update-asset.action.ts | 75 + .../activate-content-type.action.ts | 57 + .../actions/content-types/add-field.action.ts | 106 + .../create-content-type.action.ts | 99 + .../deactivate-content-type.action.ts | 52 + .../delete-content-type.action.ts | 45 + .../content-types/delete-field.action.ts | 88 + .../content-types/get-content-type.action.ts | 52 + .../search-content-types.action.ts | 75 + .../update-content-type.action.ts | 72 + .../content-types/update-field.action.ts | 96 + .../actions/entries/archive-entry.action.ts | 63 + .../actions/entries/create-entry.action.ts | 64 + .../actions/entries/delete-entry.action.ts | 63 + .../get-entry-with-replacement.action.ts | 76 + .../actions/entries/get-entry.action.ts | 49 + .../actions/entries/publish-entry.action.ts | 55 + .../actions/entries/search-entries.action.ts | 70 + .../actions/entries/unpublish-entry.action.ts | 54 + .../actions/entries/update-entry.action.ts | 69 + ts/src/apps/contentful/actions/index.ts | 32 + ts/src/apps/contentful/client.ts | 47 + ts/src/apps/contentful/constants.ts | 44 + .../helpers/contentful-type-mapping.ts | 155 + .../helpers/get-asset-allowed-values.ts | 34 + .../get-content-type-allowed-values.ts | 28 + .../helpers/get-entry-allowed-values.ts | 43 + .../helpers/get-environment-allowed-values.ts | 28 + .../helpers/get-field-allowed-values.ts | 27 + .../helpers/get-space-allowed-values.ts | 23 + .../apps/contentful/helpers/shared-options.ts | 43 + ts/src/apps/contentful/index.ts | 35 + .../apps/contentful/response-types/asset.ts | 22 + .../contentful/response-types/content-type.ts | 28 + .../apps/contentful/response-types/entry.ts | 26 + .../apps/contentful/response-types/index.ts | 3 + ts/src/apps/contentful/triggers/index.ts | 1 + .../triggers/watch-event.trigger.ts | 151 + ts/src/i18n/en/apps/Contentful/index.ts | 1002 + ts/src/i18n/en/index.ts | 2 + ts/src/i18n/i18n-types.ts | 73572 +++++++++------- ts/src/tests/contentful.test.ts | 833 + ts/src/tests/slack.test.ts | 3 + ts/yarn.lock | 71 +- 54 files changed, 43872 insertions(+), 34249 deletions(-) create mode 100644 ts/src/apps/contentful/actions/assets/archive-asset.action.ts create mode 100644 ts/src/apps/contentful/actions/assets/create-asset.action.ts create mode 100644 ts/src/apps/contentful/actions/assets/delete-asset.action.ts create mode 100644 ts/src/apps/contentful/actions/assets/get-asset.action.ts create mode 100644 ts/src/apps/contentful/actions/assets/publish-asset.action.ts create mode 100644 ts/src/apps/contentful/actions/assets/search-assets.action.ts create mode 100644 ts/src/apps/contentful/actions/assets/unpublish-asset.action.ts create mode 100644 ts/src/apps/contentful/actions/assets/update-asset.action.ts create mode 100644 ts/src/apps/contentful/actions/content-types/activate-content-type.action.ts create mode 100644 ts/src/apps/contentful/actions/content-types/add-field.action.ts create mode 100644 ts/src/apps/contentful/actions/content-types/create-content-type.action.ts create mode 100644 ts/src/apps/contentful/actions/content-types/deactivate-content-type.action.ts create mode 100644 ts/src/apps/contentful/actions/content-types/delete-content-type.action.ts create mode 100644 ts/src/apps/contentful/actions/content-types/delete-field.action.ts create mode 100644 ts/src/apps/contentful/actions/content-types/get-content-type.action.ts create mode 100644 ts/src/apps/contentful/actions/content-types/search-content-types.action.ts create mode 100644 ts/src/apps/contentful/actions/content-types/update-content-type.action.ts create mode 100644 ts/src/apps/contentful/actions/content-types/update-field.action.ts create mode 100644 ts/src/apps/contentful/actions/entries/archive-entry.action.ts create mode 100644 ts/src/apps/contentful/actions/entries/create-entry.action.ts create mode 100644 ts/src/apps/contentful/actions/entries/delete-entry.action.ts create mode 100644 ts/src/apps/contentful/actions/entries/get-entry-with-replacement.action.ts create mode 100644 ts/src/apps/contentful/actions/entries/get-entry.action.ts create mode 100644 ts/src/apps/contentful/actions/entries/publish-entry.action.ts create mode 100644 ts/src/apps/contentful/actions/entries/search-entries.action.ts create mode 100644 ts/src/apps/contentful/actions/entries/unpublish-entry.action.ts create mode 100644 ts/src/apps/contentful/actions/entries/update-entry.action.ts create mode 100644 ts/src/apps/contentful/actions/index.ts create mode 100644 ts/src/apps/contentful/client.ts create mode 100644 ts/src/apps/contentful/constants.ts create mode 100644 ts/src/apps/contentful/helpers/contentful-type-mapping.ts create mode 100644 ts/src/apps/contentful/helpers/get-asset-allowed-values.ts create mode 100644 ts/src/apps/contentful/helpers/get-content-type-allowed-values.ts create mode 100644 ts/src/apps/contentful/helpers/get-entry-allowed-values.ts create mode 100644 ts/src/apps/contentful/helpers/get-environment-allowed-values.ts create mode 100644 ts/src/apps/contentful/helpers/get-field-allowed-values.ts create mode 100644 ts/src/apps/contentful/helpers/get-space-allowed-values.ts create mode 100644 ts/src/apps/contentful/helpers/shared-options.ts create mode 100644 ts/src/apps/contentful/index.ts create mode 100644 ts/src/apps/contentful/response-types/asset.ts create mode 100644 ts/src/apps/contentful/response-types/content-type.ts create mode 100644 ts/src/apps/contentful/response-types/entry.ts create mode 100644 ts/src/apps/contentful/response-types/index.ts create mode 100644 ts/src/apps/contentful/triggers/index.ts create mode 100644 ts/src/apps/contentful/triggers/watch-event.trigger.ts create mode 100644 ts/src/i18n/en/apps/Contentful/index.ts create mode 100644 ts/src/tests/contentful.test.ts diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml index 2c9335a4..848046e5 100644 --- a/.github/workflows/pull_request.yml +++ b/.github/workflows/pull_request.yml @@ -54,6 +54,8 @@ env: MAILCHIMP_DATACENTER: ${{ fromJson(secrets.TEST_VARIABLES).MAILCHIMP_DATACENTER }} INTERCOM_TOKEN: ${{ fromJson(secrets.TEST_VARIABLES).INTERCOM_TOKEN }} ATTIO_TOKEN: ${{ fromJson(secrets.TEST_VARIABLES).ATTIO_TOKEN }} + CONTENTFUL_ACCESS_TOKEN: ${{ fromJson(secrets.TEST_VARIABLES).CONTENTFUL_ACCESS_TOKEN }} + CONTENTFUL_SPACE_ID: ${{ fromJson(secrets.TEST_VARIABLES).CONTENTFUL_SPACE_ID }} GOOGLE_SHEETS_REFRESH_TOKEN: ${{ fromJson(secrets.TEST_VARIABLES).GOOGLE_SHEETS_REFRESH_TOKEN }} GOOGLE_SHEETS_CLIENT_ID: ${{ fromJson(secrets.TEST_VARIABLES).GOOGLE_SHEETS_CLIENT_ID }} GOOGLE_SHEETS_CLIENT_SECRET: ${{ fromJson(secrets.TEST_VARIABLES).GOOGLE_SHEETS_CLIENT_SECRET }} diff --git a/ts/package.json b/ts/package.json index e221ca91..317e0261 100644 --- a/ts/package.json +++ b/ts/package.json @@ -72,6 +72,7 @@ "axios": "^1.12.0", "azure-devops-node-api": "^15.1.1", "brace-expansion": "^4.0.1", + "contentful-management": "^11.74.0", "dayjs": "^1.11.18", "dotenv": "^17.2.2", "facebook-nodejs-business-sdk": "^24.0.0", diff --git a/ts/src/ActionsCatalogue/index.ts b/ts/src/ActionsCatalogue/index.ts index 178d0dd0..bce8ab5a 100644 --- a/ts/src/ActionsCatalogue/index.ts +++ b/ts/src/ActionsCatalogue/index.ts @@ -38,6 +38,7 @@ import canva from '../apps/canva'; import claude from '../apps/claude'; import clickup from '../apps/clickup'; import confluence from '../apps/confluence'; +import contentful from '../apps/contentful'; import coppercrm from '../apps/coppercrm'; import craft from '../apps/craft'; import dropbox from '../apps/dropbox'; @@ -153,6 +154,7 @@ const NEW_APPS = { claude, clickup, confluence, + contentful, coppercrm, craft, dropbox, diff --git a/ts/src/apps/contentful/actions/assets/archive-asset.action.ts b/ts/src/apps/contentful/actions/assets/archive-asset.action.ts new file mode 100644 index 00000000..f852ef98 --- /dev/null +++ b/ts/src/apps/contentful/actions/assets/archive-asset.action.ts @@ -0,0 +1,63 @@ +import { EQoreAppActionCode, QoreAppCreator, TQoreOptions } from '@qoretechnologies/ts-toolkit'; +import { getQoreContextRequiredValues } from '../../../../global/helpers'; +import { getContentfulScopedClient } from '../../client'; +import { CONTENTFUL_APP_NAME, ContentfulError } from '../../constants'; +import { contentfulBaseOptions } from '../../helpers/shared-options'; +import { getContentfulAssetAllowedValues } from '../../helpers/get-asset-allowed-values'; + +const action = 'archive_asset'; + +const options = { + ...contentfulBaseOptions, + asset_id: { + type: 'string', + required: true, + get_allowed_values: getContentfulAssetAllowedValues, + }, + archive: { + type: 'bool', + required: true, + default_value: true, + }, +} satisfies TQoreOptions; + +const ArchiveAsset = QoreAppCreator.createLocalizedAction({ + app: CONTENTFUL_APP_NAME, + action, + action_code: EQoreAppActionCode.ACTION, + options, + response_type: { + type: 'hash', + fields: { + id: { type: 'string', short_desc: 'Asset ID' }, + archived: { type: 'bool', short_desc: 'Whether the asset is archived' }, + }, + }, + api_function: async (obj, _opts, context) => { + const { space_id, asset_id } = getQoreContextRequiredValues({ + context: { ...context, opts: obj }, + optionFields: ['space_id', 'asset_id'], + ErrorClass: ContentfulError, + }); + + const environmentId = obj?.environment_id || 'master'; + const shouldArchive = obj?.archive !== false; + + try { + const client = getContentfulScopedClient(context, space_id, environmentId); + + if (shouldArchive) { + await client.asset.archive({ assetId: asset_id }); + } else { + await client.asset.unarchive({ assetId: asset_id }); + } + + return { id: asset_id, archived: shouldArchive }; + } catch (error) { + const operation = shouldArchive ? 'archive' : 'unarchive'; + throw new ContentfulError(`Failed to ${operation} asset: ${error}`); + } + }, +}); + +export default ArchiveAsset; diff --git a/ts/src/apps/contentful/actions/assets/create-asset.action.ts b/ts/src/apps/contentful/actions/assets/create-asset.action.ts new file mode 100644 index 00000000..c5b9ece9 --- /dev/null +++ b/ts/src/apps/contentful/actions/assets/create-asset.action.ts @@ -0,0 +1,114 @@ +import { EQoreAppActionCode, QoreAppCreator, TQoreOptions } from '@qoretechnologies/ts-toolkit'; +import { getQoreContextRequiredValues } from '../../../../global/helpers'; +import { getContentfulScopedClient } from '../../client'; +import { CONTENTFUL_APP_NAME, ContentfulError } from '../../constants'; +import { contentfulBaseOptions } from '../../helpers/shared-options'; +import { flattenAsset, getDefaultLocale } from '../../helpers/contentful-type-mapping'; +import { ContentfulAssetResponseType } from '../../response-types'; + +const action = 'create_asset'; + +const options = { + ...contentfulBaseOptions, + title: { + type: 'string', + required: true, + }, + description: { + type: 'string', + required: false, + }, + file_name: { + type: 'string', + required: true, + }, + file_url: { + type: 'string', + required: true, + }, + content_type: { + type: 'string', + required: true, + allowed_values: [ + { value: 'image/jpeg', display_name: 'JPEG Image' }, + { value: 'image/png', display_name: 'PNG Image' }, + { value: 'image/gif', display_name: 'GIF Image' }, + { value: 'image/svg+xml', display_name: 'SVG Image' }, + { value: 'image/webp', display_name: 'WebP Image' }, + { value: 'application/pdf', display_name: 'PDF Document' }, + { value: 'video/mp4', display_name: 'MP4 Video' }, + { value: 'audio/mpeg', display_name: 'MP3 Audio' }, + { value: 'application/json', display_name: 'JSON' }, + { value: 'text/plain', display_name: 'Plain Text' }, + { value: 'text/html', display_name: 'HTML' }, + { value: 'text/csv', display_name: 'CSV' }, + ], + allowed_values_creatable: true, + }, + publish: { + type: 'bool', + required: false, + default_value: false, + }, +} satisfies TQoreOptions; + +const CreateAsset = QoreAppCreator.createLocalizedAction({ + app: CONTENTFUL_APP_NAME, + action, + action_code: EQoreAppActionCode.ACTION, + options, + response_type: ContentfulAssetResponseType, + api_function: async (obj, _opts, context) => { + const { space_id, title, file_name, file_url, content_type } = getQoreContextRequiredValues({ + context: { ...context, opts: obj }, + optionFields: ['space_id', 'title', 'file_name', 'file_url', 'content_type'], + ErrorClass: ContentfulError, + }); + + const environmentId = obj?.environment_id || 'master'; + const description = obj?.description as string | undefined; + const shouldPublish = obj?.publish === true; + + try { + const client = getContentfulScopedClient(context, space_id, environmentId); + const defaultLocale = await getDefaultLocale(client, space_id); + + let asset = await client.asset.create( + {}, + { + fields: { + title: { [defaultLocale]: title }, + description: description ? { [defaultLocale]: description } : undefined, + file: { + [defaultLocale]: { + contentType: content_type, + fileName: file_name, + upload: file_url, + }, + }, + } as any, + } + ); + + // Process the asset (download and store the file) + await client.asset.processForAllLocales({}, asset); + + // Wait briefly for processing, then fetch updated asset + await new Promise((resolve) => setTimeout(resolve, 2000)); + asset = await client.asset.get({ assetId: asset.sys.id }); + + if (shouldPublish) { + asset = await client.asset.publish( + { assetId: asset.sys.id }, + { sys: { version: asset.sys.version } } as any + ) as any; + } + + return flattenAsset(asset, defaultLocale); + } catch (error) { + throw new ContentfulError(`Failed to create asset: ${error}`); + } + }, +}); + +export default CreateAsset; diff --git a/ts/src/apps/contentful/actions/assets/delete-asset.action.ts b/ts/src/apps/contentful/actions/assets/delete-asset.action.ts new file mode 100644 index 00000000..3e75b751 --- /dev/null +++ b/ts/src/apps/contentful/actions/assets/delete-asset.action.ts @@ -0,0 +1,62 @@ +import { EQoreAppActionCode, QoreAppCreator, TQoreOptions } from '@qoretechnologies/ts-toolkit'; +import { getQoreContextRequiredValues } from '../../../../global/helpers'; +import { getContentfulScopedClient } from '../../client'; +import { CONTENTFUL_APP_NAME, ContentfulError } from '../../constants'; +import { contentfulBaseOptions } from '../../helpers/shared-options'; +import { getContentfulAssetAllowedValues } from '../../helpers/get-asset-allowed-values'; + +const action = 'delete_asset'; + +const options = { + ...contentfulBaseOptions, + asset_id: { + type: 'string', + required: true, + get_allowed_values: getContentfulAssetAllowedValues, + }, +} satisfies TQoreOptions; + +const DeleteAsset = QoreAppCreator.createLocalizedAction({ + app: CONTENTFUL_APP_NAME, + action, + action_code: EQoreAppActionCode.ACTION, + options, + response_type: { + type: 'hash', + fields: { + id: { type: 'string', short_desc: 'Deleted asset ID' }, + deleted: { type: 'bool', short_desc: 'Whether the asset was successfully deleted' }, + }, + }, + api_function: async (obj, _opts, context) => { + const { space_id, asset_id } = getQoreContextRequiredValues({ + context: { ...context, opts: obj }, + optionFields: ['space_id', 'asset_id'], + ErrorClass: ContentfulError, + }); + + const environmentId = obj?.environment_id || 'master'; + + try { + const client = getContentfulScopedClient(context, space_id, environmentId); + + // Unpublish if published before deleting + try { + const asset = await client.asset.get({ assetId: asset_id }); + if ((asset.sys as any).publishedVersion) { + await client.asset.unpublish({ assetId: asset_id }); + } + } catch { + // Asset may already be unpublished + } + + await client.asset.delete({ assetId: asset_id }); + + return { id: asset_id, deleted: true }; + } catch (error) { + throw new ContentfulError(`Failed to delete asset: ${error}`); + } + }, +}); + +export default DeleteAsset; diff --git a/ts/src/apps/contentful/actions/assets/get-asset.action.ts b/ts/src/apps/contentful/actions/assets/get-asset.action.ts new file mode 100644 index 00000000..8f43d19f --- /dev/null +++ b/ts/src/apps/contentful/actions/assets/get-asset.action.ts @@ -0,0 +1,48 @@ +import { EQoreAppActionCode, QoreAppCreator, TQoreOptions } from '@qoretechnologies/ts-toolkit'; +import { getQoreContextRequiredValues } from '../../../../global/helpers'; +import { getContentfulScopedClient } from '../../client'; +import { CONTENTFUL_APP_NAME, ContentfulError } from '../../constants'; +import { contentfulBaseOptions } from '../../helpers/shared-options'; +import { getContentfulAssetAllowedValues } from '../../helpers/get-asset-allowed-values'; +import { flattenAsset, getDefaultLocale } from '../../helpers/contentful-type-mapping'; +import { ContentfulAssetResponseType } from '../../response-types'; + +const action = 'get_asset'; + +const options = { + ...contentfulBaseOptions, + asset_id: { + type: 'string', + required: true, + get_allowed_values: getContentfulAssetAllowedValues, + }, +} satisfies TQoreOptions; + +const GetAsset = QoreAppCreator.createLocalizedAction({ + app: CONTENTFUL_APP_NAME, + action, + action_code: EQoreAppActionCode.ACTION, + options, + response_type: ContentfulAssetResponseType, + api_function: async (obj, _opts, context) => { + const { space_id, asset_id } = getQoreContextRequiredValues({ + context: { ...context, opts: obj }, + optionFields: ['space_id', 'asset_id'], + ErrorClass: ContentfulError, + }); + + const environmentId = obj?.environment_id || 'master'; + + try { + const client = getContentfulScopedClient(context, space_id, environmentId); + const defaultLocale = await getDefaultLocale(client, space_id); + const asset = await client.asset.get({ assetId: asset_id }); + + return flattenAsset(asset, defaultLocale); + } catch (error) { + throw new ContentfulError(`Failed to get asset: ${error}`); + } + }, +}); + +export default GetAsset; diff --git a/ts/src/apps/contentful/actions/assets/publish-asset.action.ts b/ts/src/apps/contentful/actions/assets/publish-asset.action.ts new file mode 100644 index 00000000..b3fe7387 --- /dev/null +++ b/ts/src/apps/contentful/actions/assets/publish-asset.action.ts @@ -0,0 +1,55 @@ +import { EQoreAppActionCode, QoreAppCreator, TQoreOptions } from '@qoretechnologies/ts-toolkit'; +import { getQoreContextRequiredValues } from '../../../../global/helpers'; +import { getContentfulScopedClient } from '../../client'; +import { CONTENTFUL_APP_NAME, ContentfulError } from '../../constants'; +import { contentfulBaseOptions } from '../../helpers/shared-options'; +import { getContentfulAssetAllowedValues } from '../../helpers/get-asset-allowed-values'; +import { ContentfulPublishResponseType } from '../../response-types'; + +const action = 'publish_asset'; + +const options = { + ...contentfulBaseOptions, + asset_id: { + type: 'string', + required: true, + get_allowed_values: getContentfulAssetAllowedValues, + }, +} satisfies TQoreOptions; + +const PublishAsset = QoreAppCreator.createLocalizedAction({ + app: CONTENTFUL_APP_NAME, + action, + action_code: EQoreAppActionCode.ACTION, + options, + response_type: ContentfulPublishResponseType, + api_function: async (obj, _opts, context) => { + const { space_id, asset_id } = getQoreContextRequiredValues({ + context: { ...context, opts: obj }, + optionFields: ['space_id', 'asset_id'], + ErrorClass: ContentfulError, + }); + + const environmentId = obj?.environment_id || 'master'; + + try { + const client = getContentfulScopedClient(context, space_id, environmentId); + const asset = await client.asset.get({ assetId: asset_id }); + + const published = await client.asset.publish( + { assetId: asset_id }, + { sys: { version: asset.sys.version } } as any + ); + + return { + id: published.sys.id, + version: published.sys.version, + published_at: (published.sys as any).publishedAt, + }; + } catch (error) { + throw new ContentfulError(`Failed to publish asset: ${error}`); + } + }, +}); + +export default PublishAsset; diff --git a/ts/src/apps/contentful/actions/assets/search-assets.action.ts b/ts/src/apps/contentful/actions/assets/search-assets.action.ts new file mode 100644 index 00000000..3ba85113 --- /dev/null +++ b/ts/src/apps/contentful/actions/assets/search-assets.action.ts @@ -0,0 +1,87 @@ +import { EQoreAppActionCode, QoreAppCreator, TQoreOptions } from '@qoretechnologies/ts-toolkit'; +import { getQoreContextRequiredValues } from '../../../../global/helpers'; +import { getContentfulScopedClient } from '../../client'; +import { CONTENTFUL_APP_NAME, ContentfulError } from '../../constants'; +import { contentfulBaseOptions } from '../../helpers/shared-options'; +import { flattenAsset, getDefaultLocale } from '../../helpers/contentful-type-mapping'; +import { ContentfulAssetListResponseType } from '../../response-types'; + +const action = 'search_assets'; + +const options = { + ...contentfulBaseOptions, + query: { + type: 'string', + required: false, + }, + mime_type_group: { + type: 'string', + required: false, + allowed_values: [ + { value: 'image', display_name: 'Image' }, + { value: 'video', display_name: 'Video' }, + { value: 'audio', display_name: 'Audio' }, + { value: 'richtext', display_name: 'Rich Text' }, + { value: 'presentation', display_name: 'Presentation' }, + { value: 'spreadsheet', display_name: 'Spreadsheet' }, + { value: 'pdfdocument', display_name: 'PDF Document' }, + { value: 'archive', display_name: 'Archive' }, + { value: 'plaintext', display_name: 'Plain Text' }, + { value: 'code', display_name: 'Code' }, + { value: 'markup', display_name: 'Markup' }, + ], + }, + limit: { + type: 'int', + required: false, + default_value: 100, + }, + skip: { + type: 'int', + required: false, + default_value: 0, + }, +} satisfies TQoreOptions; + +const SearchAssets = QoreAppCreator.createLocalizedAction({ + app: CONTENTFUL_APP_NAME, + action, + action_code: EQoreAppActionCode.ACTION, + options, + response_type: ContentfulAssetListResponseType, + api_function: async (obj, _opts, context) => { + const { space_id } = getQoreContextRequiredValues({ + context: { ...context, opts: obj }, + optionFields: ['space_id'], + ErrorClass: ContentfulError, + }); + + const environmentId = obj?.environment_id || 'master'; + const limit = (obj?.limit as number) || 100; + const skip = (obj?.skip as number) || 0; + const queryText = obj?.query as string | undefined; + const mimeTypeGroup = obj?.mime_type_group as string | undefined; + + try { + const client = getContentfulScopedClient(context, space_id, environmentId); + const defaultLocale = await getDefaultLocale(client, space_id); + + const query: Record = { limit, skip }; + + if (queryText) { + query.query = queryText; + } + if (mimeTypeGroup) { + query.mimetype_group = mimeTypeGroup; + } + + const assets = await client.asset.getMany({ query }); + + return assets.items.map((asset) => flattenAsset(asset, defaultLocale)); + } catch (error) { + throw new ContentfulError(`Failed to search assets: ${error}`); + } + }, +}); + +export default SearchAssets; diff --git a/ts/src/apps/contentful/actions/assets/unpublish-asset.action.ts b/ts/src/apps/contentful/actions/assets/unpublish-asset.action.ts new file mode 100644 index 00000000..481db674 --- /dev/null +++ b/ts/src/apps/contentful/actions/assets/unpublish-asset.action.ts @@ -0,0 +1,54 @@ +import { EQoreAppActionCode, QoreAppCreator, TQoreOptions } from '@qoretechnologies/ts-toolkit'; +import { getQoreContextRequiredValues } from '../../../../global/helpers'; +import { getContentfulScopedClient } from '../../client'; +import { CONTENTFUL_APP_NAME, ContentfulError } from '../../constants'; +import { contentfulBaseOptions } from '../../helpers/shared-options'; +import { getContentfulAssetAllowedValues } from '../../helpers/get-asset-allowed-values'; + +const action = 'unpublish_asset'; + +const options = { + ...contentfulBaseOptions, + asset_id: { + type: 'string', + required: true, + get_allowed_values: getContentfulAssetAllowedValues, + }, +} satisfies TQoreOptions; + +const UnpublishAsset = QoreAppCreator.createLocalizedAction({ + app: CONTENTFUL_APP_NAME, + action, + action_code: EQoreAppActionCode.ACTION, + options, + response_type: { + type: 'hash', + fields: { + id: { type: 'string', short_desc: 'Asset ID' }, + version: { type: 'int', short_desc: 'Current version number' }, + }, + }, + api_function: async (obj, _opts, context) => { + const { space_id, asset_id } = getQoreContextRequiredValues({ + context: { ...context, opts: obj }, + optionFields: ['space_id', 'asset_id'], + ErrorClass: ContentfulError, + }); + + const environmentId = obj?.environment_id || 'master'; + + try { + const client = getContentfulScopedClient(context, space_id, environmentId); + const unpublished = await client.asset.unpublish({ assetId: asset_id }); + + return { + id: unpublished.sys.id, + version: unpublished.sys.version, + }; + } catch (error) { + throw new ContentfulError(`Failed to unpublish asset: ${error}`); + } + }, +}); + +export default UnpublishAsset; diff --git a/ts/src/apps/contentful/actions/assets/update-asset.action.ts b/ts/src/apps/contentful/actions/assets/update-asset.action.ts new file mode 100644 index 00000000..16b08e99 --- /dev/null +++ b/ts/src/apps/contentful/actions/assets/update-asset.action.ts @@ -0,0 +1,75 @@ +import { EQoreAppActionCode, QoreAppCreator, TQoreOptions } from '@qoretechnologies/ts-toolkit'; +import { getQoreContextRequiredValues } from '../../../../global/helpers'; +import { getContentfulScopedClient } from '../../client'; +import { CONTENTFUL_APP_NAME, ContentfulError } from '../../constants'; +import { contentfulBaseOptions } from '../../helpers/shared-options'; +import { getContentfulAssetAllowedValues } from '../../helpers/get-asset-allowed-values'; +import { flattenAsset, getDefaultLocale } from '../../helpers/contentful-type-mapping'; +import { ContentfulAssetResponseType } from '../../response-types'; + +const action = 'update_asset'; + +const options = { + ...contentfulBaseOptions, + asset_id: { + type: 'string', + required: true, + get_allowed_values: getContentfulAssetAllowedValues, + }, + title: { + type: 'string', + required: false, + required_groups: ['update_field'], + }, + description: { + type: 'string', + required: false, + required_groups: ['update_field'], + }, +} satisfies TQoreOptions; + +const UpdateAsset = QoreAppCreator.createLocalizedAction({ + app: CONTENTFUL_APP_NAME, + action, + action_code: EQoreAppActionCode.ACTION, + options, + response_type: ContentfulAssetResponseType, + api_function: async (obj, _opts, context) => { + const { space_id, asset_id } = getQoreContextRequiredValues({ + context: { ...context, opts: obj }, + optionFields: ['space_id', 'asset_id'], + ErrorClass: ContentfulError, + }); + + const environmentId = obj?.environment_id || 'master'; + + try { + const client = getContentfulScopedClient(context, space_id, environmentId); + const defaultLocale = await getDefaultLocale(client, space_id); + + const currentAsset = await client.asset.get({ assetId: asset_id }); + const fields = { ...(currentAsset.fields as Record>) }; + + if (obj?.title !== undefined) { + fields.title = { [defaultLocale]: obj.title }; + } + if (obj?.description !== undefined) { + fields.description = { [defaultLocale]: obj.description }; + } + + const updatedAsset = await client.asset.update( + { assetId: asset_id }, + { + sys: { version: currentAsset.sys.version }, + fields, + } as any + ); + + return flattenAsset(updatedAsset, defaultLocale); + } catch (error) { + throw new ContentfulError(`Failed to update asset: ${error}`); + } + }, +}); + +export default UpdateAsset; diff --git a/ts/src/apps/contentful/actions/content-types/activate-content-type.action.ts b/ts/src/apps/contentful/actions/content-types/activate-content-type.action.ts new file mode 100644 index 00000000..58901ba5 --- /dev/null +++ b/ts/src/apps/contentful/actions/content-types/activate-content-type.action.ts @@ -0,0 +1,57 @@ +import { EQoreAppActionCode, QoreAppCreator, TQoreOptions } from '@qoretechnologies/ts-toolkit'; +import { getQoreContextRequiredValues } from '../../../../global/helpers'; +import { getContentfulScopedClient } from '../../client'; +import { CONTENTFUL_APP_NAME, ContentfulError } from '../../constants'; +import { contentfulBaseWithContentTypeOptions } from '../../helpers/shared-options'; +import { ContentfulContentTypeResponseType } from '../../response-types'; + +const action = 'activate_content_type'; + +const options = { + ...contentfulBaseWithContentTypeOptions, +} satisfies TQoreOptions; + +const ActivateContentType = QoreAppCreator.createLocalizedAction({ + app: CONTENTFUL_APP_NAME, + action, + action_code: EQoreAppActionCode.ACTION, + options, + response_type: ContentfulContentTypeResponseType, + api_function: async (obj, _opts, context) => { + const { space_id, content_type_id } = getQoreContextRequiredValues({ + context: { ...context, opts: obj }, + optionFields: ['space_id', 'content_type_id'], + ErrorClass: ContentfulError, + }); + + const environmentId = obj?.environment_id || 'master'; + + try { + const client = getContentfulScopedClient(context, space_id, environmentId); + const ct = await client.contentType.get({ contentTypeId: content_type_id }); + + const published = await client.contentType.publish( + { contentTypeId: content_type_id }, + { sys: { version: ct.sys.version } } as any + ); + + return { + id: published.sys.id, + name: published.name, + description: published.description, + display_field: published.displayField, + fields: published.fields.map((f) => ({ + id: f.id, + name: f.name, + type: f.type, + required: f.required, + localized: f.localized, + })), + }; + } catch (error) { + throw new ContentfulError(`Failed to activate content type: ${error}`); + } + }, +}); + +export default ActivateContentType; diff --git a/ts/src/apps/contentful/actions/content-types/add-field.action.ts b/ts/src/apps/contentful/actions/content-types/add-field.action.ts new file mode 100644 index 00000000..b5472796 --- /dev/null +++ b/ts/src/apps/contentful/actions/content-types/add-field.action.ts @@ -0,0 +1,106 @@ +import { EQoreAppActionCode, QoreAppCreator, TQoreOptions } from '@qoretechnologies/ts-toolkit'; +import { getQoreContextRequiredValues } from '../../../../global/helpers'; +import { getContentfulScopedClient } from '../../client'; +import { CONTENTFUL_APP_NAME, ContentfulError } from '../../constants'; +import { contentfulBaseWithContentTypeOptions } from '../../helpers/shared-options'; +import { ContentfulContentTypeResponseType } from '../../response-types'; + +const action = 'add_field_to_content_type'; + +const FIELD_TYPE_ALLOWED_VALUES = [ + { value: 'Symbol', display_name: 'Short Text' }, + { value: 'Text', display_name: 'Long Text' }, + { value: 'Integer', display_name: 'Integer' }, + { value: 'Number', display_name: 'Decimal Number' }, + { value: 'Date', display_name: 'Date and Time' }, + { value: 'Boolean', display_name: 'Boolean' }, + { value: 'RichText', display_name: 'Rich Text' }, + { value: 'Link', display_name: 'Link (Reference)' }, + { value: 'Array', display_name: 'Array (List)' }, + { value: 'Object', display_name: 'JSON Object' }, + { value: 'Location', display_name: 'Location' }, +]; + +const options = { + ...contentfulBaseWithContentTypeOptions, + field_id: { + type: 'string', + required: true, + }, + field_name: { + type: 'string', + required: true, + }, + field_type: { + type: 'string', + required: true, + allowed_values: FIELD_TYPE_ALLOWED_VALUES, + }, + required: { + type: 'bool', + required: false, + default_value: false, + }, + localized: { + type: 'bool', + required: false, + default_value: false, + }, +} satisfies TQoreOptions; + +const AddField = QoreAppCreator.createLocalizedAction({ + app: CONTENTFUL_APP_NAME, + action, + action_code: EQoreAppActionCode.ACTION, + options, + response_type: ContentfulContentTypeResponseType, + api_function: async (obj, _opts, context) => { + const { space_id, content_type_id, field_id, field_name, field_type } = getQoreContextRequiredValues({ + context: { ...context, opts: obj }, + optionFields: ['space_id', 'content_type_id', 'field_id', 'field_name', 'field_type'], + ErrorClass: ContentfulError, + }); + + const environmentId = obj?.environment_id || 'master'; + + try { + const client = getContentfulScopedClient(context, space_id, environmentId); + const current = await client.contentType.get({ contentTypeId: content_type_id }); + + const newField = { + id: field_id, + name: field_name, + type: field_type, + required: obj?.required === true, + localized: obj?.localized === true, + }; + + const updated = await client.contentType.update( + { contentTypeId: content_type_id }, + { + ...current, + fields: [...current.fields, newField], + sys: current.sys as any, + } + ); + + return { + id: updated.sys.id, + name: updated.name, + description: updated.description, + display_field: updated.displayField, + fields: updated.fields.map((f) => ({ + id: f.id, + name: f.name, + type: f.type, + required: f.required, + localized: f.localized, + })), + }; + } catch (error) { + throw new ContentfulError(`Failed to add field to content type: ${error}`); + } + }, +}); + +export default AddField; diff --git a/ts/src/apps/contentful/actions/content-types/create-content-type.action.ts b/ts/src/apps/contentful/actions/content-types/create-content-type.action.ts new file mode 100644 index 00000000..f3066f38 --- /dev/null +++ b/ts/src/apps/contentful/actions/content-types/create-content-type.action.ts @@ -0,0 +1,99 @@ +import { EQoreAppActionCode, QoreAppCreator, TQoreOptions } from '@qoretechnologies/ts-toolkit'; +import { getQoreContextRequiredValues } from '../../../../global/helpers'; +import { getContentfulScopedClient } from '../../client'; +import { CONTENTFUL_APP_NAME, ContentfulError } from '../../constants'; +import { contentfulBaseOptions } from '../../helpers/shared-options'; +import { ContentfulContentTypeResponseType } from '../../response-types'; + +const action = 'create_content_type'; + +const options = { + ...contentfulBaseOptions, + name: { + type: 'string', + required: true, + }, + description: { + type: 'string', + required: false, + }, + fields: { + type: { + type: 'list', + element_type: { + type: 'hash', + fields: { + id: { type: 'string', short_desc: 'Field ID (unique identifier)' }, + name: { type: 'string', short_desc: 'Field display name' }, + type: { type: 'string', short_desc: 'Field type (Symbol, Text, Integer, Number, Date, Boolean, RichText, Link, Array, Object, Location)' }, + required: { type: 'bool', short_desc: 'Whether the field is required' }, + localized: { type: 'bool', short_desc: 'Whether the field supports localization' }, + }, + }, + }, + required: true, + }, +} satisfies TQoreOptions; + +const CreateContentType = QoreAppCreator.createLocalizedAction({ + app: CONTENTFUL_APP_NAME, + action, + action_code: EQoreAppActionCode.ACTION, + options, + response_type: ContentfulContentTypeResponseType, + api_function: async (obj, _opts, context) => { + const { space_id, name, fields } = getQoreContextRequiredValues({ + context: { ...context, opts: obj }, + optionFields: ['space_id', 'name', 'fields'], + ErrorClass: ContentfulError, + }); + + const environmentId = obj?.environment_id || 'master'; + const description = obj?.description as string | undefined; + + try { + const client = getContentfulScopedClient(context, space_id, environmentId); + const fieldList = fields as Array<{ + id: string; + name: string; + type: string; + required?: boolean; + localized?: boolean; + }>; + + const ct = await client.contentType.create( + {}, + { + name, + description: description || '', + displayField: fieldList[0]?.id, + fields: fieldList.map((f) => ({ + id: f.id, + name: f.name, + type: f.type, + required: f.required || false, + localized: f.localized || false, + })), + } + ); + + return { + id: ct.sys.id, + name: ct.name, + description: ct.description, + display_field: ct.displayField, + fields: ct.fields.map((f) => ({ + id: f.id, + name: f.name, + type: f.type, + required: f.required, + localized: f.localized, + })), + }; + } catch (error) { + throw new ContentfulError(`Failed to create content type: ${error}`); + } + }, +}); + +export default CreateContentType; diff --git a/ts/src/apps/contentful/actions/content-types/deactivate-content-type.action.ts b/ts/src/apps/contentful/actions/content-types/deactivate-content-type.action.ts new file mode 100644 index 00000000..63d196a5 --- /dev/null +++ b/ts/src/apps/contentful/actions/content-types/deactivate-content-type.action.ts @@ -0,0 +1,52 @@ +import { EQoreAppActionCode, QoreAppCreator, TQoreOptions } from '@qoretechnologies/ts-toolkit'; +import { getQoreContextRequiredValues } from '../../../../global/helpers'; +import { getContentfulScopedClient } from '../../client'; +import { CONTENTFUL_APP_NAME, ContentfulError } from '../../constants'; +import { contentfulBaseWithContentTypeOptions } from '../../helpers/shared-options'; +import { ContentfulContentTypeResponseType } from '../../response-types'; + +const action = 'deactivate_content_type'; + +const options = { + ...contentfulBaseWithContentTypeOptions, +} satisfies TQoreOptions; + +const DeactivateContentType = QoreAppCreator.createLocalizedAction({ + app: CONTENTFUL_APP_NAME, + action, + action_code: EQoreAppActionCode.ACTION, + options, + response_type: ContentfulContentTypeResponseType, + api_function: async (obj, _opts, context) => { + const { space_id, content_type_id } = getQoreContextRequiredValues({ + context: { ...context, opts: obj }, + optionFields: ['space_id', 'content_type_id'], + ErrorClass: ContentfulError, + }); + + const environmentId = obj?.environment_id || 'master'; + + try { + const client = getContentfulScopedClient(context, space_id, environmentId); + const unpublished = await client.contentType.unpublish({ contentTypeId: content_type_id }); + + return { + id: unpublished.sys.id, + name: unpublished.name, + description: unpublished.description, + display_field: unpublished.displayField, + fields: unpublished.fields.map((f) => ({ + id: f.id, + name: f.name, + type: f.type, + required: f.required, + localized: f.localized, + })), + }; + } catch (error) { + throw new ContentfulError(`Failed to deactivate content type: ${error}`); + } + }, +}); + +export default DeactivateContentType; diff --git a/ts/src/apps/contentful/actions/content-types/delete-content-type.action.ts b/ts/src/apps/contentful/actions/content-types/delete-content-type.action.ts new file mode 100644 index 00000000..48c97865 --- /dev/null +++ b/ts/src/apps/contentful/actions/content-types/delete-content-type.action.ts @@ -0,0 +1,45 @@ +import { EQoreAppActionCode, QoreAppCreator, TQoreOptions } from '@qoretechnologies/ts-toolkit'; +import { getQoreContextRequiredValues } from '../../../../global/helpers'; +import { getContentfulScopedClient } from '../../client'; +import { CONTENTFUL_APP_NAME, ContentfulError } from '../../constants'; +import { contentfulBaseWithContentTypeOptions } from '../../helpers/shared-options'; + +const action = 'delete_content_type'; + +const options = { + ...contentfulBaseWithContentTypeOptions, +} satisfies TQoreOptions; + +const DeleteContentType = QoreAppCreator.createLocalizedAction({ + app: CONTENTFUL_APP_NAME, + action, + action_code: EQoreAppActionCode.ACTION, + options, + response_type: { + type: 'hash', + fields: { + id: { type: 'string', short_desc: 'Deleted content type ID' }, + deleted: { type: 'bool', short_desc: 'Whether the content type was successfully deleted' }, + }, + }, + api_function: async (obj, _opts, context) => { + const { space_id, content_type_id } = getQoreContextRequiredValues({ + context: { ...context, opts: obj }, + optionFields: ['space_id', 'content_type_id'], + ErrorClass: ContentfulError, + }); + + const environmentId = obj?.environment_id || 'master'; + + try { + const client = getContentfulScopedClient(context, space_id, environmentId); + await client.contentType.delete({ contentTypeId: content_type_id }); + + return { id: content_type_id, deleted: true }; + } catch (error) { + throw new ContentfulError(`Failed to delete content type: ${error}`); + } + }, +}); + +export default DeleteContentType; diff --git a/ts/src/apps/contentful/actions/content-types/delete-field.action.ts b/ts/src/apps/contentful/actions/content-types/delete-field.action.ts new file mode 100644 index 00000000..3e5918af --- /dev/null +++ b/ts/src/apps/contentful/actions/content-types/delete-field.action.ts @@ -0,0 +1,88 @@ +import { EQoreAppActionCode, QoreAppCreator, TQoreOptions } from '@qoretechnologies/ts-toolkit'; +import { getQoreContextRequiredValues } from '../../../../global/helpers'; +import { getContentfulScopedClient } from '../../client'; +import { CONTENTFUL_APP_NAME, ContentfulError } from '../../constants'; +import { getContentfulFieldAllowedValues } from '../../helpers/get-field-allowed-values'; +import { contentfulBaseWithContentTypeOptions } from '../../helpers/shared-options'; +import { ContentfulContentTypeResponseType } from '../../response-types'; + +const action = 'delete_field_from_content_type'; + +const options = { + ...contentfulBaseWithContentTypeOptions, + field_id: { + type: 'string', + required: true, + get_allowed_values: getContentfulFieldAllowedValues, + depends_on: ['content_type_id'], + }, +} satisfies TQoreOptions; + +const DeleteField = QoreAppCreator.createLocalizedAction({ + app: CONTENTFUL_APP_NAME, + action, + action_code: EQoreAppActionCode.ACTION, + options, + response_type: ContentfulContentTypeResponseType, + api_function: async (obj, _opts, context) => { + const { space_id, content_type_id, field_id } = getQoreContextRequiredValues({ + context: { ...context, opts: obj }, + optionFields: ['space_id', 'content_type_id', 'field_id'], + ErrorClass: ContentfulError, + }); + + const environmentId = obj?.environment_id || 'master'; + + try { + const client = getContentfulScopedClient(context, space_id, environmentId); + const current = await client.contentType.get({ contentTypeId: content_type_id }); + + // First, mark the field as omitted (Contentful requires this before removal) + const fieldsWithOmitted = current.fields.map((f) => { + if (f.id === field_id) { + return { ...f, omitted: true }; + } + return f; + }); + + const withOmitted = await client.contentType.update( + { contentTypeId: content_type_id }, + { + ...current, + fields: fieldsWithOmitted, + sys: current.sys as any, + } + ); + + // Then, remove the field entirely + const fieldsWithoutField = withOmitted.fields.filter((f) => f.id !== field_id); + + const updated = await client.contentType.update( + { contentTypeId: content_type_id }, + { + ...withOmitted, + fields: fieldsWithoutField, + sys: withOmitted.sys as any, + } + ); + + return { + id: updated.sys.id, + name: updated.name, + description: updated.description, + display_field: updated.displayField, + fields: updated.fields.map((f) => ({ + id: f.id, + name: f.name, + type: f.type, + required: f.required, + localized: f.localized, + })), + }; + } catch (error) { + throw new ContentfulError(`Failed to delete field from content type: ${error}`); + } + }, +}); + +export default DeleteField; diff --git a/ts/src/apps/contentful/actions/content-types/get-content-type.action.ts b/ts/src/apps/contentful/actions/content-types/get-content-type.action.ts new file mode 100644 index 00000000..e271dd8f --- /dev/null +++ b/ts/src/apps/contentful/actions/content-types/get-content-type.action.ts @@ -0,0 +1,52 @@ +import { EQoreAppActionCode, QoreAppCreator, TQoreOptions } from '@qoretechnologies/ts-toolkit'; +import { getQoreContextRequiredValues } from '../../../../global/helpers'; +import { getContentfulScopedClient } from '../../client'; +import { CONTENTFUL_APP_NAME, ContentfulError } from '../../constants'; +import { contentfulBaseWithContentTypeOptions } from '../../helpers/shared-options'; +import { ContentfulContentTypeResponseType } from '../../response-types'; + +const action = 'get_content_type'; + +const options = { + ...contentfulBaseWithContentTypeOptions, +} satisfies TQoreOptions; + +const GetContentType = QoreAppCreator.createLocalizedAction({ + app: CONTENTFUL_APP_NAME, + action, + action_code: EQoreAppActionCode.ACTION, + options, + response_type: ContentfulContentTypeResponseType, + api_function: async (obj, _opts, context) => { + const { space_id, content_type_id } = getQoreContextRequiredValues({ + context: { ...context, opts: obj }, + optionFields: ['space_id', 'content_type_id'], + ErrorClass: ContentfulError, + }); + + const environmentId = obj?.environment_id || 'master'; + + try { + const client = getContentfulScopedClient(context, space_id, environmentId); + const ct = await client.contentType.get({ contentTypeId: content_type_id }); + + return { + id: ct.sys.id, + name: ct.name, + description: ct.description, + display_field: ct.displayField, + fields: ct.fields.map((f) => ({ + id: f.id, + name: f.name, + type: f.type, + required: f.required, + localized: f.localized, + })), + }; + } catch (error) { + throw new ContentfulError(`Failed to get content type: ${error}`); + } + }, +}); + +export default GetContentType; diff --git a/ts/src/apps/contentful/actions/content-types/search-content-types.action.ts b/ts/src/apps/contentful/actions/content-types/search-content-types.action.ts new file mode 100644 index 00000000..d51246a6 --- /dev/null +++ b/ts/src/apps/contentful/actions/content-types/search-content-types.action.ts @@ -0,0 +1,75 @@ +import { EQoreAppActionCode, QoreAppCreator, TQoreOptions } from '@qoretechnologies/ts-toolkit'; +import { getQoreContextRequiredValues } from '../../../../global/helpers'; +import { getContentfulScopedClient } from '../../client'; +import { CONTENTFUL_APP_NAME, ContentfulError } from '../../constants'; +import { contentfulBaseOptions } from '../../helpers/shared-options'; +import { ContentfulContentTypeListResponseType } from '../../response-types'; + +const action = 'search_content_types'; + +const options = { + ...contentfulBaseOptions, + query: { + type: 'string', + required: false, + }, + limit: { + type: 'int', + required: false, + default_value: 100, + }, + skip: { + type: 'int', + required: false, + default_value: 0, + }, +} satisfies TQoreOptions; + +const SearchContentTypes = QoreAppCreator.createLocalizedAction({ + app: CONTENTFUL_APP_NAME, + action, + action_code: EQoreAppActionCode.ACTION, + options, + response_type: ContentfulContentTypeListResponseType, + api_function: async (obj, _opts, context) => { + const { space_id } = getQoreContextRequiredValues({ + context: { ...context, opts: obj }, + optionFields: ['space_id'], + ErrorClass: ContentfulError, + }); + + const environmentId = obj?.environment_id || 'master'; + const limit = (obj?.limit as number) || 100; + const skip = (obj?.skip as number) || 0; + const queryText = obj?.query as string | undefined; + + try { + const client = getContentfulScopedClient(context, space_id, environmentId); + + const query: Record = { limit, skip }; + if (queryText) { + query.query = queryText; + } + + const contentTypes = await client.contentType.getMany({ query }); + + return contentTypes.items.map((ct) => ({ + id: ct.sys.id, + name: ct.name, + description: ct.description, + display_field: ct.displayField, + fields: ct.fields.map((f) => ({ + id: f.id, + name: f.name, + type: f.type, + required: f.required, + localized: f.localized, + })), + })); + } catch (error) { + throw new ContentfulError(`Failed to search content types: ${error}`); + } + }, +}); + +export default SearchContentTypes; diff --git a/ts/src/apps/contentful/actions/content-types/update-content-type.action.ts b/ts/src/apps/contentful/actions/content-types/update-content-type.action.ts new file mode 100644 index 00000000..12ed598f --- /dev/null +++ b/ts/src/apps/contentful/actions/content-types/update-content-type.action.ts @@ -0,0 +1,72 @@ +import { EQoreAppActionCode, QoreAppCreator, TQoreOptions } from '@qoretechnologies/ts-toolkit'; +import { getQoreContextRequiredValues } from '../../../../global/helpers'; +import { getContentfulScopedClient } from '../../client'; +import { CONTENTFUL_APP_NAME, ContentfulError } from '../../constants'; +import { contentfulBaseWithContentTypeOptions } from '../../helpers/shared-options'; +import { ContentfulContentTypeResponseType } from '../../response-types'; + +const action = 'update_content_type'; + +const options = { + ...contentfulBaseWithContentTypeOptions, + name: { + type: 'string', + required: false, + required_groups: ['update_field'], + }, + description: { + type: 'string', + required: false, + required_groups: ['update_field'], + }, +} satisfies TQoreOptions; + +const UpdateContentType = QoreAppCreator.createLocalizedAction({ + app: CONTENTFUL_APP_NAME, + action, + action_code: EQoreAppActionCode.ACTION, + options, + response_type: ContentfulContentTypeResponseType, + api_function: async (obj, _opts, context) => { + const { space_id, content_type_id } = getQoreContextRequiredValues({ + context: { ...context, opts: obj }, + optionFields: ['space_id', 'content_type_id'], + ErrorClass: ContentfulError, + }); + + const environmentId = obj?.environment_id || 'master'; + + try { + const client = getContentfulScopedClient(context, space_id, environmentId); + const current = await client.contentType.get({ contentTypeId: content_type_id }); + + const updated = await client.contentType.update( + { contentTypeId: content_type_id }, + { + ...current, + name: (obj?.name as string) || current.name, + description: obj?.description !== undefined ? (obj.description as string) : current.description, + sys: current.sys as any, + } + ); + + return { + id: updated.sys.id, + name: updated.name, + description: updated.description, + display_field: updated.displayField, + fields: updated.fields.map((f) => ({ + id: f.id, + name: f.name, + type: f.type, + required: f.required, + localized: f.localized, + })), + }; + } catch (error) { + throw new ContentfulError(`Failed to update content type: ${error}`); + } + }, +}); + +export default UpdateContentType; diff --git a/ts/src/apps/contentful/actions/content-types/update-field.action.ts b/ts/src/apps/contentful/actions/content-types/update-field.action.ts new file mode 100644 index 00000000..78d63b95 --- /dev/null +++ b/ts/src/apps/contentful/actions/content-types/update-field.action.ts @@ -0,0 +1,96 @@ +import { EQoreAppActionCode, QoreAppCreator, TQoreOptions } from '@qoretechnologies/ts-toolkit'; +import { getQoreContextRequiredValues } from '../../../../global/helpers'; +import { getContentfulScopedClient } from '../../client'; +import { CONTENTFUL_APP_NAME, ContentfulError } from '../../constants'; +import { getContentfulFieldAllowedValues } from '../../helpers/get-field-allowed-values'; +import { contentfulBaseWithContentTypeOptions } from '../../helpers/shared-options'; +import { ContentfulContentTypeResponseType } from '../../response-types'; + +const action = 'update_field_of_content_type'; + +const options = { + ...contentfulBaseWithContentTypeOptions, + field_id: { + type: 'string', + required: true, + get_allowed_values: getContentfulFieldAllowedValues, + depends_on: ['content_type_id'], + }, + field_name: { + type: 'string', + required: false, + required_groups: ['update_field'], + }, + required: { + type: 'bool', + required: false, + required_groups: ['update_field'], + }, + localized: { + type: 'bool', + required: false, + required_groups: ['update_field'], + }, +} satisfies TQoreOptions; + +const UpdateField = QoreAppCreator.createLocalizedAction({ + app: CONTENTFUL_APP_NAME, + action, + action_code: EQoreAppActionCode.ACTION, + options, + response_type: ContentfulContentTypeResponseType, + api_function: async (obj, _opts, context) => { + const { space_id, content_type_id, field_id } = getQoreContextRequiredValues({ + context: { ...context, opts: obj }, + optionFields: ['space_id', 'content_type_id', 'field_id'], + ErrorClass: ContentfulError, + }); + + const environmentId = obj?.environment_id || 'master'; + + try { + const client = getContentfulScopedClient(context, space_id, environmentId); + const current = await client.contentType.get({ contentTypeId: content_type_id }); + + const updatedFields = current.fields.map((f) => { + if (f.id !== field_id) { + return f; + } + + return { + ...f, + name: (obj?.field_name as string) || f.name, + required: obj?.required !== undefined ? obj.required === true : f.required, + localized: obj?.localized !== undefined ? obj.localized === true : f.localized, + }; + }); + + const updated = await client.contentType.update( + { contentTypeId: content_type_id }, + { + ...current, + fields: updatedFields, + sys: current.sys as any, + } + ); + + return { + id: updated.sys.id, + name: updated.name, + description: updated.description, + display_field: updated.displayField, + fields: updated.fields.map((f) => ({ + id: f.id, + name: f.name, + type: f.type, + required: f.required, + localized: f.localized, + })), + }; + } catch (error) { + throw new ContentfulError(`Failed to update field: ${error}`); + } + }, +}); + +export default UpdateField; diff --git a/ts/src/apps/contentful/actions/entries/archive-entry.action.ts b/ts/src/apps/contentful/actions/entries/archive-entry.action.ts new file mode 100644 index 00000000..8961f98c --- /dev/null +++ b/ts/src/apps/contentful/actions/entries/archive-entry.action.ts @@ -0,0 +1,63 @@ +import { EQoreAppActionCode, QoreAppCreator, TQoreOptions } from '@qoretechnologies/ts-toolkit'; +import { getQoreContextRequiredValues } from '../../../../global/helpers'; +import { getContentfulScopedClient } from '../../client'; +import { CONTENTFUL_APP_NAME, ContentfulError } from '../../constants'; +import { getContentfulEntryAllowedValues } from '../../helpers/get-entry-allowed-values'; +import { contentfulBaseWithContentTypeOptions } from '../../helpers/shared-options'; + +const action = 'archive_entry'; + +const options = { + ...contentfulBaseWithContentTypeOptions, + entry_id: { + type: 'string', + required: true, + get_allowed_values: getContentfulEntryAllowedValues, + }, + archive: { + type: 'bool', + required: true, + default_value: true, + }, +} satisfies TQoreOptions; + +const ArchiveEntry = QoreAppCreator.createLocalizedAction({ + app: CONTENTFUL_APP_NAME, + action, + action_code: EQoreAppActionCode.ACTION, + options, + response_type: { + type: 'hash', + fields: { + id: { type: 'string', short_desc: 'Entry ID' }, + archived: { type: 'bool', short_desc: 'Whether the entry is archived' }, + }, + }, + api_function: async (obj, _opts, context) => { + const { space_id, entry_id } = getQoreContextRequiredValues({ + context: { ...context, opts: obj }, + optionFields: ['space_id', 'entry_id'], + ErrorClass: ContentfulError, + }); + + const environmentId = obj?.environment_id || 'master'; + const shouldArchive = obj?.archive !== false; + + try { + const client = getContentfulScopedClient(context, space_id, environmentId); + + if (shouldArchive) { + await client.entry.archive({ entryId: entry_id }); + } else { + await client.entry.unarchive({ entryId: entry_id }); + } + + return { id: entry_id, archived: shouldArchive }; + } catch (error) { + const operation = shouldArchive ? 'archive' : 'unarchive'; + throw new ContentfulError(`Failed to ${operation} entry: ${error}`); + } + }, +}); + +export default ArchiveEntry; diff --git a/ts/src/apps/contentful/actions/entries/create-entry.action.ts b/ts/src/apps/contentful/actions/entries/create-entry.action.ts new file mode 100644 index 00000000..363f4753 --- /dev/null +++ b/ts/src/apps/contentful/actions/entries/create-entry.action.ts @@ -0,0 +1,64 @@ +import { EQoreAppActionCode, QoreAppCreator, TQoreOptions } from '@qoretechnologies/ts-toolkit'; +import { getQoreContextRequiredValues } from '../../../../global/helpers'; +import { getContentfulScopedClient } from '../../client'; +import { CONTENTFUL_APP_NAME, ContentfulError } from '../../constants'; +import { contentfulBaseWithContentTypeOptions } from '../../helpers/shared-options'; +import { flattenEntry, getDefaultLocale, wrapFieldsWithLocale } from '../../helpers/contentful-type-mapping'; +import { ContentfulEntryResponseType } from '../../response-types'; + +const action = 'create_entry'; + +const options = { + ...contentfulBaseWithContentTypeOptions, + fields: { + type: 'hash', + required: true, + }, + publish: { + type: 'bool', + required: false, + default_value: false, + }, +} satisfies TQoreOptions; + +const CreateEntry = QoreAppCreator.createLocalizedAction({ + app: CONTENTFUL_APP_NAME, + action, + action_code: EQoreAppActionCode.ACTION, + options, + response_type: ContentfulEntryResponseType, + api_function: async (obj, _opts, context) => { + const { space_id, content_type_id, fields } = getQoreContextRequiredValues({ + context: { ...context, opts: obj }, + optionFields: ['space_id', 'content_type_id', 'fields'], + ErrorClass: ContentfulError, + }); + + const environmentId = obj?.environment_id || 'master'; + const shouldPublish = obj?.publish === true; + + try { + const client = getContentfulScopedClient(context, space_id, environmentId); + const defaultLocale = await getDefaultLocale(client, space_id); + const wrappedFields = wrapFieldsWithLocale(fields as Record, defaultLocale); + + let entry = await client.entry.create( + { contentTypeId: content_type_id }, + { fields: wrappedFields } + ); + + if (shouldPublish) { + entry = await client.entry.publish( + { entryId: entry.sys.id }, + { sys: { version: entry.sys.version } } as any + ) as any; + } + + return flattenEntry(entry, defaultLocale); + } catch (error) { + throw new ContentfulError(`Failed to create entry: ${error}`); + } + }, +}); + +export default CreateEntry; diff --git a/ts/src/apps/contentful/actions/entries/delete-entry.action.ts b/ts/src/apps/contentful/actions/entries/delete-entry.action.ts new file mode 100644 index 00000000..66d52f9e --- /dev/null +++ b/ts/src/apps/contentful/actions/entries/delete-entry.action.ts @@ -0,0 +1,63 @@ +import { EQoreAppActionCode, QoreAppCreator, TQoreOptions } from '@qoretechnologies/ts-toolkit'; +import { getQoreContextRequiredValues } from '../../../../global/helpers'; +import { getContentfulScopedClient } from '../../client'; +import { CONTENTFUL_APP_NAME, ContentfulError } from '../../constants'; +import { getContentfulEntryAllowedValues } from '../../helpers/get-entry-allowed-values'; +import { contentfulBaseWithContentTypeOptions } from '../../helpers/shared-options'; + +const action = 'delete_entry'; + +const options = { + ...contentfulBaseWithContentTypeOptions, + entry_id: { + type: 'string', + required: true, + get_allowed_values: getContentfulEntryAllowedValues, + depends_on: ['content_type_id'], + }, +} satisfies TQoreOptions; + +const DeleteEntry = QoreAppCreator.createLocalizedAction({ + app: CONTENTFUL_APP_NAME, + action, + action_code: EQoreAppActionCode.ACTION, + options, + response_type: { + type: 'hash', + fields: { + id: { type: 'string', short_desc: 'Deleted entry ID' }, + deleted: { type: 'bool', short_desc: 'Whether the entry was successfully deleted' }, + }, + }, + api_function: async (obj, _opts, context) => { + const { space_id, entry_id } = getQoreContextRequiredValues({ + context: { ...context, opts: obj }, + optionFields: ['space_id', 'entry_id'], + ErrorClass: ContentfulError, + }); + + const environmentId = obj?.environment_id || 'master'; + + try { + const client = getContentfulScopedClient(context, space_id, environmentId); + + // Unpublish if published before deleting + try { + const entry = await client.entry.get({ entryId: entry_id }); + if ((entry.sys as any).publishedVersion) { + await client.entry.unpublish({ entryId: entry_id }); + } + } catch { + // Entry may already be unpublished + } + + await client.entry.delete({ entryId: entry_id }); + + return { id: entry_id, deleted: true }; + } catch (error) { + throw new ContentfulError(`Failed to delete entry: ${error}`); + } + }, +}); + +export default DeleteEntry; diff --git a/ts/src/apps/contentful/actions/entries/get-entry-with-replacement.action.ts b/ts/src/apps/contentful/actions/entries/get-entry-with-replacement.action.ts new file mode 100644 index 00000000..83701302 --- /dev/null +++ b/ts/src/apps/contentful/actions/entries/get-entry-with-replacement.action.ts @@ -0,0 +1,76 @@ +import { EQoreAppActionCode, QoreAppCreator, TQoreOptions } from '@qoretechnologies/ts-toolkit'; +import { getQoreContextRequiredValues } from '../../../../global/helpers'; +import { getContentfulScopedClient } from '../../client'; +import { CONTENTFUL_APP_NAME, ContentfulError } from '../../constants'; +import { getContentfulEntryAllowedValues } from '../../helpers/get-entry-allowed-values'; +import { contentfulBaseWithContentTypeOptions } from '../../helpers/shared-options'; +import { flattenEntry, getDefaultLocale } from '../../helpers/contentful-type-mapping'; +import { ContentfulEntryResponseType } from '../../response-types'; + +const action = 'get_entry_with_replacement'; + +const options = { + ...contentfulBaseWithContentTypeOptions, + entry_id: { + type: 'string', + required: true, + get_allowed_values: getContentfulEntryAllowedValues, + depends_on: ['content_type_id'], + }, + replacements: { + type: { + type: 'list', + element_type: { + type: 'hash', + fields: { + tag: { type: 'string', short_desc: 'The tag/placeholder to search for in text fields' }, + value: { type: 'string', short_desc: 'The replacement value' }, + }, + }, + }, + required: true, + }, +} satisfies TQoreOptions; + +const GetEntryWithReplacement = QoreAppCreator.createLocalizedAction({ + app: CONTENTFUL_APP_NAME, + action, + action_code: EQoreAppActionCode.ACTION, + options, + response_type: ContentfulEntryResponseType, + api_function: async (obj, _opts, context) => { + const { space_id, entry_id, replacements } = getQoreContextRequiredValues({ + context: { ...context, opts: obj }, + optionFields: ['space_id', 'entry_id', 'replacements'], + ErrorClass: ContentfulError, + }); + + const environmentId = obj?.environment_id || 'master'; + + try { + const client = getContentfulScopedClient(context, space_id, environmentId); + const defaultLocale = await getDefaultLocale(client, space_id); + const entry = await client.entry.get({ entryId: entry_id }); + const flattened = flattenEntry(entry, defaultLocale); + + const replacementList = replacements as Array<{ tag: string; value: string }>; + + for (const key of Object.keys(flattened)) { + const val = flattened[key]; + if (typeof val === 'string') { + let replaced = val; + for (const { tag, value } of replacementList) { + replaced = replaced.split(tag).join(value); + } + flattened[key] = replaced; + } + } + + return flattened; + } catch (error) { + throw new ContentfulError(`Failed to get entry with replacement: ${error}`); + } + }, +}); + +export default GetEntryWithReplacement; diff --git a/ts/src/apps/contentful/actions/entries/get-entry.action.ts b/ts/src/apps/contentful/actions/entries/get-entry.action.ts new file mode 100644 index 00000000..ca70240d --- /dev/null +++ b/ts/src/apps/contentful/actions/entries/get-entry.action.ts @@ -0,0 +1,49 @@ +import { EQoreAppActionCode, QoreAppCreator, TQoreOptions } from '@qoretechnologies/ts-toolkit'; +import { getQoreContextRequiredValues } from '../../../../global/helpers'; +import { getContentfulScopedClient } from '../../client'; +import { CONTENTFUL_APP_NAME, ContentfulError } from '../../constants'; +import { getContentfulEntryAllowedValues } from '../../helpers/get-entry-allowed-values'; +import { contentfulBaseWithContentTypeOptions } from '../../helpers/shared-options'; +import { flattenEntry, getDefaultLocale } from '../../helpers/contentful-type-mapping'; +import { ContentfulEntryResponseType } from '../../response-types'; + +const action = 'get_entry'; + +const options = { + ...contentfulBaseWithContentTypeOptions, + entry_id: { + type: 'string', + required: true, + get_allowed_values: getContentfulEntryAllowedValues, + depends_on: ['content_type_id'], + }, +} satisfies TQoreOptions; + +const GetEntry = QoreAppCreator.createLocalizedAction({ + app: CONTENTFUL_APP_NAME, + action, + action_code: EQoreAppActionCode.ACTION, + options, + response_type: ContentfulEntryResponseType, + api_function: async (obj, _opts, context) => { + const { space_id, entry_id } = getQoreContextRequiredValues({ + context: { ...context, opts: obj }, + optionFields: ['space_id', 'entry_id'], + ErrorClass: ContentfulError, + }); + + const environmentId = obj?.environment_id || 'master'; + + try { + const client = getContentfulScopedClient(context, space_id, environmentId); + const defaultLocale = await getDefaultLocale(client, space_id); + const entry = await client.entry.get({ entryId: entry_id }); + + return flattenEntry(entry, defaultLocale); + } catch (error) { + throw new ContentfulError(`Failed to get entry: ${error}`); + } + }, +}); + +export default GetEntry; diff --git a/ts/src/apps/contentful/actions/entries/publish-entry.action.ts b/ts/src/apps/contentful/actions/entries/publish-entry.action.ts new file mode 100644 index 00000000..d451504a --- /dev/null +++ b/ts/src/apps/contentful/actions/entries/publish-entry.action.ts @@ -0,0 +1,55 @@ +import { EQoreAppActionCode, QoreAppCreator, TQoreOptions } from '@qoretechnologies/ts-toolkit'; +import { getQoreContextRequiredValues } from '../../../../global/helpers'; +import { getContentfulScopedClient } from '../../client'; +import { CONTENTFUL_APP_NAME, ContentfulError } from '../../constants'; +import { getContentfulEntryAllowedValues } from '../../helpers/get-entry-allowed-values'; +import { contentfulBaseWithContentTypeOptions } from '../../helpers/shared-options'; +import { ContentfulPublishResponseType } from '../../response-types'; + +const action = 'publish_entry'; + +const options = { + ...contentfulBaseWithContentTypeOptions, + entry_id: { + type: 'string', + required: true, + get_allowed_values: getContentfulEntryAllowedValues, + }, +} satisfies TQoreOptions; + +const PublishEntry = QoreAppCreator.createLocalizedAction({ + app: CONTENTFUL_APP_NAME, + action, + action_code: EQoreAppActionCode.ACTION, + options, + response_type: ContentfulPublishResponseType, + api_function: async (obj, _opts, context) => { + const { space_id, entry_id } = getQoreContextRequiredValues({ + context: { ...context, opts: obj }, + optionFields: ['space_id', 'entry_id'], + ErrorClass: ContentfulError, + }); + + const environmentId = obj?.environment_id || 'master'; + + try { + const client = getContentfulScopedClient(context, space_id, environmentId); + const entry = await client.entry.get({ entryId: entry_id }); + + const published = await client.entry.publish( + { entryId: entry_id }, + { sys: { version: entry.sys.version } } as any + ); + + return { + id: published.sys.id, + version: published.sys.version, + published_at: (published.sys as any).publishedAt, + }; + } catch (error) { + throw new ContentfulError(`Failed to publish entry: ${error}`); + } + }, +}); + +export default PublishEntry; diff --git a/ts/src/apps/contentful/actions/entries/search-entries.action.ts b/ts/src/apps/contentful/actions/entries/search-entries.action.ts new file mode 100644 index 00000000..96c66091 --- /dev/null +++ b/ts/src/apps/contentful/actions/entries/search-entries.action.ts @@ -0,0 +1,70 @@ +import { EQoreAppActionCode, QoreAppCreator, TQoreOptions } from '@qoretechnologies/ts-toolkit'; +import { getQoreContextRequiredValues } from '../../../../global/helpers'; +import { getContentfulScopedClient } from '../../client'; +import { CONTENTFUL_APP_NAME, ContentfulError } from '../../constants'; +import { contentfulBaseWithContentTypeOptions } from '../../helpers/shared-options'; +import { flattenEntry, getDefaultLocale } from '../../helpers/contentful-type-mapping'; +import { ContentfulEntryListResponseType } from '../../response-types'; + +const action = 'search_entries'; + +const options = { + ...contentfulBaseWithContentTypeOptions, + query: { + type: 'string', + required: false, + }, + limit: { + type: 'int', + required: false, + default_value: 100, + }, + skip: { + type: 'int', + required: false, + default_value: 0, + }, +} satisfies TQoreOptions; + +const SearchEntries = QoreAppCreator.createLocalizedAction({ + app: CONTENTFUL_APP_NAME, + action, + action_code: EQoreAppActionCode.ACTION, + options, + response_type: ContentfulEntryListResponseType, + api_function: async (obj, _opts, context) => { + const { space_id, content_type_id } = getQoreContextRequiredValues({ + context: { ...context, opts: obj }, + optionFields: ['space_id', 'content_type_id'], + ErrorClass: ContentfulError, + }); + + const environmentId = obj?.environment_id || 'master'; + const limit = (obj?.limit as number) || 100; + const skip = (obj?.skip as number) || 0; + const queryText = obj?.query as string | undefined; + + try { + const client = getContentfulScopedClient(context, space_id, environmentId); + const defaultLocale = await getDefaultLocale(client, space_id); + + const query: Record = { + content_type: content_type_id, + limit, + skip, + }; + + if (queryText) { + query.query = queryText; + } + + const entries = await client.entry.getMany({ query }); + + return entries.items.map((entry) => flattenEntry(entry, defaultLocale)); + } catch (error) { + throw new ContentfulError(`Failed to search entries: ${error}`); + } + }, +}); + +export default SearchEntries; diff --git a/ts/src/apps/contentful/actions/entries/unpublish-entry.action.ts b/ts/src/apps/contentful/actions/entries/unpublish-entry.action.ts new file mode 100644 index 00000000..37d31f80 --- /dev/null +++ b/ts/src/apps/contentful/actions/entries/unpublish-entry.action.ts @@ -0,0 +1,54 @@ +import { EQoreAppActionCode, QoreAppCreator, TQoreOptions } from '@qoretechnologies/ts-toolkit'; +import { getQoreContextRequiredValues } from '../../../../global/helpers'; +import { getContentfulScopedClient } from '../../client'; +import { CONTENTFUL_APP_NAME, ContentfulError } from '../../constants'; +import { getContentfulEntryAllowedValues } from '../../helpers/get-entry-allowed-values'; +import { contentfulBaseWithContentTypeOptions } from '../../helpers/shared-options'; + +const action = 'unpublish_entry'; + +const options = { + ...contentfulBaseWithContentTypeOptions, + entry_id: { + type: 'string', + required: true, + get_allowed_values: getContentfulEntryAllowedValues, + }, +} satisfies TQoreOptions; + +const UnpublishEntry = QoreAppCreator.createLocalizedAction({ + app: CONTENTFUL_APP_NAME, + action, + action_code: EQoreAppActionCode.ACTION, + options, + response_type: { + type: 'hash', + fields: { + id: { type: 'string', short_desc: 'Entry ID' }, + version: { type: 'int', short_desc: 'Current version number' }, + }, + }, + api_function: async (obj, _opts, context) => { + const { space_id, entry_id } = getQoreContextRequiredValues({ + context: { ...context, opts: obj }, + optionFields: ['space_id', 'entry_id'], + ErrorClass: ContentfulError, + }); + + const environmentId = obj?.environment_id || 'master'; + + try { + const client = getContentfulScopedClient(context, space_id, environmentId); + const unpublished = await client.entry.unpublish({ entryId: entry_id }); + + return { + id: unpublished.sys.id, + version: unpublished.sys.version, + }; + } catch (error) { + throw new ContentfulError(`Failed to unpublish entry: ${error}`); + } + }, +}); + +export default UnpublishEntry; diff --git a/ts/src/apps/contentful/actions/entries/update-entry.action.ts b/ts/src/apps/contentful/actions/entries/update-entry.action.ts new file mode 100644 index 00000000..588980ff --- /dev/null +++ b/ts/src/apps/contentful/actions/entries/update-entry.action.ts @@ -0,0 +1,69 @@ +import { EQoreAppActionCode, QoreAppCreator, TQoreOptions } from '@qoretechnologies/ts-toolkit'; +import { getQoreContextRequiredValues } from '../../../../global/helpers'; +import { getContentfulScopedClient } from '../../client'; +import { CONTENTFUL_APP_NAME, ContentfulError } from '../../constants'; +import { getContentfulEntryAllowedValues } from '../../helpers/get-entry-allowed-values'; +import { contentfulBaseWithContentTypeOptions } from '../../helpers/shared-options'; +import { flattenEntry, getDefaultLocale, wrapFieldsWithLocale } from '../../helpers/contentful-type-mapping'; +import { ContentfulEntryResponseType } from '../../response-types'; + +const action = 'update_entry'; + +const options = { + ...contentfulBaseWithContentTypeOptions, + entry_id: { + type: 'string', + required: true, + get_allowed_values: getContentfulEntryAllowedValues, + depends_on: ['content_type_id'], + }, + fields: { + type: 'hash', + required: true, + required_groups: ['update_field'], + }, +} satisfies TQoreOptions; + +const UpdateEntry = QoreAppCreator.createLocalizedAction({ + app: CONTENTFUL_APP_NAME, + action, + action_code: EQoreAppActionCode.ACTION, + options, + response_type: ContentfulEntryResponseType, + api_function: async (obj, _opts, context) => { + const { space_id, entry_id, fields } = getQoreContextRequiredValues({ + context: { ...context, opts: obj }, + optionFields: ['space_id', 'entry_id', 'fields'], + ErrorClass: ContentfulError, + }); + + const environmentId = obj?.environment_id || 'master'; + + try { + const client = getContentfulScopedClient(context, space_id, environmentId); + const defaultLocale = await getDefaultLocale(client, space_id); + + const currentEntry = await client.entry.get({ entryId: entry_id }); + const updatedFields = wrapFieldsWithLocale(fields as Record, defaultLocale); + + const mergedFields = { + ...(currentEntry.fields as Record>), + ...updatedFields, + }; + + const updatedEntry = await client.entry.update( + { entryId: entry_id }, + { + sys: { version: currentEntry.sys.version } as any, + fields: mergedFields, + } + ); + + return flattenEntry(updatedEntry, defaultLocale); + } catch (error) { + throw new ContentfulError(`Failed to update entry: ${error}`); + } + }, +}); + +export default UpdateEntry; diff --git a/ts/src/apps/contentful/actions/index.ts b/ts/src/apps/contentful/actions/index.ts new file mode 100644 index 00000000..f0e701d4 --- /dev/null +++ b/ts/src/apps/contentful/actions/index.ts @@ -0,0 +1,32 @@ +// Entry actions +export { default as get_entry } from './entries/get-entry.action'; +export { default as get_entry_with_replacement } from './entries/get-entry-with-replacement.action'; +export { default as create_entry } from './entries/create-entry.action'; +export { default as update_entry } from './entries/update-entry.action'; +export { default as delete_entry } from './entries/delete-entry.action'; +export { default as publish_entry } from './entries/publish-entry.action'; +export { default as unpublish_entry } from './entries/unpublish-entry.action'; +export { default as archive_entry } from './entries/archive-entry.action'; +export { default as search_entries } from './entries/search-entries.action'; + +// Asset actions +export { default as get_asset } from './assets/get-asset.action'; +export { default as create_asset } from './assets/create-asset.action'; +export { default as update_asset } from './assets/update-asset.action'; +export { default as delete_asset } from './assets/delete-asset.action'; +export { default as publish_asset } from './assets/publish-asset.action'; +export { default as unpublish_asset } from './assets/unpublish-asset.action'; +export { default as archive_asset } from './assets/archive-asset.action'; +export { default as search_assets } from './assets/search-assets.action'; + +// Content type actions +export { default as get_content_type } from './content-types/get-content-type.action'; +export { default as create_content_type } from './content-types/create-content-type.action'; +export { default as update_content_type } from './content-types/update-content-type.action'; +export { default as delete_content_type } from './content-types/delete-content-type.action'; +export { default as activate_content_type } from './content-types/activate-content-type.action'; +export { default as deactivate_content_type } from './content-types/deactivate-content-type.action'; +export { default as add_field_to_content_type } from './content-types/add-field.action'; +export { default as update_field_of_content_type } from './content-types/update-field.action'; +export { default as delete_field_from_content_type } from './content-types/delete-field.action'; +export { default as search_content_types } from './content-types/search-content-types.action'; diff --git a/ts/src/apps/contentful/client.ts b/ts/src/apps/contentful/client.ts new file mode 100644 index 00000000..af739b3e --- /dev/null +++ b/ts/src/apps/contentful/client.ts @@ -0,0 +1,47 @@ +import contentful from 'contentful-management'; +import { getQoreContextRequiredValues } from '../../global/helpers'; +import { ContentfulError } from './constants'; + +/** + * Creates a plain Contentful Management client with just the access token. + * Use for operations that don't need a specific space (e.g., listing spaces). + */ +export const getContentfulClient = (context: Record | undefined) => { + const { access_token } = getQoreContextRequiredValues({ + context, + connectionFields: ['access_token'], + ErrorClass: ContentfulError, + }); + + return contentful.createClient( + { accessToken: access_token }, + { type: 'plain' } + ); +}; + +/** + * Creates a plain Contentful Management client scoped to a specific space and environment. + * Use for operations on entries, assets, content types, etc. + */ +export const getContentfulScopedClient = ( + context: Record | undefined, + spaceId: string, + environmentId?: string +) => { + const { access_token } = getQoreContextRequiredValues({ + context, + connectionFields: ['access_token'], + ErrorClass: ContentfulError, + }); + + return contentful.createClient( + { accessToken: access_token }, + { + type: 'plain', + defaults: { + spaceId, + environmentId: environmentId || 'master', + }, + } + ); +}; diff --git a/ts/src/apps/contentful/constants.ts b/ts/src/apps/contentful/constants.ts new file mode 100644 index 00000000..81d3d11e --- /dev/null +++ b/ts/src/apps/contentful/constants.ts @@ -0,0 +1,44 @@ +import { TCustomConnOptions } from '@qoretechnologies/ts-toolkit'; + +export class ContentfulError extends Error { + constructor(message: string) { + super(message); + this.name = 'ContentfulError'; + } +} + +export const CONTENTFUL_APP_NAME = 'Contentful'; + +export const CONTENTFUL_APP_LOGO = + 'PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNTIgMjg5Ij48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImEiIHgxPSIuNSIgeDI9Ii41IiB5Mj0iMSI+PHN0b3Agb2Zmc2V0PSIwIiBzdG9wLWNvbG9yPSIjZTViNGExIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjZTY4YTFhIi8+PC9saW5lYXJHcmFkaWVudD48bGluZWFyR3JhZGllbnQgaWQ9ImIiIHgxPSIuNSIgeDI9Ii41IiB5Mj0iMSI+PHN0b3Agb2Zmc2V0PSIwIiBzdG9wLWNvbG9yPSIjZWZkOGNlIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjZTZhNTZlIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PHBhdGggZmlsbD0idXJsKCNhKSIgZD0iTTAgMjg5TDEyNS41IDE3MCAxNjIgMjA0LjUgMzYuNSAyODl6Ii8+PHBhdGggZmlsbD0iI2U4NjgyNSIgZD0iTTAgMEwxMjUuNSAxMTkgMTYyIDg0LjUgMzYuNSAwegoiLz48cGF0aCBmaWxsPSIjZTY4YTFhIiBkPSJNMzYuNSAwTDE2MiA4NC41IDE2MiAyMDQuNSAzNi41IDI4OXpNMjE1LjUgMEwyNTIgMjQuNSAyNTIgMjY0LjUgMjE1LjUgMjg5eiIvPjxwYXRoIGZpbGw9InVybCgjYikiIGQ9Ik0yMTUuNSAwTDg5LjUgMTE5IDg5LjUgMTcwIDIxNS41IDI4OXoiLz48L3N2Zz4='; + +export const CONTENTFUL_API_URL = 'https://api.contentful.com'; + +export const CONTENTFUL_CONN_OPTIONS = { + access_token: { + type: 'string', + display_name: 'Content Management API Token', + short_desc: 'Your Contentful Content Management API access token.', + desc: 'A personal access token for the Contentful Content Management API. Can be created in Settings > CMA tokens in your Contentful dashboard.', + }, +} satisfies TCustomConnOptions; + +export const extractContentfulErrorMessage = (error: unknown): string => { + if (error instanceof ContentfulError) { + return error.message; + } + + if (error instanceof Error) { + try { + const parsed = JSON.parse(error.message); + if (parsed?.message) { + return parsed.message; + } + } catch { + // not JSON + } + return error.message; + } + + return String(error); +}; diff --git a/ts/src/apps/contentful/helpers/contentful-type-mapping.ts b/ts/src/apps/contentful/helpers/contentful-type-mapping.ts new file mode 100644 index 00000000..1caf5f64 --- /dev/null +++ b/ts/src/apps/contentful/helpers/contentful-type-mapping.ts @@ -0,0 +1,155 @@ +import { ContentfulError } from '../constants'; + +const localeCache = new Map(); + +/** + * Fetches and caches the default locale for a space. + */ +export const getDefaultLocale = async ( + client: { locale: { getMany: (params: Record) => Promise<{ items: Array<{ default: boolean; code: string }> }> } }, + spaceId: string +): Promise => { + const cached = localeCache.get(spaceId); + if (cached) { + return cached; + } + + try { + const locales = await client.locale.getMany({ query: { limit: 100 } }); + const defaultLocale = locales.items.find((l) => l.default); + const code = defaultLocale?.code || 'en-US'; + localeCache.set(spaceId, code); + return code; + } catch (error) { + throw new ContentfulError(`Failed to fetch locales: ${error}`); + } +}; + +/** + * Flattens Contentful locale-wrapped fields to a simple key-value object. + * { title: { 'en-US': 'Hello' } } → { title: 'Hello' } + */ +export const flattenEntryFields = ( + fields: Record>, + defaultLocale: string +): Record => { + const result: Record = {}; + + for (const [key, localeValues] of Object.entries(fields)) { + if (localeValues && typeof localeValues === 'object') { + result[key] = localeValues[defaultLocale] ?? Object.values(localeValues)[0]; + } else { + result[key] = localeValues; + } + } + + return result; +}; + +/** + * Wraps simple key-value fields with the locale structure. + * { title: 'Hello' } → { title: { 'en-US': 'Hello' } } + */ +export const wrapFieldsWithLocale = ( + fields: Record, + defaultLocale: string +): Record> => { + const result: Record> = {}; + + for (const [key, value] of Object.entries(fields)) { + if (value !== undefined && value !== null) { + result[key] = { [defaultLocale]: value }; + } + } + + return result; +}; + +/** + * Flattens a full Contentful entry into a flat object with sys metadata. + */ +export const flattenEntry = < + T extends { + sys: { id: string; createdAt: string; updatedAt: string; version: number; contentType?: { sys: { id: string } } }; + fields: Record>; + }, +>( + entry: T, + defaultLocale: string +): Record => { + return { + id: entry.sys.id, + content_type: entry.sys.contentType?.sys?.id, + created_at: entry.sys.createdAt, + updated_at: entry.sys.updatedAt, + version: entry.sys.version, + ...flattenEntryFields(entry.fields, defaultLocale), + }; +}; + +/** + * Flattens a full Contentful asset into a flat object. + */ +export const flattenAsset = < + T extends { + sys: { id: string; createdAt: string; updatedAt: string; version: number }; + fields: Record>; + }, +>( + asset: T, + defaultLocale: string +): Record => { + const fields = flattenEntryFields(asset.fields, defaultLocale); + const file = fields.file as Record | undefined; + + return { + id: asset.sys.id, + created_at: asset.sys.createdAt, + updated_at: asset.sys.updatedAt, + version: asset.sys.version, + title: fields.title, + description: fields.description, + file_name: file?.fileName, + content_type: file?.contentType, + url: file?.url ? `https:${file.url}` : undefined, + size: (file?.details as Record)?.size, + }; +}; + +/** + * Maps Contentful field types to Qore types. + */ +export const mapContentfulFieldTypeToQoreType = ( + fieldType: string +): { type: string; fields?: Record } => { + switch (fieldType) { + case 'Symbol': + case 'Text': + case 'RichText': + return { type: 'string' }; + case 'Integer': + return { type: 'int' }; + case 'Number': + return { type: 'float' }; + case 'Date': + return { type: 'date' }; + case 'Boolean': + return { type: 'bool' }; + case 'Location': + return { + type: 'hash', + fields: { + lat: { type: 'float', short_desc: 'Latitude' }, + lon: { type: 'float', short_desc: 'Longitude' }, + }, + }; + case 'Object': + return { type: 'hash' }; + case 'Link': + return { type: 'string' }; + case 'Array': + return { type: 'list' }; + default: + return { type: 'string' }; + } +}; diff --git a/ts/src/apps/contentful/helpers/get-asset-allowed-values.ts b/ts/src/apps/contentful/helpers/get-asset-allowed-values.ts new file mode 100644 index 00000000..2e88bde0 --- /dev/null +++ b/ts/src/apps/contentful/helpers/get-asset-allowed-values.ts @@ -0,0 +1,34 @@ +import { TCustomConnOptions, TQoreGetAllowedValuesFunction } from '@qoretechnologies/ts-toolkit'; +import { getContentfulScopedClient } from '../client'; +import { getDefaultLocale } from './contentful-type-mapping'; + +export const getContentfulAssetAllowedValues: TQoreGetAllowedValuesFunction< + TCustomConnOptions, + string +> = async (context) => { + const spaceId = context?.opts?.space_id; + const environmentId = context?.opts?.environment_id || 'master'; + + if (!context?.conn_opts?.access_token || !spaceId) { + return []; + } + + try { + const client = getContentfulScopedClient(context, spaceId, environmentId); + const defaultLocale = await getDefaultLocale(client, spaceId); + + const assets = await client.asset.getMany({ query: { limit: 100 } }); + + return assets.items.map((asset) => { + const fields = asset.fields as Record>; + const title = fields.title?.[defaultLocale] || fields.title?.[Object.keys(fields.title || {})[0]]; + + return { + value: asset.sys.id, + display_name: title ? String(title) : asset.sys.id, + }; + }); + } catch { + return []; + } +}; diff --git a/ts/src/apps/contentful/helpers/get-content-type-allowed-values.ts b/ts/src/apps/contentful/helpers/get-content-type-allowed-values.ts new file mode 100644 index 00000000..3094780d --- /dev/null +++ b/ts/src/apps/contentful/helpers/get-content-type-allowed-values.ts @@ -0,0 +1,28 @@ +import { TCustomConnOptions, TQoreGetAllowedValuesFunction } from '@qoretechnologies/ts-toolkit'; +import { getContentfulScopedClient } from '../client'; + +export const getContentfulContentTypeAllowedValues: TQoreGetAllowedValuesFunction< + TCustomConnOptions, + string +> = async (context) => { + const spaceId = context?.opts?.space_id; + const environmentId = context?.opts?.environment_id || 'master'; + + if (!context?.conn_opts?.access_token || !spaceId) { + return []; + } + + try { + const client = getContentfulScopedClient(context, spaceId, environmentId); + const contentTypes = await client.contentType.getMany({ + query: { limit: 1000 }, + }); + + return contentTypes.items.map((ct) => ({ + value: ct.sys.id, + display_name: ct.name, + })); + } catch { + return []; + } +}; diff --git a/ts/src/apps/contentful/helpers/get-entry-allowed-values.ts b/ts/src/apps/contentful/helpers/get-entry-allowed-values.ts new file mode 100644 index 00000000..466776ad --- /dev/null +++ b/ts/src/apps/contentful/helpers/get-entry-allowed-values.ts @@ -0,0 +1,43 @@ +import { TCustomConnOptions, TQoreGetAllowedValuesFunction } from '@qoretechnologies/ts-toolkit'; +import { getContentfulScopedClient } from '../client'; +import { getDefaultLocale } from './contentful-type-mapping'; + +export const getContentfulEntryAllowedValues: TQoreGetAllowedValuesFunction< + TCustomConnOptions, + string +> = async (context) => { + const spaceId = context?.opts?.space_id; + const environmentId = context?.opts?.environment_id || 'master'; + const contentTypeId = context?.opts?.content_type_id; + + if (!context?.conn_opts?.access_token || !spaceId) { + return []; + } + + try { + const client = getContentfulScopedClient(context, spaceId, environmentId); + const defaultLocale = await getDefaultLocale(client, spaceId); + + const query: Record = { limit: 100 }; + if (contentTypeId) { + query.content_type = contentTypeId; + } + + const entries = await client.entry.getMany({ query }); + + return entries.items.map((entry) => { + const fields = entry.fields as Record>; + const displayField = Object.keys(fields)[0]; + const displayValue = displayField + ? String(fields[displayField]?.[defaultLocale] || entry.sys.id) + : entry.sys.id; + + return { + value: entry.sys.id, + display_name: displayValue, + }; + }); + } catch { + return []; + } +}; diff --git a/ts/src/apps/contentful/helpers/get-environment-allowed-values.ts b/ts/src/apps/contentful/helpers/get-environment-allowed-values.ts new file mode 100644 index 00000000..fbe53caf --- /dev/null +++ b/ts/src/apps/contentful/helpers/get-environment-allowed-values.ts @@ -0,0 +1,28 @@ +import { TCustomConnOptions, TQoreGetAllowedValuesFunction } from '@qoretechnologies/ts-toolkit'; +import { getContentfulClient } from '../client'; + +export const getContentfulEnvironmentAllowedValues: TQoreGetAllowedValuesFunction< + TCustomConnOptions, + string +> = async (context) => { + const spaceId = context?.opts?.space_id; + + if (!context?.conn_opts?.access_token || !spaceId) { + return []; + } + + try { + const client = getContentfulClient(context); + const environments = await client.environment.getMany({ + spaceId, + query: { limit: 100 }, + }); + + return environments.items.map((env) => ({ + value: env.sys.id, + display_name: env.name, + })); + } catch { + return []; + } +}; diff --git a/ts/src/apps/contentful/helpers/get-field-allowed-values.ts b/ts/src/apps/contentful/helpers/get-field-allowed-values.ts new file mode 100644 index 00000000..eff40747 --- /dev/null +++ b/ts/src/apps/contentful/helpers/get-field-allowed-values.ts @@ -0,0 +1,27 @@ +import { TCustomConnOptions, TQoreGetAllowedValuesFunction } from '@qoretechnologies/ts-toolkit'; +import { getContentfulScopedClient } from '../client'; + +export const getContentfulFieldAllowedValues: TQoreGetAllowedValuesFunction< + TCustomConnOptions, + string +> = async (context) => { + const spaceId = context?.opts?.space_id; + const environmentId = context?.opts?.environment_id || 'master'; + const contentTypeId = context?.opts?.content_type_id; + + if (!context?.conn_opts?.access_token || !spaceId || !contentTypeId) { + return []; + } + + try { + const client = getContentfulScopedClient(context, spaceId, environmentId); + const contentType = await client.contentType.get({ contentTypeId }); + + return contentType.fields.map((field) => ({ + value: field.id, + display_name: field.name, + })); + } catch { + return []; + } +}; diff --git a/ts/src/apps/contentful/helpers/get-space-allowed-values.ts b/ts/src/apps/contentful/helpers/get-space-allowed-values.ts new file mode 100644 index 00000000..f946ffcc --- /dev/null +++ b/ts/src/apps/contentful/helpers/get-space-allowed-values.ts @@ -0,0 +1,23 @@ +import { TCustomConnOptions, TQoreGetAllowedValuesFunction } from '@qoretechnologies/ts-toolkit'; +import { getContentfulClient } from '../client'; + +export const getContentfulSpaceAllowedValues: TQoreGetAllowedValuesFunction< + TCustomConnOptions, + string +> = async (context) => { + if (!context?.conn_opts?.access_token) { + return []; + } + + try { + const client = getContentfulClient(context); + const spaces = await client.space.getMany({ query: { limit: 100 } }); + + return spaces.items.map((space) => ({ + value: space.sys.id, + display_name: space.name, + })); + } catch { + return []; + } +}; diff --git a/ts/src/apps/contentful/helpers/shared-options.ts b/ts/src/apps/contentful/helpers/shared-options.ts new file mode 100644 index 00000000..429b6d4c --- /dev/null +++ b/ts/src/apps/contentful/helpers/shared-options.ts @@ -0,0 +1,43 @@ +import { TQoreOptions } from '@qoretechnologies/ts-toolkit'; +import { getContentfulSpaceAllowedValues } from './get-space-allowed-values'; +import { getContentfulEnvironmentAllowedValues } from './get-environment-allowed-values'; +import { getContentfulContentTypeAllowedValues } from './get-content-type-allowed-values'; + +export const contentfulSpaceOption = { + space_id: { + type: 'string', + required: true, + get_allowed_values: getContentfulSpaceAllowedValues, + on_change: ['refetch'], + }, +} satisfies TQoreOptions; + +export const contentfulEnvironmentOption = { + environment_id: { + type: 'string', + required: false, + get_allowed_values: getContentfulEnvironmentAllowedValues, + depends_on: ['space_id'], + default_value: 'master', + }, +} satisfies TQoreOptions; + +export const contentfulContentTypeOption = { + content_type_id: { + type: 'string', + required: true, + get_allowed_values: getContentfulContentTypeAllowedValues, + depends_on: ['space_id'], + on_change: ['refetch'], + }, +} satisfies TQoreOptions; + +export const contentfulBaseOptions = { + ...contentfulSpaceOption, + ...contentfulEnvironmentOption, +} satisfies TQoreOptions; + +export const contentfulBaseWithContentTypeOptions = { + ...contentfulBaseOptions, + ...contentfulContentTypeOption, +} satisfies TQoreOptions; diff --git a/ts/src/apps/contentful/index.ts b/ts/src/apps/contentful/index.ts new file mode 100644 index 00000000..3b68eaec --- /dev/null +++ b/ts/src/apps/contentful/index.ts @@ -0,0 +1,35 @@ +import { TQoreAppWithActions } from '@qoretechnologies/ts-toolkit'; +import { mapActionsToApp, mapTriggersToApp } from '../../global/helpers/index'; +import L from '../../i18n/i18n-node'; +import { Locales } from '../../i18n/i18n-types'; +import { CONTENTFUL_APP_LOGO, CONTENTFUL_APP_NAME, CONTENTFUL_API_URL, CONTENTFUL_CONN_OPTIONS } from './constants'; + +import * as CONTENTFUL_ACTIONS from './actions'; +import * as CONTENTFUL_TRIGGERS from './triggers'; + +export default (locale: Locales) => + ({ + name: CONTENTFUL_APP_NAME, + display_name: L[locale].apps[CONTENTFUL_APP_NAME].displayName(), + short_desc: L[locale].apps[CONTENTFUL_APP_NAME].shortDesc(), + desc: L[locale].apps[CONTENTFUL_APP_NAME].longDesc(), + actions: [ + ...mapActionsToApp(CONTENTFUL_APP_NAME, CONTENTFUL_ACTIONS, locale), + ...mapTriggersToApp(CONTENTFUL_APP_NAME, CONTENTFUL_TRIGGERS, locale), + ], + logo: CONTENTFUL_APP_LOGO, + logo_file_name: 'contentful-logo.svg', + logo_mime_type: 'image/svg+xml', + rest: { + url: CONTENTFUL_API_URL, + data: 'json', + oauth2_grant_type: 'none', + ping_method: 'GET', + ping_path: '/spaces', + token_type: 'Bearer', + }, + rest_modifiers: { + options: CONTENTFUL_CONN_OPTIONS, + required_options: 'access_token', + }, + }) satisfies TQoreAppWithActions; diff --git a/ts/src/apps/contentful/response-types/asset.ts b/ts/src/apps/contentful/response-types/asset.ts new file mode 100644 index 00000000..34f5aae9 --- /dev/null +++ b/ts/src/apps/contentful/response-types/asset.ts @@ -0,0 +1,22 @@ +import { TQoreResponseType } from '@qoretechnologies/ts-toolkit'; + +export const ContentfulAssetResponseType = { + type: 'hash', + fields: { + id: { type: 'string', short_desc: 'Asset ID' }, + created_at: { type: 'date', short_desc: 'Creation timestamp' }, + updated_at: { type: 'date', short_desc: 'Last update timestamp' }, + version: { type: 'int', short_desc: 'Current version number' }, + title: { type: 'string', short_desc: 'Asset title' }, + description: { type: 'string', short_desc: 'Asset description' }, + file_name: { type: 'string', short_desc: 'File name' }, + content_type: { type: 'string', short_desc: 'MIME type' }, + url: { type: 'string', short_desc: 'File URL' }, + size: { type: 'int', short_desc: 'File size in bytes' }, + }, +} satisfies TQoreResponseType; + +export const ContentfulAssetListResponseType = { + type: 'list', + element_type: ContentfulAssetResponseType, +} satisfies TQoreResponseType; diff --git a/ts/src/apps/contentful/response-types/content-type.ts b/ts/src/apps/contentful/response-types/content-type.ts new file mode 100644 index 00000000..1b0fd0e6 --- /dev/null +++ b/ts/src/apps/contentful/response-types/content-type.ts @@ -0,0 +1,28 @@ +import { TQoreResponseType } from '@qoretechnologies/ts-toolkit'; + +export const ContentfulFieldResponseType = { + type: 'hash', + fields: { + id: { type: 'string', short_desc: 'Field ID' }, + name: { type: 'string', short_desc: 'Field name' }, + type: { type: 'string', short_desc: 'Field type (Symbol, Text, Integer, Number, Date, Boolean, etc.)' }, + required: { type: 'bool', short_desc: 'Whether the field is required' }, + localized: { type: 'bool', short_desc: 'Whether the field supports localization' }, + }, +} satisfies TQoreResponseType; + +export const ContentfulContentTypeResponseType = { + type: 'hash', + fields: { + id: { type: 'string', short_desc: 'Content type ID' }, + name: { type: 'string', short_desc: 'Content type name' }, + description: { type: 'string', short_desc: 'Content type description' }, + display_field: { type: 'string', short_desc: 'ID of the field used as display title' }, + fields: { type: { type: 'list', element_type: ContentfulFieldResponseType } }, + }, +} satisfies TQoreResponseType; + +export const ContentfulContentTypeListResponseType = { + type: 'list', + element_type: ContentfulContentTypeResponseType, +} satisfies TQoreResponseType; diff --git a/ts/src/apps/contentful/response-types/entry.ts b/ts/src/apps/contentful/response-types/entry.ts new file mode 100644 index 00000000..d8824d8f --- /dev/null +++ b/ts/src/apps/contentful/response-types/entry.ts @@ -0,0 +1,26 @@ +import { TQoreResponseType } from '@qoretechnologies/ts-toolkit'; + +export const ContentfulEntryResponseType = { + type: 'hash', + fields: { + id: { type: 'string', short_desc: 'Entry ID' }, + content_type: { type: 'string', short_desc: 'Content type ID' }, + created_at: { type: 'date', short_desc: 'Creation timestamp' }, + updated_at: { type: 'date', short_desc: 'Last update timestamp' }, + version: { type: 'int', short_desc: 'Current version number' }, + }, +} satisfies TQoreResponseType; + +export const ContentfulEntryListResponseType = { + type: 'list', + element_type: ContentfulEntryResponseType, +} satisfies TQoreResponseType; + +export const ContentfulPublishResponseType = { + type: 'hash', + fields: { + id: { type: 'string', short_desc: 'Entry ID' }, + version: { type: 'int', short_desc: 'Published version number' }, + published_at: { type: 'date', short_desc: 'Publish timestamp' }, + }, +} satisfies TQoreResponseType; diff --git a/ts/src/apps/contentful/response-types/index.ts b/ts/src/apps/contentful/response-types/index.ts new file mode 100644 index 00000000..4d5f09e5 --- /dev/null +++ b/ts/src/apps/contentful/response-types/index.ts @@ -0,0 +1,3 @@ +export * from './entry'; +export * from './asset'; +export * from './content-type'; diff --git a/ts/src/apps/contentful/triggers/index.ts b/ts/src/apps/contentful/triggers/index.ts new file mode 100644 index 00000000..e89b8cc2 --- /dev/null +++ b/ts/src/apps/contentful/triggers/index.ts @@ -0,0 +1 @@ +export { default as watch_event } from './watch-event.trigger'; diff --git a/ts/src/apps/contentful/triggers/watch-event.trigger.ts b/ts/src/apps/contentful/triggers/watch-event.trigger.ts new file mode 100644 index 00000000..db28496a --- /dev/null +++ b/ts/src/apps/contentful/triggers/watch-event.trigger.ts @@ -0,0 +1,151 @@ +import { EQoreAppActionCode, QoreAppCreator, QorusRequest, TQoreOptions } from '@qoretechnologies/ts-toolkit'; +import { getQoreContextRequiredValues } from '../../../global/helpers'; +import { CONTENTFUL_APP_NAME, CONTENTFUL_API_URL, ContentfulError } from '../constants'; +import { contentfulBaseOptions } from '../helpers/shared-options'; + +const action = 'watch_event'; + +const EVENT_TYPE_ALLOWED_VALUES = [ + { value: 'Entry.create', display_name: 'Entry Created' }, + { value: 'Entry.save', display_name: 'Entry Saved' }, + { value: 'Entry.auto_save', display_name: 'Entry Auto-Saved' }, + { value: 'Entry.archive', display_name: 'Entry Archived' }, + { value: 'Entry.unarchive', display_name: 'Entry Unarchived' }, + { value: 'Entry.publish', display_name: 'Entry Published' }, + { value: 'Entry.unpublish', display_name: 'Entry Unpublished' }, + { value: 'Entry.delete', display_name: 'Entry Deleted' }, + { value: 'Asset.create', display_name: 'Asset Created' }, + { value: 'Asset.save', display_name: 'Asset Saved' }, + { value: 'Asset.auto_save', display_name: 'Asset Auto-Saved' }, + { value: 'Asset.archive', display_name: 'Asset Archived' }, + { value: 'Asset.unarchive', display_name: 'Asset Unarchived' }, + { value: 'Asset.publish', display_name: 'Asset Published' }, + { value: 'Asset.unpublish', display_name: 'Asset Unpublished' }, + { value: 'Asset.delete', display_name: 'Asset Deleted' }, + { value: 'ContentType.create', display_name: 'Content Type Created' }, + { value: 'ContentType.save', display_name: 'Content Type Saved' }, + { value: 'ContentType.publish', display_name: 'Content Type Published' }, + { value: 'ContentType.unpublish', display_name: 'Content Type Unpublished' }, + { value: 'ContentType.delete', display_name: 'Content Type Deleted' }, +]; + +const options = { + ...contentfulBaseOptions, + event_types: { + type: { type: 'list', element_type: 'string' }, + required: true, + element_allowed_values: EVENT_TYPE_ALLOWED_VALUES, + }, +} satisfies TQoreOptions; + +const WatchEvent = QoreAppCreator.createLocalizedTrigger({ + app: CONTENTFUL_APP_NAME, + action, + action_code: EQoreAppActionCode.EVENT, + options, + webhook_method: 'POST', + + webhook_register: async (context, url) => { + const { access_token, space_id } = getQoreContextRequiredValues({ + context, + connectionFields: ['access_token'], + optionFields: ['space_id'], + ErrorClass: ContentfulError, + }); + + const eventTypes = (context.opts?.event_types as string[]) || ['Entry.create']; + + try { + const response = await QorusRequest.post<{ data: { sys: { id: string } } }>( + { + headers: { + Authorization: `Bearer ${access_token}`, + 'Content-Type': 'application/json', + }, + data: { + name: `Qore Webhook - ${eventTypes.join(', ')}`, + url, + topics: eventTypes.map((t) => `${t}.*`), + filters: [], + }, + path: `/spaces/${space_id}/webhook_definitions`, + }, + { url: CONTENTFUL_API_URL, endpointId: CONTENTFUL_APP_NAME } + ); + + const webhookId = response?.data?.sys?.id; + if (!webhookId) { + throw new Error('No webhook ID returned'); + } + + return { webhook: { id: webhookId } }; + } catch (error) { + throw new ContentfulError(`Failed to register webhook: ${error}`); + } + }, + + webhook_deregister: async (context, _url, regInfo: { webhook: { id: string } }) => { + const { access_token, space_id } = getQoreContextRequiredValues({ + context, + connectionFields: ['access_token'], + optionFields: ['space_id'], + ErrorClass: ContentfulError, + }); + + const webhookId = regInfo?.webhook?.id; + if (!webhookId) { + throw new ContentfulError('Invalid webhook information for deregistration'); + } + + try { + await QorusRequest.deleteReq( + { + headers: { + Authorization: `Bearer ${access_token}`, + }, + path: `/spaces/${space_id}/webhook_definitions/${webhookId}`, + }, + { url: CONTENTFUL_API_URL, endpointId: CONTENTFUL_APP_NAME } + ); + } catch (error) { + throw new ContentfulError(`Failed to deregister webhook: ${error}`); + } + }, + + get_example_event_data: async () => { + return { + sys: { + type: 'Entry', + id: 'example-entry-id', + space: { sys: { id: 'example-space-id' } }, + environment: { sys: { id: 'master' } }, + contentType: { sys: { id: 'blogPost' } }, + createdAt: '2026-01-01T00:00:00.000Z', + updatedAt: '2026-01-01T00:00:00.000Z', + }, + fields: { + title: { 'en-US': 'Example Entry' }, + body: { 'en-US': 'This is an example entry body.' }, + }, + }; + }, + + event_info: { + desc: 'Contentful Webhook Event Info', + type: { + type: 'hash', + fields: { + sys: { + type: 'hash', + short_desc: 'System metadata of the affected resource', + }, + fields: { + type: 'hash', + short_desc: 'Resource fields (locale-wrapped)', + }, + }, + }, + }, +}); + +export default WatchEvent; diff --git a/ts/src/i18n/en/apps/Contentful/index.ts b/ts/src/i18n/en/apps/Contentful/index.ts new file mode 100644 index 00000000..2998a1d1 --- /dev/null +++ b/ts/src/i18n/en/apps/Contentful/index.ts @@ -0,0 +1,1002 @@ +const ContentfulAppEn = { + displayName: 'Contentful', + groups: ['Documents & Documentation'], + shortDesc: 'Connect to Contentful to manage your content, assets, and content models', + longDesc: + 'Integrate with Contentful to automate content management workflows. Create, update, publish, and manage entries, assets, and content types. Monitor content changes with real-time webhook triggers. This integration provides full access to the Contentful Content Management API for comprehensive headless CMS automation.', + connectionMessage: { + title: 'Connect to Contentful', + content: `To connect to Contentful, you will need a **Content Management API (CMA) Token**. + +## Getting Your CMA Token + +1. Log in to your [Contentful](https://app.contentful.com) account +2. Go to **Settings** (gear icon in the top navigation) +3. Select **CMA tokens** from the left sidebar +4. Click **Create personal access token** +5. Give your token a descriptive name (e.g., "Qore Integration") +6. Click **Generate** and copy the generated token + +**Important:** The token is only shown once. Make sure to copy and save it securely. + +## Permissions + +The CMA token inherits the permissions of the user who created it. Ensure the user has appropriate access to the spaces and environments you want to manage.`, + }, + actions: { + // Entry actions + get_entry: { + displayName: 'Get an Entry', + shortDesc: 'Returns attributes of a specific entry', + longDesc: + 'Retrieves a single entry by its ID from the specified space and environment. Returns all entry fields with their values in the default locale.', + groups: ['Entries'], + options: { + space_id: { + displayName: 'Space', + shortDesc: 'The Contentful space to use', + longDesc: 'Select the Contentful space containing the entry.', + }, + environment_id: { + displayName: 'Environment', + shortDesc: 'The environment to use (default: master)', + longDesc: + 'Select the environment within the space. Defaults to "master" if not specified.', + }, + content_type_id: { + displayName: 'Content Type', + shortDesc: 'The content type of the entry', + longDesc: 'Select the content type to filter entries by type.', + }, + entry_id: { + displayName: 'Entry', + shortDesc: 'The entry to retrieve', + longDesc: 'Select or enter the ID of the entry to retrieve.', + }, + }, + }, + get_entry_with_replacement: { + displayName: 'Get an Entry with Replacement', + shortDesc: 'Replaces text fields with new values using specific tags; returns new values as output', + longDesc: + 'Retrieves an entry and performs text replacements on all string fields. For each replacement pair, all occurrences of the tag are replaced with the specified value. Useful for template-based content.', + groups: ['Entries'], + options: { + space_id: { + displayName: 'Space', + shortDesc: 'The Contentful space to use', + longDesc: 'Select the Contentful space containing the entry.', + }, + environment_id: { + displayName: 'Environment', + shortDesc: 'The environment to use (default: master)', + longDesc: + 'Select the environment within the space. Defaults to "master" if not specified.', + }, + content_type_id: { + displayName: 'Content Type', + shortDesc: 'The content type of the entry', + longDesc: 'Select the content type to filter entries by type.', + }, + entry_id: { + displayName: 'Entry', + shortDesc: 'The entry to retrieve and apply replacements to', + longDesc: 'Select or enter the ID of the entry to retrieve.', + }, + replacements: { + displayName: 'Replacements', + shortDesc: 'List of tag/value pairs for text replacement', + longDesc: + 'Provide a list of replacement pairs. Each pair has a "tag" (placeholder to find) and a "value" (text to replace it with). All string fields in the entry will be processed.', + type: { + element_type: { + fields: { + tag: { + displayName: 'Tag', + shortDesc: 'The tag/placeholder to search for in text fields', + longDesc: 'The tag or placeholder text to search for within all string fields of the entry.', + }, + value: { + displayName: 'Value', + shortDesc: 'The replacement value', + longDesc: 'The text that will replace all occurrences of the tag.', + }, + }, + }, + }, + }, + }, + }, + create_entry: { + displayName: 'Create an Entry', + shortDesc: 'Creates a new entry', + longDesc: + 'Creates a new entry of the specified content type in the given space and environment. Optionally publishes the entry immediately after creation.', + groups: ['Entries'], + options: { + space_id: { + displayName: 'Space', + shortDesc: 'The Contentful space to use', + longDesc: 'Select the Contentful space where the entry will be created.', + }, + environment_id: { + displayName: 'Environment', + shortDesc: 'The environment to use (default: master)', + longDesc: + 'Select the environment within the space. Defaults to "master" if not specified.', + }, + content_type_id: { + displayName: 'Content Type', + shortDesc: 'The content type for the new entry', + longDesc: 'Select the content type that defines the schema for the new entry.', + }, + fields: { + displayName: 'Fields', + shortDesc: 'The field values for the new entry', + longDesc: + 'Provide the field values as a key-value object. Keys should match the field IDs of the content type.', + }, + publish: { + displayName: 'Publish', + shortDesc: 'Whether to publish the entry after creation', + longDesc: + 'If enabled, the entry will be published immediately after creation. Otherwise, it will be saved as a draft.', + }, + }, + }, + update_entry: { + displayName: 'Update an Entry', + shortDesc: 'Updates a specific entry by its ID', + longDesc: + 'Updates an existing entry with new field values. Only the specified fields are updated; other fields remain unchanged.', + groups: ['Entries'], + options: { + space_id: { + displayName: 'Space', + shortDesc: 'The Contentful space to use', + longDesc: 'Select the Contentful space containing the entry.', + }, + environment_id: { + displayName: 'Environment', + shortDesc: 'The environment to use (default: master)', + longDesc: + 'Select the environment within the space. Defaults to "master" if not specified.', + }, + content_type_id: { + displayName: 'Content Type', + shortDesc: 'The content type of the entry', + longDesc: 'Select the content type to filter entries by type.', + }, + entry_id: { + displayName: 'Entry', + shortDesc: 'The entry to update', + longDesc: 'Select or enter the ID of the entry to update.', + }, + fields: { + displayName: 'Fields', + shortDesc: 'The field values to update', + longDesc: + 'Provide the field values to update as a key-value object. Only the specified fields will be changed.', + }, + }, + }, + delete_entry: { + displayName: 'Delete an Entry', + shortDesc: 'Permanently removes a specific entry', + longDesc: + 'Permanently deletes an entry from the space. If the entry is published, it will be unpublished first. This action is irreversible.', + groups: ['Entries'], + options: { + space_id: { + displayName: 'Space', + shortDesc: 'The Contentful space to use', + longDesc: 'Select the Contentful space containing the entry.', + }, + environment_id: { + displayName: 'Environment', + shortDesc: 'The environment to use (default: master)', + longDesc: + 'Select the environment within the space. Defaults to "master" if not specified.', + }, + content_type_id: { + displayName: 'Content Type', + shortDesc: 'The content type of the entry', + longDesc: 'Select the content type to filter entries by type.', + }, + entry_id: { + displayName: 'Entry', + shortDesc: 'The entry to delete', + longDesc: 'Select or enter the ID of the entry to permanently remove.', + }, + }, + }, + publish_entry: { + displayName: 'Publish an Entry', + shortDesc: 'Changes entry status to "published"', + longDesc: + 'Publishes a draft entry, making it available through the Content Delivery API.', + groups: ['Entries'], + options: { + space_id: { + displayName: 'Space', + shortDesc: 'The Contentful space to use', + longDesc: 'Select the Contentful space containing the entry.', + }, + environment_id: { + displayName: 'Environment', + shortDesc: 'The environment to use (default: master)', + longDesc: + 'Select the environment within the space. Defaults to "master" if not specified.', + }, + content_type_id: { + displayName: 'Content Type', + shortDesc: 'The content type to filter entries', + longDesc: 'Select the content type to filter the entry dropdown.', + }, + entry_id: { + displayName: 'Entry', + shortDesc: 'The entry to publish', + longDesc: 'Select or enter the ID of the entry to publish.', + }, + }, + }, + unpublish_entry: { + displayName: 'Unpublish an Entry', + shortDesc: 'Puts an entry back into "draft" state', + longDesc: + 'Unpublishes an entry, removing it from the Content Delivery API and reverting it to draft state.', + groups: ['Entries'], + options: { + space_id: { + displayName: 'Space', + shortDesc: 'The Contentful space to use', + longDesc: 'Select the Contentful space containing the entry.', + }, + environment_id: { + displayName: 'Environment', + shortDesc: 'The environment to use (default: master)', + longDesc: + 'Select the environment within the space. Defaults to "master" if not specified.', + }, + content_type_id: { + displayName: 'Content Type', + shortDesc: 'The content type to filter entries', + longDesc: 'Select the content type to filter the entry dropdown.', + }, + entry_id: { + displayName: 'Entry', + shortDesc: 'The entry to unpublish', + longDesc: 'Select or enter the ID of the entry to unpublish.', + }, + }, + }, + archive_entry: { + displayName: 'Archive/Unarchive an Entry', + shortDesc: 'Archives/Unarchives an unpublished entry', + longDesc: + 'Archives or unarchives an entry. The entry must be unpublished before it can be archived. Archived entries are hidden from the default entry list.', + groups: ['Entries'], + options: { + space_id: { + displayName: 'Space', + shortDesc: 'The Contentful space to use', + longDesc: 'Select the Contentful space containing the entry.', + }, + environment_id: { + displayName: 'Environment', + shortDesc: 'The environment to use (default: master)', + longDesc: + 'Select the environment within the space. Defaults to "master" if not specified.', + }, + content_type_id: { + displayName: 'Content Type', + shortDesc: 'The content type to filter entries', + longDesc: 'Select the content type to filter the entry dropdown.', + }, + entry_id: { + displayName: 'Entry', + shortDesc: 'The entry to archive or unarchive', + longDesc: 'Select or enter the ID of the entry.', + }, + archive: { + displayName: 'Archive', + shortDesc: 'Set to true to archive, false to unarchive', + longDesc: + 'When enabled, the entry will be archived. When disabled, the entry will be unarchived.', + }, + }, + }, + search_entries: { + displayName: 'Search Entries', + shortDesc: 'Searches for entries', + longDesc: + 'Searches for entries of a specific content type with optional full-text search. Returns a paginated list of entries.', + groups: ['Entries'], + options: { + space_id: { + displayName: 'Space', + shortDesc: 'The Contentful space to search', + longDesc: 'Select the Contentful space to search in.', + }, + environment_id: { + displayName: 'Environment', + shortDesc: 'The environment to use (default: master)', + longDesc: + 'Select the environment within the space. Defaults to "master" if not specified.', + }, + content_type_id: { + displayName: 'Content Type', + shortDesc: 'The content type to search', + longDesc: 'Select the content type to filter results by.', + }, + query: { + displayName: 'Search Query', + shortDesc: 'Full-text search query', + longDesc: 'Optional text to search across all text fields of the entries.', + }, + limit: { + displayName: 'Limit', + shortDesc: 'Maximum number of entries to return', + longDesc: 'The maximum number of entries to return. Default is 100, maximum is 1000.', + }, + skip: { + displayName: 'Skip', + shortDesc: 'Number of entries to skip', + longDesc: 'The number of entries to skip for pagination. Default is 0.', + }, + }, + }, + + // Asset actions + get_asset: { + displayName: 'Get an Asset', + shortDesc: 'Returns attributes of a specific asset', + longDesc: + 'Retrieves a single asset by its ID, returning metadata including title, description, file URL, MIME type, and size.', + groups: ['Assets'], + options: { + space_id: { + displayName: 'Space', + shortDesc: 'The Contentful space to use', + longDesc: 'Select the Contentful space containing the asset.', + }, + environment_id: { + displayName: 'Environment', + shortDesc: 'The environment to use (default: master)', + longDesc: + 'Select the environment within the space. Defaults to "master" if not specified.', + }, + asset_id: { + displayName: 'Asset', + shortDesc: 'The asset to retrieve', + longDesc: 'Select or enter the ID of the asset to retrieve.', + }, + }, + }, + create_asset: { + displayName: 'Create an Asset', + shortDesc: 'Creates a new asset', + longDesc: + 'Creates a new asset from a URL. The asset will be processed (downloaded and stored) automatically. Optionally publishes the asset after creation.', + groups: ['Assets'], + options: { + space_id: { + displayName: 'Space', + shortDesc: 'The Contentful space to use', + longDesc: 'Select the Contentful space where the asset will be created.', + }, + environment_id: { + displayName: 'Environment', + shortDesc: 'The environment to use (default: master)', + longDesc: + 'Select the environment within the space. Defaults to "master" if not specified.', + }, + title: { + displayName: 'Title', + shortDesc: 'The asset title', + longDesc: 'A descriptive title for the asset.', + }, + description: { + displayName: 'Description', + shortDesc: 'The asset description', + longDesc: 'An optional description for the asset.', + }, + file_name: { + displayName: 'File Name', + shortDesc: 'The file name for the asset', + longDesc: 'The file name including extension (e.g., "photo.jpg").', + }, + file_url: { + displayName: 'File URL', + shortDesc: 'The URL of the file to upload', + longDesc: 'The publicly accessible URL from which Contentful will download the file.', + }, + content_type: { + displayName: 'Content Type', + shortDesc: 'The MIME type of the file', + longDesc: 'The MIME type of the file (e.g., "image/jpeg", "application/pdf").', + }, + publish: { + displayName: 'Publish', + shortDesc: 'Whether to publish the asset after creation', + longDesc: + 'If enabled, the asset will be published immediately after processing.', + }, + }, + }, + update_asset: { + displayName: 'Update an Asset', + shortDesc: 'Updates an asset by its ID', + longDesc: 'Updates the title and/or description of an existing asset.', + groups: ['Assets'], + options: { + space_id: { + displayName: 'Space', + shortDesc: 'The Contentful space to use', + longDesc: 'Select the Contentful space containing the asset.', + }, + environment_id: { + displayName: 'Environment', + shortDesc: 'The environment to use (default: master)', + longDesc: + 'Select the environment within the space. Defaults to "master" if not specified.', + }, + asset_id: { + displayName: 'Asset', + shortDesc: 'The asset to update', + longDesc: 'Select or enter the ID of the asset to update.', + }, + title: { + displayName: 'Title', + shortDesc: 'New title for the asset', + longDesc: 'The updated title for the asset.', + }, + description: { + displayName: 'Description', + shortDesc: 'New description for the asset', + longDesc: 'The updated description for the asset.', + }, + }, + }, + delete_asset: { + displayName: 'Delete an Asset', + shortDesc: 'Permanently removes an unpublished asset', + longDesc: + 'Permanently deletes an asset. If the asset is published, it will be unpublished first. This action is irreversible.', + groups: ['Assets'], + options: { + space_id: { + displayName: 'Space', + shortDesc: 'The Contentful space to use', + longDesc: 'Select the Contentful space containing the asset.', + }, + environment_id: { + displayName: 'Environment', + shortDesc: 'The environment to use (default: master)', + longDesc: + 'Select the environment within the space. Defaults to "master" if not specified.', + }, + asset_id: { + displayName: 'Asset', + shortDesc: 'The asset to delete', + longDesc: 'Select or enter the ID of the asset to permanently remove.', + }, + }, + }, + publish_asset: { + displayName: 'Publish an Asset', + shortDesc: 'Changes asset status to "published"', + longDesc: 'Publishes a draft asset, making it available through the Content Delivery API.', + groups: ['Assets'], + options: { + space_id: { + displayName: 'Space', + shortDesc: 'The Contentful space to use', + longDesc: 'Select the Contentful space containing the asset.', + }, + environment_id: { + displayName: 'Environment', + shortDesc: 'The environment to use (default: master)', + longDesc: + 'Select the environment within the space. Defaults to "master" if not specified.', + }, + asset_id: { + displayName: 'Asset', + shortDesc: 'The asset to publish', + longDesc: 'Select or enter the ID of the asset to publish.', + }, + }, + }, + unpublish_asset: { + displayName: 'Unpublish an Asset', + shortDesc: 'Puts an asset back into "draft" state', + longDesc: + 'Unpublishes an asset, removing it from the Content Delivery API and reverting it to draft state.', + groups: ['Assets'], + options: { + space_id: { + displayName: 'Space', + shortDesc: 'The Contentful space to use', + longDesc: 'Select the Contentful space containing the asset.', + }, + environment_id: { + displayName: 'Environment', + shortDesc: 'The environment to use (default: master)', + longDesc: + 'Select the environment within the space. Defaults to "master" if not specified.', + }, + asset_id: { + displayName: 'Asset', + shortDesc: 'The asset to unpublish', + longDesc: 'Select or enter the ID of the asset to unpublish.', + }, + }, + }, + archive_asset: { + displayName: 'Archive/Unarchive an Asset', + shortDesc: 'Archives/Unarchives an unpublished asset', + longDesc: + 'Archives or unarchives an asset. The asset must be unpublished before it can be archived.', + groups: ['Assets'], + options: { + space_id: { + displayName: 'Space', + shortDesc: 'The Contentful space to use', + longDesc: 'Select the Contentful space containing the asset.', + }, + environment_id: { + displayName: 'Environment', + shortDesc: 'The environment to use (default: master)', + longDesc: + 'Select the environment within the space. Defaults to "master" if not specified.', + }, + asset_id: { + displayName: 'Asset', + shortDesc: 'The asset to archive or unarchive', + longDesc: 'Select or enter the ID of the asset.', + }, + archive: { + displayName: 'Archive', + shortDesc: 'Set to true to archive, false to unarchive', + longDesc: + 'When enabled, the asset will be archived. When disabled, the asset will be unarchived.', + }, + }, + }, + search_assets: { + displayName: 'Search Assets', + shortDesc: 'Searches for assets', + longDesc: + 'Searches for assets with optional full-text search and MIME type filtering. Returns a paginated list of assets.', + groups: ['Assets'], + options: { + space_id: { + displayName: 'Space', + shortDesc: 'The Contentful space to search', + longDesc: 'Select the Contentful space to search in.', + }, + environment_id: { + displayName: 'Environment', + shortDesc: 'The environment to use (default: master)', + longDesc: + 'Select the environment within the space. Defaults to "master" if not specified.', + }, + query: { + displayName: 'Search Query', + shortDesc: 'Full-text search query', + longDesc: 'Optional text to search across asset titles and descriptions.', + }, + mime_type_group: { + displayName: 'MIME Type Group', + shortDesc: 'Filter by file type group', + longDesc: + 'Optionally filter assets by MIME type group (e.g., image, video, audio, pdfdocument).', + }, + limit: { + displayName: 'Limit', + shortDesc: 'Maximum number of assets to return', + longDesc: 'The maximum number of assets to return. Default is 100, maximum is 1000.', + }, + skip: { + displayName: 'Skip', + shortDesc: 'Number of assets to skip', + longDesc: 'The number of assets to skip for pagination. Default is 0.', + }, + }, + }, + + // Content Type actions + get_content_type: { + displayName: 'Get a Content Type', + shortDesc: 'Returns attributes of a specific content type', + longDesc: + 'Retrieves a content type by its ID, including its name, description, and field definitions.', + groups: ['Content Types'], + options: { + space_id: { + displayName: 'Space', + shortDesc: 'The Contentful space to use', + longDesc: 'Select the Contentful space containing the content type.', + }, + environment_id: { + displayName: 'Environment', + shortDesc: 'The environment to use (default: master)', + longDesc: + 'Select the environment within the space. Defaults to "master" if not specified.', + }, + content_type_id: { + displayName: 'Content Type', + shortDesc: 'The content type to retrieve', + longDesc: 'Select the content type to retrieve details for.', + }, + }, + }, + create_content_type: { + displayName: 'Create a Content Type', + shortDesc: 'Creates a new content type', + longDesc: + 'Creates a new content type with the specified name, description, and field definitions. The content type will be created in draft state.', + groups: ['Content Types'], + options: { + space_id: { + displayName: 'Space', + shortDesc: 'The Contentful space to use', + longDesc: 'Select the Contentful space where the content type will be created.', + }, + environment_id: { + displayName: 'Environment', + shortDesc: 'The environment to use (default: master)', + longDesc: + 'Select the environment within the space. Defaults to "master" if not specified.', + }, + name: { + displayName: 'Name', + shortDesc: 'The content type name', + longDesc: 'A descriptive name for the content type (e.g., "Blog Post", "Product").', + }, + description: { + displayName: 'Description', + shortDesc: 'The content type description', + longDesc: 'An optional description explaining the purpose of this content type.', + }, + fields: { + displayName: 'Fields', + shortDesc: 'The field definitions for the content type', + longDesc: + 'A list of field definitions. Each field requires an ID, name, and type. Supported types: Symbol, Text, Integer, Number, Date, Boolean, RichText, Link, Array, Object, Location.', + type: { + element_type: { + fields: { + id: { + displayName: 'Field ID', + shortDesc: 'Unique identifier for the field', + longDesc: 'A unique ID for the field (e.g., "heroImage", "publishDate"). Must be unique within the content type.', + }, + name: { + displayName: 'Field Name', + shortDesc: 'Display name for the field', + longDesc: 'A human-readable name for the field (e.g., "Hero Image", "Publish Date").', + }, + type: { + displayName: 'Field Type', + shortDesc: 'Data type (Symbol, Text, Integer, Number, Date, Boolean, RichText, Link, Array, Object, Location)', + longDesc: 'The data type for the field. Supported types: Symbol (short text), Text (long text), Integer, Number, Date, Boolean, RichText, Link, Array, Object, Location.', + }, + required: { + displayName: 'Required', + shortDesc: 'Whether the field is required', + longDesc: 'If enabled, entries must provide a value for this field.', + }, + localized: { + displayName: 'Localized', + shortDesc: 'Whether the field supports localization', + longDesc: 'If enabled, the field can have different values for different locales.', + }, + }, + }, + }, + }, + }, + }, + update_content_type: { + displayName: 'Update a Content Type', + shortDesc: 'Updates a specific content type by its ID', + longDesc: 'Updates the name and/or description of an existing content type.', + groups: ['Content Types'], + options: { + space_id: { + displayName: 'Space', + shortDesc: 'The Contentful space to use', + longDesc: 'Select the Contentful space containing the content type.', + }, + environment_id: { + displayName: 'Environment', + shortDesc: 'The environment to use (default: master)', + longDesc: + 'Select the environment within the space. Defaults to "master" if not specified.', + }, + content_type_id: { + displayName: 'Content Type', + shortDesc: 'The content type to update', + longDesc: 'Select the content type to update.', + }, + name: { + displayName: 'Name', + shortDesc: 'New name for the content type', + longDesc: 'The updated name for the content type.', + }, + description: { + displayName: 'Description', + shortDesc: 'New description for the content type', + longDesc: 'The updated description for the content type.', + }, + }, + }, + delete_content_type: { + displayName: 'Delete a Content Type', + shortDesc: 'Permanently removes a deactivated content type', + longDesc: + 'Permanently deletes a content type. The content type must be deactivated (unpublished) first. This action is irreversible.', + groups: ['Content Types'], + options: { + space_id: { + displayName: 'Space', + shortDesc: 'The Contentful space to use', + longDesc: 'Select the Contentful space containing the content type.', + }, + environment_id: { + displayName: 'Environment', + shortDesc: 'The environment to use (default: master)', + longDesc: + 'Select the environment within the space. Defaults to "master" if not specified.', + }, + content_type_id: { + displayName: 'Content Type', + shortDesc: 'The content type to delete', + longDesc: 'Select the content type to permanently remove.', + }, + }, + }, + activate_content_type: { + displayName: 'Activate a Content Type', + shortDesc: 'Activates a content type by its ID', + longDesc: + 'Publishes (activates) a content type, making it available for creating entries.', + groups: ['Content Types'], + options: { + space_id: { + displayName: 'Space', + shortDesc: 'The Contentful space to use', + longDesc: 'Select the Contentful space containing the content type.', + }, + environment_id: { + displayName: 'Environment', + shortDesc: 'The environment to use (default: master)', + longDesc: + 'Select the environment within the space. Defaults to "master" if not specified.', + }, + content_type_id: { + displayName: 'Content Type', + shortDesc: 'The content type to activate', + longDesc: 'Select the content type to activate (publish).', + }, + }, + }, + deactivate_content_type: { + displayName: 'Deactivate a Content Type', + shortDesc: 'Changes a content type status to "draft"', + longDesc: + 'Unpublishes (deactivates) a content type, reverting it to draft state. No new entries can be created for a deactivated content type.', + groups: ['Content Types'], + options: { + space_id: { + displayName: 'Space', + shortDesc: 'The Contentful space to use', + longDesc: 'Select the Contentful space containing the content type.', + }, + environment_id: { + displayName: 'Environment', + shortDesc: 'The environment to use (default: master)', + longDesc: + 'Select the environment within the space. Defaults to "master" if not specified.', + }, + content_type_id: { + displayName: 'Content Type', + shortDesc: 'The content type to deactivate', + longDesc: 'Select the content type to deactivate (unpublish).', + }, + }, + }, + add_field_to_content_type: { + displayName: 'Add a Field to a Content Type', + shortDesc: 'Adds a new field to a specific content type', + longDesc: + 'Adds a new field definition to an existing content type. The content type will need to be re-activated after adding the field.', + groups: ['Content Types'], + options: { + space_id: { + displayName: 'Space', + shortDesc: 'The Contentful space to use', + longDesc: 'Select the Contentful space containing the content type.', + }, + environment_id: { + displayName: 'Environment', + shortDesc: 'The environment to use (default: master)', + longDesc: + 'Select the environment within the space. Defaults to "master" if not specified.', + }, + content_type_id: { + displayName: 'Content Type', + shortDesc: 'The content type to add the field to', + longDesc: 'Select the content type to modify.', + }, + field_id: { + displayName: 'Field ID', + shortDesc: 'Unique identifier for the new field', + longDesc: + 'A unique ID for the field (e.g., "heroImage", "publishDate"). Must be unique within the content type.', + }, + field_name: { + displayName: 'Field Name', + shortDesc: 'Display name for the new field', + longDesc: 'A human-readable name for the field (e.g., "Hero Image", "Publish Date").', + }, + field_type: { + displayName: 'Field Type', + shortDesc: 'The data type for the field', + longDesc: + 'Select the data type: Symbol (short text), Text (long text), Integer, Number, Date, Boolean, RichText, Link, Array, Object, or Location.', + }, + required: { + displayName: 'Required', + shortDesc: 'Whether the field is required', + longDesc: 'If enabled, entries must provide a value for this field.', + }, + localized: { + displayName: 'Localized', + shortDesc: 'Whether the field supports localization', + longDesc: 'If enabled, the field can have different values for different locales.', + }, + }, + }, + update_field_of_content_type: { + displayName: 'Update a Field of a Content Type', + shortDesc: 'Updates a field inside a specific content type', + longDesc: 'Updates the properties of an existing field in a content type.', + groups: ['Content Types'], + options: { + space_id: { + displayName: 'Space', + shortDesc: 'The Contentful space to use', + longDesc: 'Select the Contentful space containing the content type.', + }, + environment_id: { + displayName: 'Environment', + shortDesc: 'The environment to use (default: master)', + longDesc: + 'Select the environment within the space. Defaults to "master" if not specified.', + }, + content_type_id: { + displayName: 'Content Type', + shortDesc: 'The content type containing the field', + longDesc: 'Select the content type to modify.', + }, + field_id: { + displayName: 'Field', + shortDesc: 'The field to update', + longDesc: 'Select the field to update.', + }, + field_name: { + displayName: 'Field Name', + shortDesc: 'New display name for the field', + longDesc: 'The updated display name for the field.', + }, + required: { + displayName: 'Required', + shortDesc: 'Whether the field is required', + longDesc: 'Update whether entries must provide a value for this field.', + }, + localized: { + displayName: 'Localized', + shortDesc: 'Whether the field supports localization', + longDesc: 'Update whether the field can have different values for different locales.', + }, + }, + }, + delete_field_from_content_type: { + displayName: 'Delete a Field from a Content Type', + shortDesc: 'Removes a field from a specific content type', + longDesc: + 'Removes a field from a content type. The field is first marked as omitted, then removed entirely. Existing entry data for this field will be lost.', + groups: ['Content Types'], + options: { + space_id: { + displayName: 'Space', + shortDesc: 'The Contentful space to use', + longDesc: 'Select the Contentful space containing the content type.', + }, + environment_id: { + displayName: 'Environment', + shortDesc: 'The environment to use (default: master)', + longDesc: + 'Select the environment within the space. Defaults to "master" if not specified.', + }, + content_type_id: { + displayName: 'Content Type', + shortDesc: 'The content type containing the field', + longDesc: 'Select the content type to modify.', + }, + field_id: { + displayName: 'Field', + shortDesc: 'The field to remove', + longDesc: 'Select the field to permanently remove from the content type.', + }, + }, + }, + search_content_types: { + displayName: 'Search Content Types', + shortDesc: 'Searches for content types', + longDesc: + 'Searches for content types with optional text filtering. Returns a paginated list of content types with their field definitions.', + groups: ['Content Types'], + options: { + space_id: { + displayName: 'Space', + shortDesc: 'The Contentful space to search', + longDesc: 'Select the Contentful space to search in.', + }, + environment_id: { + displayName: 'Environment', + shortDesc: 'The environment to use (default: master)', + longDesc: + 'Select the environment within the space. Defaults to "master" if not specified.', + }, + query: { + displayName: 'Search Query', + shortDesc: 'Text search query', + longDesc: 'Optional text to search across content type names and descriptions.', + }, + limit: { + displayName: 'Limit', + shortDesc: 'Maximum number of results to return', + longDesc: 'The maximum number of content types to return. Default is 100.', + }, + skip: { + displayName: 'Skip', + shortDesc: 'Number of results to skip', + longDesc: 'The number of content types to skip for pagination. Default is 0.', + }, + }, + }, + }, + triggers: { + watch_event: { + displayName: 'Watch an Event', + shortDesc: 'Triggers when a new event occurs', + longDesc: + 'Creates a webhook in Contentful that triggers when selected events occur. Supports entry, asset, and content type events such as creation, updates, publishing, and deletion.', + groups: ['Events'], + options: { + space_id: { + displayName: 'Space', + shortDesc: 'The Contentful space to monitor', + longDesc: 'Select the Contentful space to monitor for events.', + }, + environment_id: { + displayName: 'Environment', + shortDesc: 'The environment to use (default: master)', + longDesc: + 'Select the environment within the space. Defaults to "master" if not specified.', + }, + event_types: { + displayName: 'Event Types', + shortDesc: 'The types of events to watch for', + longDesc: + 'Select one or more event types to trigger on. Events include entry, asset, and content type lifecycle events.', + }, + }, + }, + }, +}; + +export default ContentfulAppEn; diff --git a/ts/src/i18n/en/index.ts b/ts/src/i18n/en/index.ts index e15fcb94..73b58089 100644 --- a/ts/src/i18n/en/index.ts +++ b/ts/src/i18n/en/index.ts @@ -25,6 +25,7 @@ import Canva from './apps/Canva'; import Claude from './apps/Claude'; import ClickUp from './apps/ClickUp'; import Confluence from './apps/Confluence'; +import Contentful from './apps/Contentful'; import CopperCrm from './apps/CopperCrm'; import Craft from './apps/Craft'; import DocusignESignature from './apps/DocusignESignature'; @@ -181,6 +182,7 @@ const en = { Shopify, Zoom, Confluence, + Contentful, Bitbucket, FacebookPages, Paddle, diff --git a/ts/src/i18n/i18n-types.ts b/ts/src/i18n/i18n-types.ts index 2798973f..c7178fee 100644 --- a/ts/src/i18n/i18n-types.ts +++ b/ts/src/i18n/i18n-types.ts @@ -106374,4430 +106374,3699 @@ type RootTranslation = { } } } - Bitbucket: { + Contentful: { /** - * B​i​t​b​u​c​k​e​t + * C​o​n​t​e​n​t​f​u​l */ displayName: string groups: { /** - * V​e​r​s​i​o​n​ ​C​o​n​t​r​o​l​ ​&​ ​C​o​d​e​ ​R​e​p​o​s​i​t​o​r​i​e​s + * D​o​c​u​m​e​n​t​s​ ​&​ ​D​o​c​u​m​e​n​t​a​t​i​o​n */ '0': string } /** - * B​i​t​b​u​c​k​e​t​ ​i​s​ ​a​ ​G​i​t​ ​r​e​p​o​s​i​t​o​r​y​ ​m​a​n​a​g​e​m​e​n​t​ ​s​o​l​u​t​i​o​n​ ​d​e​s​i​g​n​e​d​ ​f​o​r​ ​p​r​o​f​e​s​s​i​o​n​a​l​ ​t​e​a​m​s​. + * C​o​n​n​e​c​t​ ​t​o​ ​C​o​n​t​e​n​t​f​u​l​ ​t​o​ ​m​a​n​a​g​e​ ​y​o​u​r​ ​c​o​n​t​e​n​t​,​ ​a​s​s​e​t​s​,​ ​a​n​d​ ​c​o​n​t​e​n​t​ ​m​o​d​e​l​s */ shortDesc: string /** - * B​i​t​b​u​c​k​e​t​ ​i​s​ ​a​ ​G​i​t​ ​r​e​p​o​s​i​t​o​r​y​ ​m​a​n​a​g​e​m​e​n​t​ ​s​o​l​u​t​i​o​n​ ​d​e​s​i​g​n​e​d​ ​f​o​r​ ​p​r​o​f​e​s​s​i​o​n​a​l​ ​t​e​a​m​s​.​ ​I​t​ ​p​r​o​v​i​d​e​s​ ​f​e​a​t​u​r​e​s​ ​s​u​c​h​ ​a​s​ ​p​u​l​l​ ​r​e​q​u​e​s​t​s​,​ ​c​o​d​e​ ​r​e​v​i​e​w​s​,​ ​a​n​d​ ​c​o​n​t​i​n​u​o​u​s​ ​i​n​t​e​g​r​a​t​i​o​n​ ​t​o​ ​h​e​l​p​ ​t​e​a​m​s​ ​c​o​l​l​a​b​o​r​a​t​e​ ​o​n​ ​c​o​d​e​ ​e​f​f​e​c​t​i​v​e​l​y​. + * I​n​t​e​g​r​a​t​e​ ​w​i​t​h​ ​C​o​n​t​e​n​t​f​u​l​ ​t​o​ ​a​u​t​o​m​a​t​e​ ​c​o​n​t​e​n​t​ ​m​a​n​a​g​e​m​e​n​t​ ​w​o​r​k​f​l​o​w​s​.​ ​C​r​e​a​t​e​,​ ​u​p​d​a​t​e​,​ ​p​u​b​l​i​s​h​,​ ​a​n​d​ ​m​a​n​a​g​e​ ​e​n​t​r​i​e​s​,​ ​a​s​s​e​t​s​,​ ​a​n​d​ ​c​o​n​t​e​n​t​ ​t​y​p​e​s​.​ ​M​o​n​i​t​o​r​ ​c​o​n​t​e​n​t​ ​c​h​a​n​g​e​s​ ​w​i​t​h​ ​r​e​a​l​-​t​i​m​e​ ​w​e​b​h​o​o​k​ ​t​r​i​g​g​e​r​s​.​ ​T​h​i​s​ ​i​n​t​e​g​r​a​t​i​o​n​ ​p​r​o​v​i​d​e​s​ ​f​u​l​l​ ​a​c​c​e​s​s​ ​t​o​ ​t​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​C​o​n​t​e​n​t​ ​M​a​n​a​g​e​m​e​n​t​ ​A​P​I​ ​f​o​r​ ​c​o​m​p​r​e​h​e​n​s​i​v​e​ ​h​e​a​d​l​e​s​s​ ​C​M​S​ ​a​u​t​o​m​a​t​i​o​n​. */ longDesc: string - triggers: { - new_commit: { + connectionMessage: { + /** + * C​o​n​n​e​c​t​ ​t​o​ ​C​o​n​t​e​n​t​f​u​l + */ + title: string + /** + * T​o​ ​c​o​n​n​e​c​t​ ​t​o​ ​C​o​n​t​e​n​t​f​u​l​,​ ​y​o​u​ ​w​i​l​l​ ​n​e​e​d​ ​a​ ​*​*​C​o​n​t​e​n​t​ ​M​a​n​a​g​e​m​e​n​t​ ​A​P​I​ ​(​C​M​A​)​ ​T​o​k​e​n​*​*​.​ + ​ + ​#​#​ ​G​e​t​t​i​n​g​ ​Y​o​u​r​ ​C​M​A​ ​T​o​k​e​n​ + ​ + ​1​.​ ​L​o​g​ ​i​n​ ​t​o​ ​y​o​u​r​ ​[​C​o​n​t​e​n​t​f​u​l​]​(​h​t​t​p​s​:​/​/​a​p​p​.​c​o​n​t​e​n​t​f​u​l​.​c​o​m​)​ ​a​c​c​o​u​n​t​ + ​2​.​ ​G​o​ ​t​o​ ​*​*​S​e​t​t​i​n​g​s​*​*​ ​(​g​e​a​r​ ​i​c​o​n​ ​i​n​ ​t​h​e​ ​t​o​p​ ​n​a​v​i​g​a​t​i​o​n​)​ + ​3​.​ ​S​e​l​e​c​t​ ​*​*​C​M​A​ ​t​o​k​e​n​s​*​*​ ​f​r​o​m​ ​t​h​e​ ​l​e​f​t​ ​s​i​d​e​b​a​r​ + ​4​.​ ​C​l​i​c​k​ ​*​*​C​r​e​a​t​e​ ​p​e​r​s​o​n​a​l​ ​a​c​c​e​s​s​ ​t​o​k​e​n​*​*​ + ​5​.​ ​G​i​v​e​ ​y​o​u​r​ ​t​o​k​e​n​ ​a​ ​d​e​s​c​r​i​p​t​i​v​e​ ​n​a​m​e​ ​(​e​.​g​.​,​ ​"​Q​o​r​e​ ​I​n​t​e​g​r​a​t​i​o​n​"​)​ + ​6​.​ ​C​l​i​c​k​ ​*​*​G​e​n​e​r​a​t​e​*​*​ ​a​n​d​ ​c​o​p​y​ ​t​h​e​ ​g​e​n​e​r​a​t​e​d​ ​t​o​k​e​n​ + ​ + ​*​*​I​m​p​o​r​t​a​n​t​:​*​*​ ​T​h​e​ ​t​o​k​e​n​ ​i​s​ ​o​n​l​y​ ​s​h​o​w​n​ ​o​n​c​e​.​ ​M​a​k​e​ ​s​u​r​e​ ​t​o​ ​c​o​p​y​ ​a​n​d​ ​s​a​v​e​ ​i​t​ ​s​e​c​u​r​e​l​y​.​ + ​ + ​#​#​ ​P​e​r​m​i​s​s​i​o​n​s​ + ​ + ​T​h​e​ ​C​M​A​ ​t​o​k​e​n​ ​i​n​h​e​r​i​t​s​ ​t​h​e​ ​p​e​r​m​i​s​s​i​o​n​s​ ​o​f​ ​t​h​e​ ​u​s​e​r​ ​w​h​o​ ​c​r​e​a​t​e​d​ ​i​t​.​ ​E​n​s​u​r​e​ ​t​h​e​ ​u​s​e​r​ ​h​a​s​ ​a​p​p​r​o​p​r​i​a​t​e​ ​a​c​c​e​s​s​ ​t​o​ ​t​h​e​ ​s​p​a​c​e​s​ ​a​n​d​ ​e​n​v​i​r​o​n​m​e​n​t​s​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​a​n​a​g​e​. + */ + content: string + } + actions: { + get_entry: { /** - * N​e​w​ ​C​o​m​m​i​t + * G​e​t​ ​a​n​ ​E​n​t​r​y */ displayName: string /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​c​o​m​m​i​t​ ​i​s​ ​p​u​s​h​e​d​ ​t​o​ ​a​ ​r​e​p​o​s​i​t​o​r​y​. + * R​e​t​u​r​n​s​ ​a​t​t​r​i​b​u​t​e​s​ ​o​f​ ​a​ ​s​p​e​c​i​f​i​c​ ​e​n​t​r​y */ shortDesc: string /** - * M​o​n​i​t​o​r​s​ ​a​ ​B​i​t​b​u​c​k​e​t​ ​r​e​p​o​s​i​t​o​r​y​ ​f​o​r​ ​n​e​w​ ​c​o​m​m​i​t​s​ ​a​n​d​ ​t​r​i​g​g​e​r​s​ ​w​h​e​n​ ​c​o​m​m​i​t​s​ ​a​r​e​ ​p​u​s​h​e​d​ ​t​o​ ​a​n​y​ ​b​r​a​n​c​h​.​ ​P​r​o​v​i​d​e​s​ ​d​e​t​a​i​l​e​d​ ​c​o​m​m​i​t​ ​i​n​f​o​r​m​a​t​i​o​n​ ​i​n​c​l​u​d​i​n​g​ ​a​u​t​h​o​r​,​ ​m​e​s​s​a​g​e​,​ ​h​a​s​h​,​ ​a​n​d​ ​r​e​p​o​s​i​t​o​r​y​ ​d​e​t​a​i​l​s​. + * R​e​t​r​i​e​v​e​s​ ​a​ ​s​i​n​g​l​e​ ​e​n​t​r​y​ ​b​y​ ​i​t​s​ ​I​D​ ​f​r​o​m​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​s​p​a​c​e​ ​a​n​d​ ​e​n​v​i​r​o​n​m​e​n​t​.​ ​R​e​t​u​r​n​s​ ​a​l​l​ ​e​n​t​r​y​ ​f​i​e​l​d​s​ ​w​i​t​h​ ​t​h​e​i​r​ ​v​a​l​u​e​s​ ​i​n​ ​t​h​e​ ​d​e​f​a​u​l​t​ ​l​o​c​a​l​e​. */ longDesc: string + groups: { + /** + * E​n​t​r​i​e​s + */ + '0': string + } options: { - workspace: { + space_id: { /** - * W​o​r​k​s​p​a​c​e + * S​p​a​c​e */ displayName: string /** - * T​h​e​ ​B​i​t​b​u​c​k​e​t​ ​w​o​r​k​s​p​a​c​e + * T​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​t​o​ ​u​s​e */ shortDesc: string /** - * T​h​e​ ​B​i​t​b​u​c​k​e​t​ ​w​o​r​k​s​p​a​c​e​ ​(​o​r​g​a​n​i​z​a​t​i​o​n​ ​o​r​ ​u​s​e​r​ ​a​c​c​o​u​n​t​)​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​r​e​p​o​s​i​t​o​r​y​ ​t​o​ ​m​o​n​i​t​o​r​. + * S​e​l​e​c​t​ ​t​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​e​n​t​r​y​. */ longDesc: string } - repo_slug: { + environment_id: { /** - * R​e​p​o​s​i​t​o​r​y + * E​n​v​i​r​o​n​m​e​n​t */ displayName: string /** - * T​h​e​ ​r​e​p​o​s​i​t​o​r​y​ ​t​o​ ​m​o​n​i​t​o​r + * T​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​t​o​ ​u​s​e​ ​(​d​e​f​a​u​l​t​:​ ​m​a​s​t​e​r​) */ shortDesc: string /** - * T​h​e​ ​r​e​p​o​s​i​t​o​r​y​ ​s​l​u​g​ ​(​n​a​m​e​)​ ​o​f​ ​t​h​e​ ​B​i​t​b​u​c​k​e​t​ ​r​e​p​o​s​i​t​o​r​y​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​c​o​m​m​i​t​s​. + * S​e​l​e​c​t​ ​t​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​a​c​e​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​"​m​a​s​t​e​r​"​ ​i​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​. */ longDesc: string } - } - } - new_deployment: { - /** - * N​e​w​ ​D​e​p​l​o​y​m​e​n​t - */ - displayName: string - /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​d​e​p​l​o​y​m​e​n​t​ ​i​s​ ​c​r​e​a​t​e​d​ ​f​o​r​ ​a​ ​r​e​p​o​s​i​t​o​r​y​. - */ - shortDesc: string - /** - * M​o​n​i​t​o​r​s​ ​a​ ​B​i​t​b​u​c​k​e​t​ ​r​e​p​o​s​i​t​o​r​y​ ​f​o​r​ ​n​e​w​ ​d​e​p​l​o​y​m​e​n​t​s​ ​a​n​d​ ​t​r​i​g​g​e​r​s​ ​w​h​e​n​ ​d​e​p​l​o​y​m​e​n​t​s​ ​a​r​e​ ​c​r​e​a​t​e​d​ ​o​r​ ​u​p​d​a​t​e​d​.​ ​P​r​o​v​i​d​e​s​ ​c​o​m​p​r​e​h​e​n​s​i​v​e​ ​d​e​p​l​o​y​m​e​n​t​ ​i​n​f​o​r​m​a​t​i​o​n​ ​i​n​c​l​u​d​i​n​g​ ​e​n​v​i​r​o​n​m​e​n​t​,​ ​s​t​a​t​e​,​ ​c​o​m​m​i​t​ ​d​e​t​a​i​l​s​,​ ​a​n​d​ ​d​e​p​l​o​y​m​e​n​t​ ​s​t​e​p​s​. - */ - longDesc: string - options: { - workspace: { + content_type_id: { /** - * W​o​r​k​s​p​a​c​e + * C​o​n​t​e​n​t​ ​T​y​p​e */ displayName: string /** - * T​h​e​ ​B​i​t​b​u​c​k​e​t​ ​w​o​r​k​s​p​a​c​e + * T​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​o​f​ ​t​h​e​ ​e​n​t​r​y */ shortDesc: string /** - * T​h​e​ ​B​i​t​b​u​c​k​e​t​ ​w​o​r​k​s​p​a​c​e​ ​(​o​r​g​a​n​i​z​a​t​i​o​n​ ​o​r​ ​u​s​e​r​ ​a​c​c​o​u​n​t​)​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​r​e​p​o​s​i​t​o​r​y​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​d​e​p​l​o​y​m​e​n​t​s​. + * S​e​l​e​c​t​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​t​o​ ​f​i​l​t​e​r​ ​e​n​t​r​i​e​s​ ​b​y​ ​t​y​p​e​. */ longDesc: string } - repo_slug: { + entry_id: { /** - * R​e​p​o​s​i​t​o​r​y + * E​n​t​r​y */ displayName: string /** - * T​h​e​ ​r​e​p​o​s​i​t​o​r​y​ ​t​o​ ​m​o​n​i​t​o​r + * T​h​e​ ​e​n​t​r​y​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * T​h​e​ ​r​e​p​o​s​i​t​o​r​y​ ​s​l​u​g​ ​(​n​a​m​e​)​ ​o​f​ ​t​h​e​ ​B​i​t​b​u​c​k​e​t​ ​r​e​p​o​s​i​t​o​r​y​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​d​e​p​l​o​y​m​e​n​t​s​. + * S​e​l​e​c​t​ ​o​r​ ​e​n​t​e​r​ ​t​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​e​n​t​r​y​ ​t​o​ ​r​e​t​r​i​e​v​e​. */ longDesc: string } } } - new_pull_request: { + get_entry_with_replacement: { /** - * N​e​w​ ​P​u​l​l​ ​R​e​q​u​e​s​t + * G​e​t​ ​a​n​ ​E​n​t​r​y​ ​w​i​t​h​ ​R​e​p​l​a​c​e​m​e​n​t */ displayName: string /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​p​u​l​l​ ​r​e​q​u​e​s​t​ ​i​s​ ​c​r​e​a​t​e​d​ ​o​r​ ​u​p​d​a​t​e​d​. + * R​e​p​l​a​c​e​s​ ​t​e​x​t​ ​f​i​e​l​d​s​ ​w​i​t​h​ ​n​e​w​ ​v​a​l​u​e​s​ ​u​s​i​n​g​ ​s​p​e​c​i​f​i​c​ ​t​a​g​s​;​ ​r​e​t​u​r​n​s​ ​n​e​w​ ​v​a​l​u​e​s​ ​a​s​ ​o​u​t​p​u​t */ shortDesc: string /** - * M​o​n​i​t​o​r​s​ ​a​ ​B​i​t​b​u​c​k​e​t​ ​r​e​p​o​s​i​t​o​r​y​ ​f​o​r​ ​n​e​w​ ​p​u​l​l​ ​r​e​q​u​e​s​t​s​ ​a​n​d​ ​t​r​i​g​g​e​r​s​ ​w​h​e​n​ ​p​u​l​l​ ​r​e​q​u​e​s​t​s​ ​a​r​e​ ​c​r​e​a​t​e​d​ ​o​r​ ​t​h​e​i​r​ ​s​t​a​t​e​ ​c​h​a​n​g​e​s​.​ ​S​u​p​p​o​r​t​s​ ​f​i​l​t​e​r​i​n​g​ ​b​y​ ​p​u​l​l​ ​r​e​q​u​e​s​t​ ​s​t​a​t​e​ ​a​n​d​ ​p​r​o​v​i​d​e​s​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​t​h​e​ ​p​u​l​l​ ​r​e​q​u​e​s​t​,​ ​r​e​v​i​e​w​e​r​s​,​ ​a​n​d​ ​c​h​a​n​g​e​s​. + * R​e​t​r​i​e​v​e​s​ ​a​n​ ​e​n​t​r​y​ ​a​n​d​ ​p​e​r​f​o​r​m​s​ ​t​e​x​t​ ​r​e​p​l​a​c​e​m​e​n​t​s​ ​o​n​ ​a​l​l​ ​s​t​r​i​n​g​ ​f​i​e​l​d​s​.​ ​F​o​r​ ​e​a​c​h​ ​r​e​p​l​a​c​e​m​e​n​t​ ​p​a​i​r​,​ ​a​l​l​ ​o​c​c​u​r​r​e​n​c​e​s​ ​o​f​ ​t​h​e​ ​t​a​g​ ​a​r​e​ ​r​e​p​l​a​c​e​d​ ​w​i​t​h​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​v​a​l​u​e​.​ ​U​s​e​f​u​l​ ​f​o​r​ ​t​e​m​p​l​a​t​e​-​b​a​s​e​d​ ​c​o​n​t​e​n​t​. */ longDesc: string + groups: { + /** + * E​n​t​r​i​e​s + */ + '0': string + } options: { - workspace: { + space_id: { /** - * W​o​r​k​s​p​a​c​e + * S​p​a​c​e */ displayName: string /** - * T​h​e​ ​B​i​t​b​u​c​k​e​t​ ​w​o​r​k​s​p​a​c​e + * T​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​t​o​ ​u​s​e */ shortDesc: string /** - * T​h​e​ ​B​i​t​b​u​c​k​e​t​ ​w​o​r​k​s​p​a​c​e​ ​(​o​r​g​a​n​i​z​a​t​i​o​n​ ​o​r​ ​u​s​e​r​ ​a​c​c​o​u​n​t​)​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​r​e​p​o​s​i​t​o​r​y​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​p​u​l​l​ ​r​e​q​u​e​s​t​s​. + * S​e​l​e​c​t​ ​t​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​e​n​t​r​y​. */ longDesc: string } - repo_slug: { + environment_id: { /** - * R​e​p​o​s​i​t​o​r​y + * E​n​v​i​r​o​n​m​e​n​t */ displayName: string /** - * T​h​e​ ​r​e​p​o​s​i​t​o​r​y​ ​t​o​ ​m​o​n​i​t​o​r + * T​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​t​o​ ​u​s​e​ ​(​d​e​f​a​u​l​t​:​ ​m​a​s​t​e​r​) */ shortDesc: string /** - * T​h​e​ ​r​e​p​o​s​i​t​o​r​y​ ​s​l​u​g​ ​(​n​a​m​e​)​ ​o​f​ ​t​h​e​ ​B​i​t​b​u​c​k​e​t​ ​r​e​p​o​s​i​t​o​r​y​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​p​u​l​l​ ​r​e​q​u​e​s​t​s​. + * S​e​l​e​c​t​ ​t​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​a​c​e​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​"​m​a​s​t​e​r​"​ ​i​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​. */ longDesc: string } - state: { + content_type_id: { /** - * P​u​l​l​ ​R​e​q​u​e​s​t​ ​S​t​a​t​e + * C​o​n​t​e​n​t​ ​T​y​p​e */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​p​u​l​l​ ​r​e​q​u​e​s​t​ ​s​t​a​t​e + * T​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​o​f​ ​t​h​e​ ​e​n​t​r​y */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​f​i​l​t​e​r​ ​t​o​ ​m​o​n​i​t​o​r​ ​o​n​l​y​ ​p​u​l​l​ ​r​e​q​u​e​s​t​s​ ​i​n​ ​a​ ​s​p​e​c​i​f​i​c​ ​s​t​a​t​e​ ​(​O​p​e​n​,​ ​M​e​r​g​e​d​,​ ​D​e​c​l​i​n​e​d​,​ ​o​r​ ​S​u​p​e​r​s​e​d​e​d​)​.​ ​I​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​,​ ​a​l​l​ ​p​u​l​l​ ​r​e​q​u​e​s​t​s​ ​w​i​l​l​ ​b​e​ ​m​o​n​i​t​o​r​e​d​. + * S​e​l​e​c​t​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​t​o​ ​f​i​l​t​e​r​ ​e​n​t​r​i​e​s​ ​b​y​ ​t​y​p​e​. + */ + longDesc: string + } + entry_id: { + /** + * E​n​t​r​y + */ + displayName: string + /** + * T​h​e​ ​e​n​t​r​y​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​a​n​d​ ​a​p​p​l​y​ ​r​e​p​l​a​c​e​m​e​n​t​s​ ​t​o + */ + shortDesc: string + /** + * S​e​l​e​c​t​ ​o​r​ ​e​n​t​e​r​ ​t​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​e​n​t​r​y​ ​t​o​ ​r​e​t​r​i​e​v​e​. + */ + longDesc: string + } + replacements: { + /** + * R​e​p​l​a​c​e​m​e​n​t​s + */ + displayName: string + /** + * L​i​s​t​ ​o​f​ ​t​a​g​/​v​a​l​u​e​ ​p​a​i​r​s​ ​f​o​r​ ​t​e​x​t​ ​r​e​p​l​a​c​e​m​e​n​t + */ + shortDesc: string + /** + * P​r​o​v​i​d​e​ ​a​ ​l​i​s​t​ ​o​f​ ​r​e​p​l​a​c​e​m​e​n​t​ ​p​a​i​r​s​.​ ​E​a​c​h​ ​p​a​i​r​ ​h​a​s​ ​a​ ​"​t​a​g​"​ ​(​p​l​a​c​e​h​o​l​d​e​r​ ​t​o​ ​f​i​n​d​)​ ​a​n​d​ ​a​ ​"​v​a​l​u​e​"​ ​(​t​e​x​t​ ​t​o​ ​r​e​p​l​a​c​e​ ​i​t​ ​w​i​t​h​)​.​ ​A​l​l​ ​s​t​r​i​n​g​ ​f​i​e​l​d​s​ ​i​n​ ​t​h​e​ ​e​n​t​r​y​ ​w​i​l​l​ ​b​e​ ​p​r​o​c​e​s​s​e​d​. */ longDesc: string + type: { + element_type: { + fields: { + tag: { + /** + * T​a​g + */ + displayName: string + /** + * T​h​e​ ​t​a​g​/​p​l​a​c​e​h​o​l​d​e​r​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r​ ​i​n​ ​t​e​x​t​ ​f​i​e​l​d​s + */ + shortDesc: string + /** + * T​h​e​ ​t​a​g​ ​o​r​ ​p​l​a​c​e​h​o​l​d​e​r​ ​t​e​x​t​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r​ ​w​i​t​h​i​n​ ​a​l​l​ ​s​t​r​i​n​g​ ​f​i​e​l​d​s​ ​o​f​ ​t​h​e​ ​e​n​t​r​y​. + */ + longDesc: string + } + value: { + /** + * V​a​l​u​e + */ + displayName: string + /** + * T​h​e​ ​r​e​p​l​a​c​e​m​e​n​t​ ​v​a​l​u​e + */ + shortDesc: string + /** + * T​h​e​ ​t​e​x​t​ ​t​h​a​t​ ​w​i​l​l​ ​r​e​p​l​a​c​e​ ​a​l​l​ ​o​c​c​u​r​r​e​n​c​e​s​ ​o​f​ ​t​h​e​ ​t​a​g​. + */ + longDesc: string + } + } + } + } } } } - } - } - FacebookPages: { - /** - * F​a​c​e​b​o​o​k​ ​P​a​g​e​s - */ - displayName: string - groups: { - /** - * S​o​c​i​a​l​ ​M​e​d​i​a​ ​M​a​n​a​g​e​m​e​n​t - */ - '0': string - } - /** - * M​a​n​a​g​e​ ​y​o​u​r​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​s​ ​a​n​d​ ​p​o​s​t​s - */ - shortDesc: string - /** - * C​o​n​n​e​c​t​ ​y​o​u​r​ ​F​a​c​e​b​o​o​k​ ​a​c​c​o​u​n​t​ ​t​o​ ​m​a​n​a​g​e​ ​y​o​u​r​ ​p​a​g​e​s​,​ ​p​o​s​t​s​,​ ​a​n​d​ ​c​o​m​m​e​n​t​s​ ​d​i​r​e​c​t​l​y​ ​f​r​o​m​ ​Q​o​r​e​.​ ​Y​o​u​ ​c​a​n​ ​c​r​e​a​t​e​,​ ​r​e​a​d​,​ ​u​p​d​a​t​e​,​ ​a​n​d​ ​d​e​l​e​t​e​ ​p​o​s​t​s​ ​o​n​ ​y​o​u​r​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​s​,​ ​a​s​ ​w​e​l​l​ ​a​s​ ​m​a​n​a​g​e​ ​c​o​m​m​e​n​t​s​ ​a​n​d​ ​r​e​a​c​t​i​o​n​s​. - */ - longDesc: string - actions: { - create_page_post: { + create_entry: { /** - * C​r​e​a​t​e​ ​P​a​g​e​ ​P​o​s​t + * C​r​e​a​t​e​ ​a​n​ ​E​n​t​r​y */ displayName: string /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​p​o​s​t​ ​o​n​ ​a​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e + * C​r​e​a​t​e​s​ ​a​ ​n​e​w​ ​e​n​t​r​y */ shortDesc: string /** - * C​r​e​a​t​e​s​ ​a​ ​n​e​w​ ​p​o​s​t​ ​o​n​ ​a​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​w​i​t​h​ ​s​u​p​p​o​r​t​ ​f​o​r​ ​t​e​x​t​,​ ​l​i​n​k​s​,​ ​p​h​o​t​o​s​,​ ​s​c​h​e​d​u​l​i​n​g​,​ ​a​n​d​ ​v​i​s​i​b​i​l​i​t​y​ ​s​e​t​t​i​n​g​s​.​ ​C​a​n​ ​c​r​e​a​t​e​ ​b​o​t​h​ ​i​m​m​e​d​i​a​t​e​ ​a​n​d​ ​s​c​h​e​d​u​l​e​d​ ​p​o​s​t​s​. + * C​r​e​a​t​e​s​ ​a​ ​n​e​w​ ​e​n​t​r​y​ ​o​f​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​i​n​ ​t​h​e​ ​g​i​v​e​n​ ​s​p​a​c​e​ ​a​n​d​ ​e​n​v​i​r​o​n​m​e​n​t​.​ ​O​p​t​i​o​n​a​l​l​y​ ​p​u​b​l​i​s​h​e​s​ ​t​h​e​ ​e​n​t​r​y​ ​i​m​m​e​d​i​a​t​e​l​y​ ​a​f​t​e​r​ ​c​r​e​a​t​i​o​n​. */ longDesc: string + groups: { + /** + * E​n​t​r​i​e​s + */ + '0': string + } options: { - page_id: { + space_id: { /** - * P​a​g​e​ ​I​D + * S​p​a​c​e */ displayName: string /** - * T​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​t​o​ ​p​o​s​t​ ​t​o + * T​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​t​o​ ​u​s​e */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​w​h​e​r​e​ ​t​h​e​ ​p​o​s​t​ ​w​i​l​l​ ​b​e​ ​c​r​e​a​t​e​d​. + * S​e​l​e​c​t​ ​t​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​w​h​e​r​e​ ​t​h​e​ ​e​n​t​r​y​ ​w​i​l​l​ ​b​e​ ​c​r​e​a​t​e​d​. */ longDesc: string } - message: { + environment_id: { /** - * M​e​s​s​a​g​e + * E​n​v​i​r​o​n​m​e​n​t */ displayName: string /** - * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​t​h​e​ ​p​o​s​t + * T​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​t​o​ ​u​s​e​ ​(​d​e​f​a​u​l​t​:​ ​m​a​s​t​e​r​) */ shortDesc: string /** - * T​h​e​ ​m​a​i​n​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​f​o​r​ ​t​h​e​ ​p​o​s​t​.​ ​O​p​t​i​o​n​a​l​ ​i​f​ ​l​i​n​k​ ​o​r​ ​p​h​o​t​o​s​ ​a​r​e​ ​p​r​o​v​i​d​e​d​. + * S​e​l​e​c​t​ ​t​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​a​c​e​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​"​m​a​s​t​e​r​"​ ​i​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​. */ longDesc: string } - link: { + content_type_id: { /** - * L​i​n​k + * C​o​n​t​e​n​t​ ​T​y​p​e */ displayName: string /** - * U​R​L​ ​t​o​ ​s​h​a​r​e​ ​i​n​ ​t​h​e​ ​p​o​s​t + * T​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​f​o​r​ ​t​h​e​ ​n​e​w​ ​e​n​t​r​y */ shortDesc: string /** - * A​ ​U​R​L​ ​t​o​ ​b​e​ ​s​h​a​r​e​d​ ​i​n​ ​t​h​e​ ​p​o​s​t​.​ ​F​a​c​e​b​o​o​k​ ​w​i​l​l​ ​a​u​t​o​m​a​t​i​c​a​l​l​y​ ​g​e​n​e​r​a​t​e​ ​a​ ​p​r​e​v​i​e​w​. + * S​e​l​e​c​t​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​t​h​a​t​ ​d​e​f​i​n​e​s​ ​t​h​e​ ​s​c​h​e​m​a​ ​f​o​r​ ​t​h​e​ ​n​e​w​ ​e​n​t​r​y​. */ longDesc: string } - photo_urls: { + fields: { /** - * P​h​o​t​o​ ​U​R​L​s + * F​i​e​l​d​s */ displayName: string /** - * L​i​s​t​ ​o​f​ ​p​h​o​t​o​ ​U​R​L​s​ ​t​o​ ​a​t​t​a​c​h + * T​h​e​ ​f​i​e​l​d​ ​v​a​l​u​e​s​ ​f​o​r​ ​t​h​e​ ​n​e​w​ ​e​n​t​r​y */ shortDesc: string /** - * A​ ​l​i​s​t​ ​o​f​ ​i​m​a​g​e​ ​U​R​L​s​ ​t​o​ ​b​e​ ​a​t​t​a​c​h​e​d​ ​t​o​ ​t​h​e​ ​p​o​s​t​.​ ​I​m​a​g​e​s​ ​w​i​l​l​ ​b​e​ ​u​p​l​o​a​d​e​d​ ​t​o​ ​F​a​c​e​b​o​o​k​. + * P​r​o​v​i​d​e​ ​t​h​e​ ​f​i​e​l​d​ ​v​a​l​u​e​s​ ​a​s​ ​a​ ​k​e​y​-​v​a​l​u​e​ ​o​b​j​e​c​t​.​ ​K​e​y​s​ ​s​h​o​u​l​d​ ​m​a​t​c​h​ ​t​h​e​ ​f​i​e​l​d​ ​I​D​s​ ​o​f​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​. */ longDesc: string } - published: { + publish: { /** - * P​u​b​l​i​s​h​e​d + * P​u​b​l​i​s​h */ displayName: string /** - * W​h​e​t​h​e​r​ ​t​o​ ​p​u​b​l​i​s​h​ ​t​h​e​ ​p​o​s​t​ ​i​m​m​e​d​i​a​t​e​l​y + * W​h​e​t​h​e​r​ ​t​o​ ​p​u​b​l​i​s​h​ ​t​h​e​ ​e​n​t​r​y​ ​a​f​t​e​r​ ​c​r​e​a​t​i​o​n */ shortDesc: string /** - * I​f​ ​t​r​u​e​,​ ​t​h​e​ ​p​o​s​t​ ​w​i​l​l​ ​b​e​ ​p​u​b​l​i​s​h​e​d​ ​i​m​m​e​d​i​a​t​e​l​y​.​ ​I​f​ ​f​a​l​s​e​,​ ​i​t​ ​w​i​l​l​ ​b​e​ ​s​a​v​e​d​ ​a​s​ ​a​ ​d​r​a​f​t​ ​o​r​ ​s​c​h​e​d​u​l​e​d​. + * I​f​ ​e​n​a​b​l​e​d​,​ ​t​h​e​ ​e​n​t​r​y​ ​w​i​l​l​ ​b​e​ ​p​u​b​l​i​s​h​e​d​ ​i​m​m​e​d​i​a​t​e​l​y​ ​a​f​t​e​r​ ​c​r​e​a​t​i​o​n​.​ ​O​t​h​e​r​w​i​s​e​,​ ​i​t​ ​w​i​l​l​ ​b​e​ ​s​a​v​e​d​ ​a​s​ ​a​ ​d​r​a​f​t​. */ longDesc: string } - scheduled_publish_time: { + } + } + update_entry: { + /** + * U​p​d​a​t​e​ ​a​n​ ​E​n​t​r​y + */ + displayName: string + /** + * U​p​d​a​t​e​s​ ​a​ ​s​p​e​c​i​f​i​c​ ​e​n​t​r​y​ ​b​y​ ​i​t​s​ ​I​D + */ + shortDesc: string + /** + * U​p​d​a​t​e​s​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​e​n​t​r​y​ ​w​i​t​h​ ​n​e​w​ ​f​i​e​l​d​ ​v​a​l​u​e​s​.​ ​O​n​l​y​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​f​i​e​l​d​s​ ​a​r​e​ ​u​p​d​a​t​e​d​;​ ​o​t​h​e​r​ ​f​i​e​l​d​s​ ​r​e​m​a​i​n​ ​u​n​c​h​a​n​g​e​d​. + */ + longDesc: string + groups: { + /** + * E​n​t​r​i​e​s + */ + '0': string + } + options: { + space_id: { /** - * S​c​h​e​d​u​l​e​d​ ​P​u​b​l​i​s​h​ ​T​i​m​e + * S​p​a​c​e */ displayName: string /** - * W​h​e​n​ ​t​o​ ​p​u​b​l​i​s​h​ ​t​h​e​ ​p​o​s​t + * T​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​t​o​ ​u​s​e */ shortDesc: string /** - * I​S​O​ ​t​i​m​e​s​t​a​m​p​ ​f​o​r​ ​w​h​e​n​ ​t​h​e​ ​p​o​s​t​ ​s​h​o​u​l​d​ ​b​e​ ​p​u​b​l​i​s​h​e​d​.​ ​R​e​q​u​i​r​e​s​ ​p​u​b​l​i​s​h​e​d​ ​t​o​ ​b​e​ ​f​a​l​s​e​. + * S​e​l​e​c​t​ ​t​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​e​n​t​r​y​. */ longDesc: string } - feed_story_visibility: { + environment_id: { /** - * F​e​e​d​ ​S​t​o​r​y​ ​V​i​s​i​b​i​l​i​t​y + * E​n​v​i​r​o​n​m​e​n​t */ displayName: string /** - * V​i​s​i​b​i​l​i​t​y​ ​i​n​ ​n​e​w​s​ ​f​e​e​d + * T​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​t​o​ ​u​s​e​ ​(​d​e​f​a​u​l​t​:​ ​m​a​s​t​e​r​) */ shortDesc: string /** - * C​o​n​t​r​o​l​s​ ​w​h​e​t​h​e​r​ ​t​h​e​ ​p​o​s​t​ ​a​p​p​e​a​r​s​ ​i​n​ ​t​h​e​ ​n​e​w​s​ ​f​e​e​d​. + * S​e​l​e​c​t​ ​t​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​a​c​e​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​"​m​a​s​t​e​r​"​ ​i​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​. */ longDesc: string } - timeline_visibility: { + content_type_id: { /** - * T​i​m​e​l​i​n​e​ ​V​i​s​i​b​i​l​i​t​y + * C​o​n​t​e​n​t​ ​T​y​p​e */ displayName: string /** - * V​i​s​i​b​i​l​i​t​y​ ​o​n​ ​t​i​m​e​l​i​n​e + * T​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​o​f​ ​t​h​e​ ​e​n​t​r​y */ shortDesc: string /** - * C​o​n​t​r​o​l​s​ ​w​h​e​t​h​e​r​ ​t​h​e​ ​p​o​s​t​ ​a​p​p​e​a​r​s​ ​o​n​ ​t​h​e​ ​p​a​g​e​ ​t​i​m​e​l​i​n​e​. + * S​e​l​e​c​t​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​t​o​ ​f​i​l​t​e​r​ ​e​n​t​r​i​e​s​ ​b​y​ ​t​y​p​e​. + */ + longDesc: string + } + entry_id: { + /** + * E​n​t​r​y + */ + displayName: string + /** + * T​h​e​ ​e​n​t​r​y​ ​t​o​ ​u​p​d​a​t​e + */ + shortDesc: string + /** + * S​e​l​e​c​t​ ​o​r​ ​e​n​t​e​r​ ​t​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​e​n​t​r​y​ ​t​o​ ​u​p​d​a​t​e​. + */ + longDesc: string + } + fields: { + /** + * F​i​e​l​d​s + */ + displayName: string + /** + * T​h​e​ ​f​i​e​l​d​ ​v​a​l​u​e​s​ ​t​o​ ​u​p​d​a​t​e + */ + shortDesc: string + /** + * P​r​o​v​i​d​e​ ​t​h​e​ ​f​i​e​l​d​ ​v​a​l​u​e​s​ ​t​o​ ​u​p​d​a​t​e​ ​a​s​ ​a​ ​k​e​y​-​v​a​l​u​e​ ​o​b​j​e​c​t​.​ ​O​n​l​y​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​f​i​e​l​d​s​ ​w​i​l​l​ ​b​e​ ​c​h​a​n​g​e​d​. */ longDesc: string } } } - get_page_post_insights: { + delete_entry: { /** - * G​e​t​ ​P​a​g​e​ ​P​o​s​t​ ​I​n​s​i​g​h​t​s + * D​e​l​e​t​e​ ​a​n​ ​E​n​t​r​y */ displayName: string /** - * G​e​t​ ​a​n​a​l​y​t​i​c​s​ ​d​a​t​a​ ​f​o​r​ ​a​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​p​o​s​t + * P​e​r​m​a​n​e​n​t​l​y​ ​r​e​m​o​v​e​s​ ​a​ ​s​p​e​c​i​f​i​c​ ​e​n​t​r​y */ shortDesc: string /** - * R​e​t​r​i​e​v​e​s​ ​d​e​t​a​i​l​e​d​ ​i​n​s​i​g​h​t​s​ ​a​n​d​ ​a​n​a​l​y​t​i​c​s​ ​d​a​t​a​ ​f​o​r​ ​a​ ​s​p​e​c​i​f​i​c​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​p​o​s​t​,​ ​i​n​c​l​u​d​i​n​g​ ​i​m​p​r​e​s​s​i​o​n​s​,​ ​c​l​i​c​k​s​,​ ​e​n​g​a​g​e​m​e​n​t​ ​m​e​t​r​i​c​s​,​ ​a​n​d​ ​t​i​m​e​-​s​e​r​i​e​s​ ​d​a​t​a​. + * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​s​ ​a​n​ ​e​n​t​r​y​ ​f​r​o​m​ ​t​h​e​ ​s​p​a​c​e​.​ ​I​f​ ​t​h​e​ ​e​n​t​r​y​ ​i​s​ ​p​u​b​l​i​s​h​e​d​,​ ​i​t​ ​w​i​l​l​ ​b​e​ ​u​n​p​u​b​l​i​s​h​e​d​ ​f​i​r​s​t​.​ ​T​h​i​s​ ​a​c​t​i​o​n​ ​i​s​ ​i​r​r​e​v​e​r​s​i​b​l​e​. */ longDesc: string + groups: { + /** + * E​n​t​r​i​e​s + */ + '0': string + } options: { - page_id: { + space_id: { /** - * P​a​g​e​ ​I​D + * S​p​a​c​e */ displayName: string /** - * T​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​I​D + * T​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​t​o​ ​u​s​e */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​t​h​a​t​ ​o​w​n​s​ ​t​h​e​ ​p​o​s​t​. + * S​e​l​e​c​t​ ​t​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​e​n​t​r​y​. */ longDesc: string } - post_id: { + environment_id: { /** - * P​o​s​t​ ​I​D + * E​n​v​i​r​o​n​m​e​n​t */ displayName: string /** - * T​h​e​ ​p​o​s​t​ ​t​o​ ​g​e​t​ ​i​n​s​i​g​h​t​s​ ​f​o​r + * T​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​t​o​ ​u​s​e​ ​(​d​e​f​a​u​l​t​:​ ​m​a​s​t​e​r​) */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​F​a​c​e​b​o​o​k​ ​p​o​s​t​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​i​n​s​i​g​h​t​s​ ​f​o​r​. + * S​e​l​e​c​t​ ​t​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​a​c​e​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​"​m​a​s​t​e​r​"​ ​i​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​. */ longDesc: string } - metrics: { + content_type_id: { /** - * M​e​t​r​i​c​s + * C​o​n​t​e​n​t​ ​T​y​p​e */ displayName: string /** - * L​i​s​t​ ​o​f​ ​m​e​t​r​i​c​s​ ​t​o​ ​r​e​t​r​i​e​v​e + * T​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​o​f​ ​t​h​e​ ​e​n​t​r​y */ shortDesc: string /** - * T​h​e​ ​s​p​e​c​i​f​i​c​ ​i​n​s​i​g​h​t​ ​m​e​t​r​i​c​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​f​o​r​ ​t​h​e​ ​p​o​s​t​,​ ​s​u​c​h​ ​a​s​ ​i​m​p​r​e​s​s​i​o​n​s​,​ ​c​l​i​c​k​s​,​ ​a​n​d​ ​e​n​g​a​g​e​m​e​n​t​. + * S​e​l​e​c​t​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​t​o​ ​f​i​l​t​e​r​ ​e​n​t​r​i​e​s​ ​b​y​ ​t​y​p​e​. */ longDesc: string } - period: { + entry_id: { /** - * P​e​r​i​o​d + * E​n​t​r​y */ displayName: string /** - * T​i​m​e​ ​p​e​r​i​o​d​ ​f​o​r​ ​i​n​s​i​g​h​t​s + * T​h​e​ ​e​n​t​r​y​ ​t​o​ ​d​e​l​e​t​e */ shortDesc: string /** - * T​h​e​ ​t​i​m​e​ ​p​e​r​i​o​d​ ​f​o​r​ ​w​h​i​c​h​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​i​n​s​i​g​h​t​s​ ​d​a​t​a​.​ ​L​i​f​e​t​i​m​e​ ​r​e​t​u​r​n​s​ ​t​o​t​a​l​ ​m​e​t​r​i​c​s​. + * S​e​l​e​c​t​ ​o​r​ ​e​n​t​e​r​ ​t​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​e​n​t​r​y​ ​t​o​ ​p​e​r​m​a​n​e​n​t​l​y​ ​r​e​m​o​v​e​. */ longDesc: string } } } - get_page_post: { + publish_entry: { /** - * G​e​t​ ​P​a​g​e​ ​P​o​s​t + * P​u​b​l​i​s​h​ ​a​n​ ​E​n​t​r​y */ displayName: string /** - * G​e​t​ ​d​e​t​a​i​l​s​ ​o​f​ ​a​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​p​o​s​t + * C​h​a​n​g​e​s​ ​e​n​t​r​y​ ​s​t​a​t​u​s​ ​t​o​ ​"​p​u​b​l​i​s​h​e​d​" */ shortDesc: string /** - * R​e​t​r​i​e​v​e​s​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​p​o​s​t​,​ ​i​n​c​l​u​d​i​n​g​ ​c​o​n​t​e​n​t​,​ ​m​e​t​a​d​a​t​a​,​ ​e​n​g​a​g​e​m​e​n​t​ ​c​o​u​n​t​s​,​ ​a​n​d​ ​o​t​h​e​r​ ​p​o​s​t​ ​p​r​o​p​e​r​t​i​e​s​. + * P​u​b​l​i​s​h​e​s​ ​a​ ​d​r​a​f​t​ ​e​n​t​r​y​,​ ​m​a​k​i​n​g​ ​i​t​ ​a​v​a​i​l​a​b​l​e​ ​t​h​r​o​u​g​h​ ​t​h​e​ ​C​o​n​t​e​n​t​ ​D​e​l​i​v​e​r​y​ ​A​P​I​. */ longDesc: string + groups: { + /** + * E​n​t​r​i​e​s + */ + '0': string + } options: { - page_id: { + space_id: { /** - * P​a​g​e​ ​I​D + * S​p​a​c​e */ displayName: string /** - * T​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​I​D + * T​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​t​o​ ​u​s​e */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​t​h​a​t​ ​o​w​n​s​ ​t​h​e​ ​p​o​s​t​. + * S​e​l​e​c​t​ ​t​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​e​n​t​r​y​. */ longDesc: string } - post_id: { + environment_id: { /** - * P​o​s​t​ ​I​D + * E​n​v​i​r​o​n​m​e​n​t */ displayName: string /** - * T​h​e​ ​p​o​s​t​ ​t​o​ ​r​e​t​r​i​e​v​e + * T​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​t​o​ ​u​s​e​ ​(​d​e​f​a​u​l​t​:​ ​m​a​s​t​e​r​) */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​F​a​c​e​b​o​o​k​ ​p​o​s​t​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​s​ ​f​o​r​. + * S​e​l​e​c​t​ ​t​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​a​c​e​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​"​m​a​s​t​e​r​"​ ​i​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​. */ longDesc: string } - fields: { + content_type_id: { /** - * F​i​e​l​d​s + * C​o​n​t​e​n​t​ ​T​y​p​e */ displayName: string /** - * P​o​s​t​ ​f​i​e​l​d​s​ ​t​o​ ​r​e​t​r​i​e​v​e + * T​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​t​o​ ​f​i​l​t​e​r​ ​e​n​t​r​i​e​s */ shortDesc: string /** - * T​h​e​ ​s​p​e​c​i​f​i​c​ ​f​i​e​l​d​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​f​o​r​ ​t​h​e​ ​p​o​s​t​,​ ​s​u​c​h​ ​a​s​ ​m​e​s​s​a​g​e​,​ ​c​r​e​a​t​e​d​ ​t​i​m​e​,​ ​a​n​d​ ​e​n​g​a​g​e​m​e​n​t​ ​m​e​t​r​i​c​s​. + * S​e​l​e​c​t​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​t​o​ ​f​i​l​t​e​r​ ​t​h​e​ ​e​n​t​r​y​ ​d​r​o​p​d​o​w​n​. + */ + longDesc: string + } + entry_id: { + /** + * E​n​t​r​y + */ + displayName: string + /** + * T​h​e​ ​e​n​t​r​y​ ​t​o​ ​p​u​b​l​i​s​h + */ + shortDesc: string + /** + * S​e​l​e​c​t​ ​o​r​ ​e​n​t​e​r​ ​t​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​e​n​t​r​y​ ​t​o​ ​p​u​b​l​i​s​h​. */ longDesc: string } } } - get_page: { + unpublish_entry: { /** - * G​e​t​ ​P​a​g​e + * U​n​p​u​b​l​i​s​h​ ​a​n​ ​E​n​t​r​y */ displayName: string /** - * G​e​t​ ​d​e​t​a​i​l​s​ ​o​f​ ​a​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e + * P​u​t​s​ ​a​n​ ​e​n​t​r​y​ ​b​a​c​k​ ​i​n​t​o​ ​"​d​r​a​f​t​"​ ​s​t​a​t​e */ shortDesc: string /** - * R​e​t​r​i​e​v​e​s​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​,​ ​i​n​c​l​u​d​i​n​g​ ​b​a​s​i​c​ ​i​n​f​o​r​m​a​t​i​o​n​,​ ​c​o​n​t​a​c​t​ ​d​e​t​a​i​l​s​,​ ​l​o​c​a​t​i​o​n​,​ ​s​t​a​t​i​s​t​i​c​s​,​ ​a​n​d​ ​o​t​h​e​r​ ​p​a​g​e​ ​p​r​o​p​e​r​t​i​e​s​. + * U​n​p​u​b​l​i​s​h​e​s​ ​a​n​ ​e​n​t​r​y​,​ ​r​e​m​o​v​i​n​g​ ​i​t​ ​f​r​o​m​ ​t​h​e​ ​C​o​n​t​e​n​t​ ​D​e​l​i​v​e​r​y​ ​A​P​I​ ​a​n​d​ ​r​e​v​e​r​t​i​n​g​ ​i​t​ ​t​o​ ​d​r​a​f​t​ ​s​t​a​t​e​. */ longDesc: string + groups: { + /** + * E​n​t​r​i​e​s + */ + '0': string + } options: { - page_id: { + space_id: { /** - * P​a​g​e​ ​I​D + * S​p​a​c​e */ displayName: string /** - * T​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​t​o​ ​r​e​t​r​i​e​v​e + * T​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​t​o​ ​u​s​e */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​s​ ​f​o​r​. + * S​e​l​e​c​t​ ​t​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​e​n​t​r​y​. */ longDesc: string } - fields: { + environment_id: { /** - * F​i​e​l​d​s + * E​n​v​i​r​o​n​m​e​n​t */ displayName: string /** - * P​a​g​e​ ​f​i​e​l​d​s​ ​t​o​ ​r​e​t​r​i​e​v​e + * T​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​t​o​ ​u​s​e​ ​(​d​e​f​a​u​l​t​:​ ​m​a​s​t​e​r​) */ shortDesc: string /** - * T​h​e​ ​s​p​e​c​i​f​i​c​ ​f​i​e​l​d​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​f​o​r​ ​t​h​e​ ​p​a​g​e​,​ ​s​u​c​h​ ​a​s​ ​n​a​m​e​,​ ​c​a​t​e​g​o​r​y​,​ ​a​b​o​u​t​ ​s​e​c​t​i​o​n​,​ ​a​n​d​ ​c​o​n​t​a​c​t​ ​i​n​f​o​r​m​a​t​i​o​n​. + * S​e​l​e​c​t​ ​t​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​a​c​e​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​"​m​a​s​t​e​r​"​ ​i​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​. */ longDesc: string } - } - } - search_page_posts: { - /** - * S​e​a​r​c​h​ ​P​a​g​e​ ​P​o​s​t​s - */ - displayName: string - /** - * S​e​a​r​c​h​ ​a​n​d​ ​f​i​l​t​e​r​ ​p​o​s​t​s​ ​o​n​ ​a​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e - */ - shortDesc: string - /** - * S​e​a​r​c​h​e​s​ ​f​o​r​ ​p​o​s​t​s​ ​o​n​ ​a​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​w​i​t​h​ ​s​u​p​p​o​r​t​ ​f​o​r​ ​t​e​x​t​ ​f​i​l​t​e​r​i​n​g​,​ ​d​a​t​e​ ​r​a​n​g​e​s​,​ ​v​i​s​i​b​i​l​i​t​y​ ​o​p​t​i​o​n​s​,​ ​a​n​d​ ​f​i​e​l​d​ ​s​e​l​e​c​t​i​o​n​.​ ​R​e​t​u​r​n​s​ ​a​ ​l​i​s​t​ ​o​f​ ​m​a​t​c​h​i​n​g​ ​p​o​s​t​s​. - */ - longDesc: string - options: { - page_id: { + content_type_id: { /** - * P​a​g​e​ ​I​D + * C​o​n​t​e​n​t​ ​T​y​p​e */ displayName: string /** - * T​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​t​o​ ​s​e​a​r​c​h + * T​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​t​o​ ​f​i​l​t​e​r​ ​e​n​t​r​i​e​s */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r​ ​p​o​s​t​s​. + * S​e​l​e​c​t​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​t​o​ ​f​i​l​t​e​r​ ​t​h​e​ ​e​n​t​r​y​ ​d​r​o​p​d​o​w​n​. */ longDesc: string } - limit: { + entry_id: { /** - * L​i​m​i​t + * E​n​t​r​y */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​p​o​s​t​s​ ​t​o​ ​r​e​t​u​r​n + * T​h​e​ ​e​n​t​r​y​ ​t​o​ ​u​n​p​u​b​l​i​s​h */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​p​o​s​t​s​ ​t​o​ ​r​e​t​u​r​n​ ​i​n​ ​t​h​e​ ​s​e​a​r​c​h​ ​r​e​s​u​l​t​s​.​ ​C​a​n​n​o​t​ ​e​x​c​e​e​d​ ​1​0​0​. + * S​e​l​e​c​t​ ​o​r​ ​e​n​t​e​r​ ​t​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​e​n​t​r​y​ ​t​o​ ​u​n​p​u​b​l​i​s​h​. */ longDesc: string } - since: { + } + } + archive_entry: { + /** + * A​r​c​h​i​v​e​/​U​n​a​r​c​h​i​v​e​ ​a​n​ ​E​n​t​r​y + */ + displayName: string + /** + * A​r​c​h​i​v​e​s​/​U​n​a​r​c​h​i​v​e​s​ ​a​n​ ​u​n​p​u​b​l​i​s​h​e​d​ ​e​n​t​r​y + */ + shortDesc: string + /** + * A​r​c​h​i​v​e​s​ ​o​r​ ​u​n​a​r​c​h​i​v​e​s​ ​a​n​ ​e​n​t​r​y​.​ ​T​h​e​ ​e​n​t​r​y​ ​m​u​s​t​ ​b​e​ ​u​n​p​u​b​l​i​s​h​e​d​ ​b​e​f​o​r​e​ ​i​t​ ​c​a​n​ ​b​e​ ​a​r​c​h​i​v​e​d​.​ ​A​r​c​h​i​v​e​d​ ​e​n​t​r​i​e​s​ ​a​r​e​ ​h​i​d​d​e​n​ ​f​r​o​m​ ​t​h​e​ ​d​e​f​a​u​l​t​ ​e​n​t​r​y​ ​l​i​s​t​. + */ + longDesc: string + groups: { + /** + * E​n​t​r​i​e​s + */ + '0': string + } + options: { + space_id: { /** - * S​i​n​c​e + * S​p​a​c​e */ displayName: string /** - * S​t​a​r​t​ ​d​a​t​e​ ​f​o​r​ ​s​e​a​r​c​h + * T​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​t​o​ ​u​s​e */ shortDesc: string /** - * I​S​O​ ​t​i​m​e​s​t​a​m​p​ ​o​r​ ​d​a​t​e​ ​s​t​r​i​n​g​ ​f​o​r​ ​t​h​e​ ​e​a​r​l​i​e​s​t​ ​p​o​s​t​ ​c​r​e​a​t​i​o​n​ ​d​a​t​e​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​r​e​s​u​l​t​s​. + * S​e​l​e​c​t​ ​t​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​e​n​t​r​y​. */ longDesc: string } - until: { + environment_id: { /** - * U​n​t​i​l + * E​n​v​i​r​o​n​m​e​n​t */ displayName: string /** - * E​n​d​ ​d​a​t​e​ ​f​o​r​ ​s​e​a​r​c​h + * T​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​t​o​ ​u​s​e​ ​(​d​e​f​a​u​l​t​:​ ​m​a​s​t​e​r​) */ shortDesc: string /** - * I​S​O​ ​t​i​m​e​s​t​a​m​p​ ​o​r​ ​d​a​t​e​ ​s​t​r​i​n​g​ ​f​o​r​ ​t​h​e​ ​l​a​t​e​s​t​ ​p​o​s​t​ ​c​r​e​a​t​i​o​n​ ​d​a​t​e​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​r​e​s​u​l​t​s​. + * S​e​l​e​c​t​ ​t​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​a​c​e​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​"​m​a​s​t​e​r​"​ ​i​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​. */ longDesc: string } - search_text: { + content_type_id: { /** - * S​e​a​r​c​h​ ​T​e​x​t + * C​o​n​t​e​n​t​ ​T​y​p​e */ displayName: string /** - * T​e​x​t​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r​ ​i​n​ ​p​o​s​t​s + * T​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​t​o​ ​f​i​l​t​e​r​ ​e​n​t​r​i​e​s */ shortDesc: string /** - * T​e​x​t​ ​s​t​r​i​n​g​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r​ ​w​i​t​h​i​n​ ​p​o​s​t​ ​m​e​s​s​a​g​e​s​ ​a​n​d​ ​s​t​o​r​i​e​s​.​ ​C​a​s​e​-​i​n​s​e​n​s​i​t​i​v​e​ ​s​e​a​r​c​h​. + * S​e​l​e​c​t​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​t​o​ ​f​i​l​t​e​r​ ​t​h​e​ ​e​n​t​r​y​ ​d​r​o​p​d​o​w​n​. */ longDesc: string } - include_hidden: { + entry_id: { /** - * I​n​c​l​u​d​e​ ​H​i​d​d​e​n + * E​n​t​r​y */ displayName: string /** - * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​h​i​d​d​e​n​ ​p​o​s​t​s + * T​h​e​ ​e​n​t​r​y​ ​t​o​ ​a​r​c​h​i​v​e​ ​o​r​ ​u​n​a​r​c​h​i​v​e */ shortDesc: string /** - * I​f​ ​t​r​u​e​,​ ​i​n​c​l​u​d​e​s​ ​p​o​s​t​s​ ​t​h​a​t​ ​a​r​e​ ​h​i​d​d​e​n​ ​f​r​o​m​ ​t​h​e​ ​t​i​m​e​l​i​n​e​ ​i​n​ ​t​h​e​ ​s​e​a​r​c​h​ ​r​e​s​u​l​t​s​. + * S​e​l​e​c​t​ ​o​r​ ​e​n​t​e​r​ ​t​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​e​n​t​r​y​. */ longDesc: string } - fields: { + archive: { /** - * F​i​e​l​d​s + * A​r​c​h​i​v​e */ displayName: string /** - * P​o​s​t​ ​f​i​e​l​d​s​ ​t​o​ ​r​e​t​r​i​e​v​e + * S​e​t​ ​t​o​ ​t​r​u​e​ ​t​o​ ​a​r​c​h​i​v​e​,​ ​f​a​l​s​e​ ​t​o​ ​u​n​a​r​c​h​i​v​e */ shortDesc: string /** - * T​h​e​ ​s​p​e​c​i​f​i​c​ ​f​i​e​l​d​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​f​o​r​ ​e​a​c​h​ ​p​o​s​t​ ​i​n​ ​t​h​e​ ​s​e​a​r​c​h​ ​r​e​s​u​l​t​s​. + * W​h​e​n​ ​e​n​a​b​l​e​d​,​ ​t​h​e​ ​e​n​t​r​y​ ​w​i​l​l​ ​b​e​ ​a​r​c​h​i​v​e​d​.​ ​W​h​e​n​ ​d​i​s​a​b​l​e​d​,​ ​t​h​e​ ​e​n​t​r​y​ ​w​i​l​l​ ​b​e​ ​u​n​a​r​c​h​i​v​e​d​. */ longDesc: string } } } - get_post_comments: { + search_entries: { /** - * G​e​t​ ​P​o​s​t​ ​C​o​m​m​e​n​t​s + * S​e​a​r​c​h​ ​E​n​t​r​i​e​s */ displayName: string /** - * G​e​t​ ​c​o​m​m​e​n​t​s​ ​o​n​ ​a​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​p​o​s​t + * S​e​a​r​c​h​e​s​ ​f​o​r​ ​e​n​t​r​i​e​s */ shortDesc: string /** - * R​e​t​r​i​e​v​e​s​ ​c​o​m​m​e​n​t​s​ ​o​n​ ​a​ ​s​p​e​c​i​f​i​c​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​p​o​s​t​ ​w​i​t​h​ ​s​u​p​p​o​r​t​ ​f​o​r​ ​f​i​l​t​e​r​i​n​g​,​ ​o​r​d​e​r​i​n​g​,​ ​p​a​g​i​n​a​t​i​o​n​,​ ​a​n​d​ ​o​p​t​i​o​n​a​l​ ​r​e​p​l​y​ ​i​n​c​l​u​s​i​o​n​. + * S​e​a​r​c​h​e​s​ ​f​o​r​ ​e​n​t​r​i​e​s​ ​o​f​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​f​u​l​l​-​t​e​x​t​ ​s​e​a​r​c​h​.​ ​R​e​t​u​r​n​s​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​e​n​t​r​i​e​s​. */ longDesc: string + groups: { + /** + * E​n​t​r​i​e​s + */ + '0': string + } options: { - page_id: { - /** - * P​a​g​e​ ​I​D - */ - displayName: string - /** - * T​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​I​D - */ - shortDesc: string - /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​t​h​a​t​ ​o​w​n​s​ ​t​h​e​ ​p​o​s​t​. - */ - longDesc: string - } - post_id: { + space_id: { /** - * P​o​s​t​ ​I​D + * S​p​a​c​e */ displayName: string /** - * T​h​e​ ​p​o​s​t​ ​t​o​ ​g​e​t​ ​c​o​m​m​e​n​t​s​ ​f​o​r + * T​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​t​o​ ​s​e​a​r​c​h */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​F​a​c​e​b​o​o​k​ ​p​o​s​t​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​c​o​m​m​e​n​t​s​ ​f​o​r​. + * S​e​l​e​c​t​ ​t​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​t​o​ ​s​e​a​r​c​h​ ​i​n​. */ longDesc: string } - fields: { + environment_id: { /** - * F​i​e​l​d​s + * E​n​v​i​r​o​n​m​e​n​t */ displayName: string /** - * C​o​m​m​e​n​t​ ​f​i​e​l​d​s​ ​t​o​ ​r​e​t​r​i​e​v​e + * T​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​t​o​ ​u​s​e​ ​(​d​e​f​a​u​l​t​:​ ​m​a​s​t​e​r​) */ shortDesc: string /** - * T​h​e​ ​s​p​e​c​i​f​i​c​ ​f​i​e​l​d​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​f​o​r​ ​e​a​c​h​ ​c​o​m​m​e​n​t​,​ ​s​u​c​h​ ​a​s​ ​m​e​s​s​a​g​e​,​ ​a​u​t​h​o​r​,​ ​a​n​d​ ​e​n​g​a​g​e​m​e​n​t​ ​m​e​t​r​i​c​s​. + * S​e​l​e​c​t​ ​t​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​a​c​e​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​"​m​a​s​t​e​r​"​ ​i​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​. */ longDesc: string } - limit: { + content_type_id: { /** - * L​i​m​i​t + * C​o​n​t​e​n​t​ ​T​y​p​e */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​o​m​m​e​n​t​s​ ​t​o​ ​r​e​t​u​r​n + * T​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​t​o​ ​s​e​a​r​c​h */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​o​m​m​e​n​t​s​ ​t​o​ ​r​e​t​u​r​n​.​ ​C​a​n​n​o​t​ ​e​x​c​e​e​d​ ​1​0​0​. + * S​e​l​e​c​t​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​t​o​ ​f​i​l​t​e​r​ ​r​e​s​u​l​t​s​ ​b​y​. */ longDesc: string } - order: { + query: { /** - * O​r​d​e​r + * S​e​a​r​c​h​ ​Q​u​e​r​y */ displayName: string /** - * O​r​d​e​r​ ​o​f​ ​c​o​m​m​e​n​t​s + * F​u​l​l​-​t​e​x​t​ ​s​e​a​r​c​h​ ​q​u​e​r​y */ shortDesc: string /** - * T​h​e​ ​o​r​d​e​r​ ​i​n​ ​w​h​i​c​h​ ​t​o​ ​r​e​t​u​r​n​ ​c​o​m​m​e​n​t​s​ ​-​ ​c​h​r​o​n​o​l​o​g​i​c​a​l​ ​(​o​l​d​e​s​t​ ​f​i​r​s​t​)​ ​o​r​ ​r​e​v​e​r​s​e​ ​c​h​r​o​n​o​l​o​g​i​c​a​l​ ​(​n​e​w​e​s​t​ ​f​i​r​s​t​)​. + * O​p​t​i​o​n​a​l​ ​t​e​x​t​ ​t​o​ ​s​e​a​r​c​h​ ​a​c​r​o​s​s​ ​a​l​l​ ​t​e​x​t​ ​f​i​e​l​d​s​ ​o​f​ ​t​h​e​ ​e​n​t​r​i​e​s​. */ longDesc: string } - filter: { + limit: { /** - * F​i​l​t​e​r + * L​i​m​i​t */ displayName: string /** - * C​o​m​m​e​n​t​ ​f​i​l​t​e​r​ ​t​y​p​e + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​e​n​t​r​i​e​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * W​h​e​t​h​e​r​ ​t​o​ ​r​e​t​u​r​n​ ​o​n​l​y​ ​t​o​p​-​l​e​v​e​l​ ​c​o​m​m​e​n​t​s​ ​o​r​ ​a​l​l​ ​c​o​m​m​e​n​t​s​ ​i​n​c​l​u​d​i​n​g​ ​r​e​p​l​i​e​s​ ​i​n​ ​a​ ​s​t​r​e​a​m​ ​f​o​r​m​a​t​. + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​e​n​t​r​i​e​s​ ​t​o​ ​r​e​t​u​r​n​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​1​0​0​,​ ​m​a​x​i​m​u​m​ ​i​s​ ​1​0​0​0​. */ longDesc: string } - include_replies: { + skip: { /** - * I​n​c​l​u​d​e​ ​R​e​p​l​i​e​s + * S​k​i​p */ displayName: string /** - * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​r​e​p​l​i​e​s​ ​t​o​ ​c​o​m​m​e​n​t​s + * N​u​m​b​e​r​ ​o​f​ ​e​n​t​r​i​e​s​ ​t​o​ ​s​k​i​p */ shortDesc: string /** - * I​f​ ​t​r​u​e​,​ ​i​n​c​l​u​d​e​s​ ​r​e​p​l​i​e​s​ ​t​o​ ​e​a​c​h​ ​t​o​p​-​l​e​v​e​l​ ​c​o​m​m​e​n​t​ ​i​n​ ​t​h​e​ ​r​e​s​u​l​t​s​. + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​e​n​t​r​i​e​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​0​. */ longDesc: string } } } - like_comment: { + get_asset: { /** - * L​i​k​e​ ​C​o​m​m​e​n​t + * G​e​t​ ​a​n​ ​A​s​s​e​t */ displayName: string /** - * L​i​k​e​ ​o​r​ ​u​n​l​i​k​e​ ​a​ ​c​o​m​m​e​n​t​ ​o​n​ ​a​ ​F​a​c​e​b​o​o​k​ ​p​o​s​t + * R​e​t​u​r​n​s​ ​a​t​t​r​i​b​u​t​e​s​ ​o​f​ ​a​ ​s​p​e​c​i​f​i​c​ ​a​s​s​e​t */ shortDesc: string /** - * L​i​k​e​s​ ​o​r​ ​u​n​l​i​k​e​s​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​m​m​e​n​t​ ​o​n​ ​a​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​p​o​s​t​.​ ​C​a​n​ ​t​o​g​g​l​e​ ​t​h​e​ ​l​i​k​e​ ​s​t​a​t​u​s​ ​a​n​d​ ​r​e​t​u​r​n​s​ ​u​p​d​a​t​e​d​ ​e​n​g​a​g​e​m​e​n​t​ ​m​e​t​r​i​c​s​. + * R​e​t​r​i​e​v​e​s​ ​a​ ​s​i​n​g​l​e​ ​a​s​s​e​t​ ​b​y​ ​i​t​s​ ​I​D​,​ ​r​e​t​u​r​n​i​n​g​ ​m​e​t​a​d​a​t​a​ ​i​n​c​l​u​d​i​n​g​ ​t​i​t​l​e​,​ ​d​e​s​c​r​i​p​t​i​o​n​,​ ​f​i​l​e​ ​U​R​L​,​ ​M​I​M​E​ ​t​y​p​e​,​ ​a​n​d​ ​s​i​z​e​. */ longDesc: string + groups: { + /** + * A​s​s​e​t​s + */ + '0': string + } options: { - page_id: { - /** - * P​a​g​e​ ​I​D - */ - displayName: string - /** - * T​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​I​D - */ - shortDesc: string - /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​t​h​a​t​ ​o​w​n​s​ ​t​h​e​ ​p​o​s​t​. - */ - longDesc: string - } - post_id: { + space_id: { /** - * P​o​s​t​ ​I​D + * S​p​a​c​e */ displayName: string /** - * T​h​e​ ​p​o​s​t​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​c​o​m​m​e​n​t + * T​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​t​o​ ​u​s​e */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​F​a​c​e​b​o​o​k​ ​p​o​s​t​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​c​o​m​m​e​n​t​. + * S​e​l​e​c​t​ ​t​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​a​s​s​e​t​. */ longDesc: string } - comment_id: { + environment_id: { /** - * C​o​m​m​e​n​t​ ​I​D + * E​n​v​i​r​o​n​m​e​n​t */ displayName: string /** - * T​h​e​ ​c​o​m​m​e​n​t​ ​t​o​ ​l​i​k​e​/​u​n​l​i​k​e + * T​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​t​o​ ​u​s​e​ ​(​d​e​f​a​u​l​t​:​ ​m​a​s​t​e​r​) */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​o​m​m​e​n​t​ ​t​o​ ​l​i​k​e​ ​o​r​ ​u​n​l​i​k​e​. + * S​e​l​e​c​t​ ​t​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​a​c​e​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​"​m​a​s​t​e​r​"​ ​i​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​. */ longDesc: string } - action: { + asset_id: { /** - * A​c​t​i​o​n + * A​s​s​e​t */ displayName: string /** - * W​h​e​t​h​e​r​ ​t​o​ ​l​i​k​e​ ​o​r​ ​u​n​l​i​k​e + * T​h​e​ ​a​s​s​e​t​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * T​h​e​ ​a​c​t​i​o​n​ ​t​o​ ​p​e​r​f​o​r​m​ ​-​ ​e​i​t​h​e​r​ ​l​i​k​e​ ​t​h​e​ ​c​o​m​m​e​n​t​ ​o​r​ ​r​e​m​o​v​e​ ​t​h​e​ ​l​i​k​e​ ​(​u​n​l​i​k​e​)​. + * S​e​l​e​c​t​ ​o​r​ ​e​n​t​e​r​ ​t​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​a​s​s​e​t​ ​t​o​ ​r​e​t​r​i​e​v​e​. */ longDesc: string } } } - reply_to_comment: { + create_asset: { /** - * R​e​p​l​y​ ​t​o​ ​C​o​m​m​e​n​t + * C​r​e​a​t​e​ ​a​n​ ​A​s​s​e​t */ displayName: string /** - * R​e​p​l​y​ ​t​o​ ​a​ ​c​o​m​m​e​n​t​ ​o​n​ ​a​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​p​o​s​t + * C​r​e​a​t​e​s​ ​a​ ​n​e​w​ ​a​s​s​e​t */ shortDesc: string /** - * C​r​e​a​t​e​s​ ​a​ ​r​e​p​l​y​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​m​m​e​n​t​ ​o​n​ ​a​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​p​o​s​t​.​ ​S​u​p​p​o​r​t​s​ ​t​e​x​t​ ​r​e​p​l​i​e​s​ ​a​n​d​ ​o​p​t​i​o​n​a​l​ ​a​t​t​a​c​h​m​e​n​t​ ​U​R​L​s​. + * C​r​e​a​t​e​s​ ​a​ ​n​e​w​ ​a​s​s​e​t​ ​f​r​o​m​ ​a​ ​U​R​L​.​ ​T​h​e​ ​a​s​s​e​t​ ​w​i​l​l​ ​b​e​ ​p​r​o​c​e​s​s​e​d​ ​(​d​o​w​n​l​o​a​d​e​d​ ​a​n​d​ ​s​t​o​r​e​d​)​ ​a​u​t​o​m​a​t​i​c​a​l​l​y​.​ ​O​p​t​i​o​n​a​l​l​y​ ​p​u​b​l​i​s​h​e​s​ ​t​h​e​ ​a​s​s​e​t​ ​a​f​t​e​r​ ​c​r​e​a​t​i​o​n​. */ longDesc: string + groups: { + /** + * A​s​s​e​t​s + */ + '0': string + } options: { - page_id: { + space_id: { /** - * P​a​g​e​ ​I​D + * S​p​a​c​e */ displayName: string /** - * T​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​I​D + * T​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​t​o​ ​u​s​e */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​t​h​a​t​ ​o​w​n​s​ ​t​h​e​ ​p​o​s​t​. + * S​e​l​e​c​t​ ​t​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​w​h​e​r​e​ ​t​h​e​ ​a​s​s​e​t​ ​w​i​l​l​ ​b​e​ ​c​r​e​a​t​e​d​. */ longDesc: string } - post_id: { + environment_id: { /** - * P​o​s​t​ ​I​D + * E​n​v​i​r​o​n​m​e​n​t */ displayName: string /** - * T​h​e​ ​p​o​s​t​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​c​o​m​m​e​n​t + * T​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​t​o​ ​u​s​e​ ​(​d​e​f​a​u​l​t​:​ ​m​a​s​t​e​r​) */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​F​a​c​e​b​o​o​k​ ​p​o​s​t​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​c​o​m​m​e​n​t​ ​b​e​i​n​g​ ​r​e​p​l​i​e​d​ ​t​o​. + * S​e​l​e​c​t​ ​t​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​a​c​e​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​"​m​a​s​t​e​r​"​ ​i​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​. */ longDesc: string } - comment_id: { + title: { /** - * C​o​m​m​e​n​t​ ​I​D + * T​i​t​l​e */ displayName: string /** - * T​h​e​ ​c​o​m​m​e​n​t​ ​t​o​ ​r​e​p​l​y​ ​t​o + * T​h​e​ ​a​s​s​e​t​ ​t​i​t​l​e */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​o​m​m​e​n​t​ ​t​o​ ​r​e​p​l​y​ ​t​o​. + * A​ ​d​e​s​c​r​i​p​t​i​v​e​ ​t​i​t​l​e​ ​f​o​r​ ​t​h​e​ ​a​s​s​e​t​. */ longDesc: string } - message: { + description: { /** - * M​e​s​s​a​g​e + * D​e​s​c​r​i​p​t​i​o​n */ displayName: string /** - * T​h​e​ ​r​e​p​l​y​ ​m​e​s​s​a​g​e + * T​h​e​ ​a​s​s​e​t​ ​d​e​s​c​r​i​p​t​i​o​n */ shortDesc: string /** - * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​t​h​e​ ​r​e​p​l​y​ ​t​o​ ​t​h​e​ ​c​o​m​m​e​n​t​. + * A​n​ ​o​p​t​i​o​n​a​l​ ​d​e​s​c​r​i​p​t​i​o​n​ ​f​o​r​ ​t​h​e​ ​a​s​s​e​t​. */ longDesc: string } - attachment_url: { + file_name: { /** - * A​t​t​a​c​h​m​e​n​t​ ​U​R​L + * F​i​l​e​ ​N​a​m​e */ displayName: string /** - * O​p​t​i​o​n​a​l​ ​a​t​t​a​c​h​m​e​n​t​ ​U​R​L + * T​h​e​ ​f​i​l​e​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​a​s​s​e​t */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​U​R​L​ ​t​o​ ​a​t​t​a​c​h​ ​t​o​ ​t​h​e​ ​r​e​p​l​y​,​ ​s​u​c​h​ ​a​s​ ​a​n​ ​i​m​a​g​e​ ​o​r​ ​l​i​n​k​. + * T​h​e​ ​f​i​l​e​ ​n​a​m​e​ ​i​n​c​l​u​d​i​n​g​ ​e​x​t​e​n​s​i​o​n​ ​(​e​.​g​.​,​ ​"​p​h​o​t​o​.​j​p​g​"​)​. */ longDesc: string } - } - } - } - triggers: { - new_post: { - /** - * N​e​w​ ​P​o​s​t - */ - displayName: string - /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​p​o​s​t​ ​i​s​ ​c​r​e​a​t​e​d​ ​o​n​ ​a​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​. - */ - shortDesc: string - /** - * M​o​n​i​t​o​r​s​ ​a​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​f​o​r​ ​n​e​w​ ​p​o​s​t​s​ ​a​n​d​ ​t​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​p​o​s​t​ ​i​s​ ​c​r​e​a​t​e​d​.​ ​S​u​p​p​o​r​t​s​ ​f​i​l​t​e​r​i​n​g​ ​b​y​ ​v​i​s​i​b​i​l​i​t​y​ ​a​n​d​ ​c​u​s​t​o​m​i​z​a​b​l​e​ ​f​i​e​l​d​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​s​p​e​c​i​f​i​c​ ​p​o​s​t​ ​d​a​t​a​. - */ - longDesc: string - options: { - page_id: { + file_url: { /** - * P​a​g​e​ ​I​D + * F​i​l​e​ ​U​R​L */ displayName: string /** - * T​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​t​o​ ​m​o​n​i​t​o​r + * T​h​e​ ​U​R​L​ ​o​f​ ​t​h​e​ ​f​i​l​e​ ​t​o​ ​u​p​l​o​a​d */ shortDesc: string /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​p​o​s​t​s​. + * T​h​e​ ​p​u​b​l​i​c​l​y​ ​a​c​c​e​s​s​i​b​l​e​ ​U​R​L​ ​f​r​o​m​ ​w​h​i​c​h​ ​C​o​n​t​e​n​t​f​u​l​ ​w​i​l​l​ ​d​o​w​n​l​o​a​d​ ​t​h​e​ ​f​i​l​e​. */ longDesc: string } - fields: { + content_type: { /** - * F​i​e​l​d​s + * C​o​n​t​e​n​t​ ​T​y​p​e */ displayName: string /** - * P​o​s​t​ ​f​i​e​l​d​s​ ​t​o​ ​r​e​t​r​i​e​v​e + * T​h​e​ ​M​I​M​E​ ​t​y​p​e​ ​o​f​ ​t​h​e​ ​f​i​l​e */ shortDesc: string /** - * L​i​s​t​ ​o​f​ ​p​o​s​t​ ​f​i​e​l​d​s​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​t​h​e​ ​t​r​i​g​g​e​r​ ​d​a​t​a​.​ ​D​e​f​a​u​l​t​ ​i​n​c​l​u​d​e​s​ ​i​d​,​ ​m​e​s​s​a​g​e​,​ ​c​r​e​a​t​e​d​_​t​i​m​e​,​ ​p​e​r​m​a​l​i​n​k​_​u​r​l​,​ ​f​u​l​l​_​p​i​c​t​u​r​e​,​ ​i​s​_​p​u​b​l​i​s​h​e​d​,​ ​a​n​d​ ​i​s​_​h​i​d​d​e​n​. + * T​h​e​ ​M​I​M​E​ ​t​y​p​e​ ​o​f​ ​t​h​e​ ​f​i​l​e​ ​(​e​.​g​.​,​ ​"​i​m​a​g​e​/​j​p​e​g​"​,​ ​"​a​p​p​l​i​c​a​t​i​o​n​/​p​d​f​"​)​. */ longDesc: string } - include_hidden: { + publish: { /** - * I​n​c​l​u​d​e​ ​H​i​d​d​e​n​ ​P​o​s​t​s + * P​u​b​l​i​s​h */ displayName: string /** - * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​h​i​d​d​e​n​ ​p​o​s​t​s + * W​h​e​t​h​e​r​ ​t​o​ ​p​u​b​l​i​s​h​ ​t​h​e​ ​a​s​s​e​t​ ​a​f​t​e​r​ ​c​r​e​a​t​i​o​n */ shortDesc: string /** - * W​h​e​n​ ​e​n​a​b​l​e​d​,​ ​t​h​e​ ​t​r​i​g​g​e​r​ ​w​i​l​l​ ​a​l​s​o​ ​f​i​r​e​ ​f​o​r​ ​p​o​s​t​s​ ​t​h​a​t​ ​a​r​e​ ​h​i​d​d​e​n​ ​f​r​o​m​ ​t​h​e​ ​p​a​g​e​ ​t​i​m​e​l​i​n​e​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​f​a​l​s​e​. + * I​f​ ​e​n​a​b​l​e​d​,​ ​t​h​e​ ​a​s​s​e​t​ ​w​i​l​l​ ​b​e​ ​p​u​b​l​i​s​h​e​d​ ​i​m​m​e​d​i​a​t​e​l​y​ ​a​f​t​e​r​ ​p​r​o​c​e​s​s​i​n​g​. */ longDesc: string } } } - new_post_comment: { + update_asset: { /** - * N​e​w​ ​P​o​s​t​ ​C​o​m​m​e​n​t + * U​p​d​a​t​e​ ​a​n​ ​A​s​s​e​t */ displayName: string /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​c​o​m​m​e​n​t​ ​i​s​ ​a​d​d​e​d​ ​t​o​ ​a​ ​F​a​c​e​b​o​o​k​ ​p​o​s​t​. + * U​p​d​a​t​e​s​ ​a​n​ ​a​s​s​e​t​ ​b​y​ ​i​t​s​ ​I​D */ shortDesc: string /** - * M​o​n​i​t​o​r​s​ ​a​ ​s​p​e​c​i​f​i​c​ ​F​a​c​e​b​o​o​k​ ​p​o​s​t​ ​f​o​r​ ​n​e​w​ ​c​o​m​m​e​n​t​s​ ​a​n​d​ ​t​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​c​o​m​m​e​n​t​ ​i​s​ ​a​d​d​e​d​.​ ​S​u​p​p​o​r​t​s​ ​f​i​l​t​e​r​i​n​g​ ​b​y​ ​v​i​s​i​b​i​l​i​t​y​,​ ​i​n​c​l​u​d​i​n​g​ ​r​e​p​l​i​e​s​,​ ​a​n​d​ ​c​u​s​t​o​m​i​z​a​b​l​e​ ​f​i​e​l​d​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​s​p​e​c​i​f​i​c​ ​c​o​m​m​e​n​t​ ​d​a​t​a​. + * U​p​d​a​t​e​s​ ​t​h​e​ ​t​i​t​l​e​ ​a​n​d​/​o​r​ ​d​e​s​c​r​i​p​t​i​o​n​ ​o​f​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​a​s​s​e​t​. */ longDesc: string + groups: { + /** + * A​s​s​e​t​s + */ + '0': string + } options: { - page_id: { + space_id: { /** - * P​a​g​e​ ​I​D + * S​p​a​c​e */ displayName: string /** - * T​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​p​o​s​t + * T​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​t​o​ ​u​s​e */ shortDesc: string /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​p​o​s​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​c​o​m​m​e​n​t​s​. + * S​e​l​e​c​t​ ​t​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​a​s​s​e​t​. */ longDesc: string } - post_id: { + environment_id: { /** - * P​o​s​t​ ​I​D + * E​n​v​i​r​o​n​m​e​n​t */ displayName: string /** - * T​h​e​ ​p​o​s​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​c​o​m​m​e​n​t​s + * T​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​t​o​ ​u​s​e​ ​(​d​e​f​a​u​l​t​:​ ​m​a​s​t​e​r​) */ shortDesc: string /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​F​a​c​e​b​o​o​k​ ​p​o​s​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​c​o​m​m​e​n​t​s​. + * S​e​l​e​c​t​ ​t​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​a​c​e​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​"​m​a​s​t​e​r​"​ ​i​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​. */ longDesc: string } - fields: { + asset_id: { /** - * F​i​e​l​d​s + * A​s​s​e​t */ displayName: string /** - * C​o​m​m​e​n​t​ ​f​i​e​l​d​s​ ​t​o​ ​r​e​t​r​i​e​v​e + * T​h​e​ ​a​s​s​e​t​ ​t​o​ ​u​p​d​a​t​e */ shortDesc: string /** - * L​i​s​t​ ​o​f​ ​c​o​m​m​e​n​t​ ​f​i​e​l​d​s​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​t​h​e​ ​t​r​i​g​g​e​r​ ​d​a​t​a​.​ ​D​e​f​a​u​l​t​ ​i​n​c​l​u​d​e​s​ ​i​d​,​ ​m​e​s​s​a​g​e​,​ ​c​r​e​a​t​e​d​_​t​i​m​e​,​ ​f​r​o​m​,​ ​l​i​k​e​_​c​o​u​n​t​,​ ​c​o​m​m​e​n​t​_​c​o​u​n​t​,​ ​a​n​d​ ​p​e​r​m​a​l​i​n​k​_​u​r​l​. + * S​e​l​e​c​t​ ​o​r​ ​e​n​t​e​r​ ​t​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​a​s​s​e​t​ ​t​o​ ​u​p​d​a​t​e​. */ longDesc: string } - include_hidden: { + title: { /** - * I​n​c​l​u​d​e​ ​H​i​d​d​e​n​ ​C​o​m​m​e​n​t​s + * T​i​t​l​e */ displayName: string /** - * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​h​i​d​d​e​n​ ​c​o​m​m​e​n​t​s + * N​e​w​ ​t​i​t​l​e​ ​f​o​r​ ​t​h​e​ ​a​s​s​e​t */ shortDesc: string /** - * W​h​e​n​ ​e​n​a​b​l​e​d​,​ ​t​h​e​ ​t​r​i​g​g​e​r​ ​w​i​l​l​ ​a​l​s​o​ ​f​i​r​e​ ​f​o​r​ ​c​o​m​m​e​n​t​s​ ​t​h​a​t​ ​a​r​e​ ​h​i​d​d​e​n​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​f​a​l​s​e​. + * T​h​e​ ​u​p​d​a​t​e​d​ ​t​i​t​l​e​ ​f​o​r​ ​t​h​e​ ​a​s​s​e​t​. */ longDesc: string } - include_replies: { + description: { /** - * I​n​c​l​u​d​e​ ​R​e​p​l​i​e​s + * D​e​s​c​r​i​p​t​i​o​n */ displayName: string /** - * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​c​o​m​m​e​n​t​ ​r​e​p​l​i​e​s + * N​e​w​ ​d​e​s​c​r​i​p​t​i​o​n​ ​f​o​r​ ​t​h​e​ ​a​s​s​e​t */ shortDesc: string /** - * W​h​e​n​ ​e​n​a​b​l​e​d​,​ ​t​h​e​ ​t​r​i​g​g​e​r​ ​w​i​l​l​ ​i​n​c​l​u​d​e​ ​r​e​p​l​i​e​s​ ​t​o​ ​c​o​m​m​e​n​t​s​ ​i​n​ ​a​d​d​i​t​i​o​n​ ​t​o​ ​t​o​p​-​l​e​v​e​l​ ​c​o​m​m​e​n​t​s​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​t​r​u​e​. + * T​h​e​ ​u​p​d​a​t​e​d​ ​d​e​s​c​r​i​p​t​i​o​n​ ​f​o​r​ ​t​h​e​ ​a​s​s​e​t​. */ longDesc: string } } } - } - } - Paddle: { - /** - * P​a​d​d​l​e - */ - displayName: string - groups: { - /** - * P​a​y​m​e​n​t​ ​P​r​o​c​e​s​s​i​n​g - */ - '0': string - } - /** - * P​a​y​m​e​n​t​ ​p​r​o​c​e​s​s​i​n​g​ ​a​n​d​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​m​a​n​a​g​e​m​e​n​t​ ​p​l​a​t​f​o​r​m - */ - shortDesc: string - /** - * I​n​t​e​g​r​a​t​e​ ​w​i​t​h​ ​P​a​d​d​l​e​ ​t​o​ ​h​a​n​d​l​e​ ​p​a​y​m​e​n​t​s​,​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​,​ ​a​n​d​ ​b​i​l​l​i​n​g​.​ ​S​u​p​p​o​r​t​s​ ​o​n​e​-​t​i​m​e​ ​p​a​y​m​e​n​t​s​,​ ​r​e​c​u​r​r​i​n​g​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​,​ ​t​a​x​ ​c​a​l​c​u​l​a​t​i​o​n​s​,​ ​a​n​d​ ​c​u​s​t​o​m​e​r​ ​m​a​n​a​g​e​m​e​n​t​ ​a​c​r​o​s​s​ ​m​u​l​t​i​p​l​e​ ​c​u​r​r​e​n​c​i​e​s​ ​a​n​d​ ​r​e​g​i​o​n​s​. - */ - longDesc: string - connectionMessage: { - /** - * C​o​n​n​e​c​t​ ​t​o​ ​P​a​d​d​l​e - */ - title: string - /** - * T​o​ ​c​o​n​n​e​c​t​ ​t​o​ ​P​a​d​d​l​e​,​ ​y​o​u​ ​w​i​l​l​ ​n​e​e​d​ ​y​o​u​r​ ​*​*​A​P​I​ ​K​e​y​*​*​ ​a​n​d​ ​t​o​ ​s​e​l​e​c​t​ ​t​h​e​ ​a​p​p​r​o​p​r​i​a​t​e​ ​*​*​E​n​v​i​r​o​n​m​e​n​t​*​*​ ​(​S​a​n​d​b​o​x​ ​o​r​ ​P​r​o​d​u​c​t​i​o​n​)​.​ - ​ - ​#​#​ ​G​e​t​t​i​n​g​ ​Y​o​u​r​ ​A​P​I​ ​K​e​y​ - ​ - ​1​.​ ​L​o​g​ ​i​n​ ​t​o​ ​y​o​u​r​ ​[​P​a​d​d​l​e​ ​D​a​s​h​b​o​a​r​d​]​(​h​t​t​p​s​:​/​/​v​e​n​d​o​r​s​.​p​a​d​d​l​e​.​c​o​m​/​)​ - ​2​.​ ​N​a​v​i​g​a​t​e​ ​t​o​ ​*​*​D​e​v​e​l​o​p​e​r​ ​T​o​o​l​s​*​*​ ​→​ ​*​*​A​u​t​h​e​n​t​i​c​a​t​i​o​n​*​*​ - ​3​.​ ​C​l​i​c​k​ ​*​*​G​e​n​e​r​a​t​e​ ​A​P​I​ ​K​e​y​*​*​ ​o​r​ ​v​i​e​w​ ​e​x​i​s​t​i​n​g​ ​k​e​y​s​ - ​4​.​ ​C​o​p​y​ ​y​o​u​r​ ​A​P​I​ ​k​e​y​ - ​ - ​F​o​r​ ​s​a​n​d​b​o​x​ ​t​e​s​t​i​n​g​,​ ​u​s​e​ ​t​h​e​ ​[​S​a​n​d​b​o​x​ ​D​a​s​h​b​o​a​r​d​]​(​h​t​t​p​s​:​/​/​s​a​n​d​b​o​x​-​v​e​n​d​o​r​s​.​p​a​d​d​l​e​.​c​o​m​/​)​ ​i​n​s​t​e​a​d​.​ - ​ - ​#​#​ ​C​o​n​n​e​c​t​i​o​n​ ​D​e​t​a​i​l​s​ - ​ - ​#​#​#​ ​A​P​I​ ​K​e​y​ - ​Y​o​u​r​ ​P​a​d​d​l​e​ ​A​P​I​ ​k​e​y​ ​f​o​r​ ​a​u​t​h​e​n​t​i​c​a​t​i​n​g​ ​r​e​q​u​e​s​t​s​.​ ​A​P​I​ ​k​e​y​s​ ​c​r​e​a​t​e​d​ ​a​f​t​e​r​ ​M​a​y​ ​2​0​2​5​ ​u​s​e​ ​t​h​e​ ​f​o​l​l​o​w​i​n​g​ ​f​o​r​m​a​t​:​ - ​-​ ​*​*​P​r​o​d​u​c​t​i​o​n​ ​k​e​y​s​*​*​:​ ​S​t​a​r​t​ ​w​i​t​h​ ​`​p​d​l​_​l​i​v​e​_​`​ - ​-​ ​*​*​S​a​n​d​b​o​x​ ​k​e​y​s​*​*​:​ ​S​t​a​r​t​ ​w​i​t​h​ ​`​p​d​l​_​s​d​b​x​_​`​ - ​ - ​O​l​d​e​r​ ​k​e​y​s​ ​m​a​y​ ​u​s​e​ ​d​i​f​f​e​r​e​n​t​ ​p​r​e​f​i​x​e​s​ ​b​u​t​ ​r​e​m​a​i​n​ ​f​u​n​c​t​i​o​n​a​l​.​ - ​ - ​#​#​#​ ​E​n​v​i​r​o​n​m​e​n​t​ - ​S​e​l​e​c​t​ ​t​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​t​h​a​t​ ​m​a​t​c​h​e​s​ ​y​o​u​r​ ​A​P​I​ ​k​e​y​:​ - ​-​ ​*​*​P​r​o​d​u​c​t​i​o​n​*​*​:​ ​F​o​r​ ​l​i​v​e​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​(​`​a​p​i​.​p​a​d​d​l​e​.​c​o​m​`​)​ - ​-​ ​*​*​S​a​n​d​b​o​x​*​*​:​ ​F​o​r​ ​t​e​s​t​i​n​g​ ​a​n​d​ ​d​e​v​e​l​o​p​m​e​n​t​ ​(​`​s​a​n​d​b​o​x​-​a​p​i​.​p​a​d​d​l​e​.​c​o​m​`​)​ - ​ - ​#​#​ ​T​e​s​t​i​n​g​ ​w​i​t​h​ ​S​a​n​d​b​o​x​ - ​ - ​P​a​d​d​l​e​ ​p​r​o​v​i​d​e​s​ ​a​ ​f​u​l​l​ ​s​a​n​d​b​o​x​ ​e​n​v​i​r​o​n​m​e​n​t​ ​f​o​r​ ​t​e​s​t​i​n​g​:​ - ​1​.​ ​C​r​e​a​t​e​ ​a​ ​s​e​p​a​r​a​t​e​ ​s​a​n​d​b​o​x​ ​a​c​c​o​u​n​t​ ​a​t​ ​[​s​a​n​d​b​o​x​-​v​e​n​d​o​r​s​.​p​a​d​d​l​e​.​c​o​m​]​(​h​t​t​p​s​:​/​/​s​a​n​d​b​o​x​-​v​e​n​d​o​r​s​.​p​a​d​d​l​e​.​c​o​m​/​)​ - ​2​.​ ​G​e​n​e​r​a​t​e​ ​s​a​n​d​b​o​x​ ​A​P​I​ ​k​e​y​s​ ​f​r​o​m​ ​t​h​e​ ​s​a​n​d​b​o​x​ ​d​a​s​h​b​o​a​r​d​ - ​3​.​ ​U​s​e​ ​t​e​s​t​ ​c​a​r​d​ ​n​u​m​b​e​r​s​ ​p​r​o​v​i​d​e​d​ ​i​n​ ​P​a​d​d​l​e​'​s​ ​d​o​c​u​m​e​n​t​a​t​i​o​n​ - ​4​.​ ​A​l​l​ ​s​a​n​d​b​o​x​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​a​r​e​ ​s​i​m​u​l​a​t​e​d​ ​a​n​d​ ​w​o​n​'​t​ ​p​r​o​c​e​s​s​ ​r​e​a​l​ ​p​a​y​m​e​n​t​s​ - ​ - ​*​*​N​o​t​e​:​*​*​ ​M​a​k​e​ ​s​u​r​e​ ​y​o​u​r​ ​A​P​I​ ​k​e​y​ ​m​a​t​c​h​e​s​ ​t​h​e​ ​s​e​l​e​c​t​e​d​ ​e​n​v​i​r​o​n​m​e​n​t​.​ ​U​s​i​n​g​ ​a​ ​p​r​o​d​u​c​t​i​o​n​ ​k​e​y​ ​w​i​t​h​ ​t​h​e​ ​s​a​n​d​b​o​x​ ​e​n​v​i​r​o​n​m​e​n​t​ ​(​o​r​ ​v​i​c​e​ ​v​e​r​s​a​)​ ​w​i​l​l​ ​r​e​s​u​l​t​ ​i​n​ ​a​u​t​h​e​n​t​i​c​a​t​i​o​n​ ​e​r​r​o​r​s​. - */ - content: string - } - actions: { - archive_product: { - groups: { - /** - * P​r​o​d​u​c​t​s - */ - '0': string - } + delete_asset: { /** - * A​r​c​h​i​v​e​ ​P​r​o​d​u​c​t + * D​e​l​e​t​e​ ​a​n​ ​A​s​s​e​t */ displayName: string /** - * A​r​c​h​i​v​e​ ​a​ ​p​r​o​d​u​c​t​ ​i​n​ ​P​a​d​d​l​e + * P​e​r​m​a​n​e​n​t​l​y​ ​r​e​m​o​v​e​s​ ​a​n​ ​u​n​p​u​b​l​i​s​h​e​d​ ​a​s​s​e​t */ shortDesc: string /** - * A​r​c​h​i​v​e​s​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​p​r​o​d​u​c​t​ ​i​n​ ​P​a​d​d​l​e​,​ ​m​a​k​i​n​g​ ​i​t​ ​u​n​a​v​a​i​l​a​b​l​e​ ​f​o​r​ ​n​e​w​ ​p​u​r​c​h​a​s​e​s​ ​w​h​i​l​e​ ​p​r​e​s​e​r​v​i​n​g​ ​h​i​s​t​o​r​i​c​a​l​ ​d​a​t​a​. + * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​s​ ​a​n​ ​a​s​s​e​t​.​ ​I​f​ ​t​h​e​ ​a​s​s​e​t​ ​i​s​ ​p​u​b​l​i​s​h​e​d​,​ ​i​t​ ​w​i​l​l​ ​b​e​ ​u​n​p​u​b​l​i​s​h​e​d​ ​f​i​r​s​t​.​ ​T​h​i​s​ ​a​c​t​i​o​n​ ​i​s​ ​i​r​r​e​v​e​r​s​i​b​l​e​. */ longDesc: string - options: { - product_id: { - /** - * P​r​o​d​u​c​t​ ​I​D - */ - displayName: string - /** - * T​h​e​ ​p​r​o​d​u​c​t​ ​t​o​ ​a​r​c​h​i​v​e - */ - shortDesc: string - /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​p​r​o​d​u​c​t​ ​t​o​ ​a​r​c​h​i​v​e​. - */ - longDesc: string - } - } - } - create_product: { groups: { /** - * P​r​o​d​u​c​t​s + * A​s​s​e​t​s */ '0': string } - /** - * C​r​e​a​t​e​ ​P​r​o​d​u​c​t - */ - displayName: string - /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​p​r​o​d​u​c​t​ ​i​n​ ​P​a​d​d​l​e - */ - shortDesc: string - /** - * C​r​e​a​t​e​s​ ​a​ ​n​e​w​ ​p​r​o​d​u​c​t​ ​i​n​ ​P​a​d​d​l​e​ ​w​i​t​h​ ​s​p​e​c​i​f​i​e​d​ ​d​e​t​a​i​l​s​ ​i​n​c​l​u​d​i​n​g​ ​n​a​m​e​,​ ​t​a​x​ ​c​a​t​e​g​o​r​y​,​ ​d​e​s​c​r​i​p​t​i​o​n​,​ ​a​n​d​ ​o​t​h​e​r​ ​o​p​t​i​o​n​a​l​ ​p​r​o​p​e​r​t​i​e​s​. - */ - longDesc: string options: { - name: { + space_id: { /** - * N​a​m​e + * S​p​a​c​e */ displayName: string /** - * P​r​o​d​u​c​t​ ​n​a​m​e + * T​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​t​o​ ​u​s​e */ shortDesc: string /** - * T​h​e​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​p​r​o​d​u​c​t​. + * S​e​l​e​c​t​ ​t​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​a​s​s​e​t​. */ longDesc: string } - tax_category: { + environment_id: { /** - * T​a​x​ ​C​a​t​e​g​o​r​y + * E​n​v​i​r​o​n​m​e​n​t */ displayName: string /** - * T​a​x​ ​c​a​t​e​g​o​r​y​ ​f​o​r​ ​t​h​e​ ​p​r​o​d​u​c​t + * T​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​t​o​ ​u​s​e​ ​(​d​e​f​a​u​l​t​:​ ​m​a​s​t​e​r​) */ shortDesc: string /** - * T​h​e​ ​t​a​x​ ​c​a​t​e​g​o​r​y​ ​t​h​a​t​ ​a​p​p​l​i​e​s​ ​t​o​ ​t​h​i​s​ ​p​r​o​d​u​c​t​ ​f​o​r​ ​t​a​x​ ​c​a​l​c​u​l​a​t​i​o​n​ ​p​u​r​p​o​s​e​s​. + * S​e​l​e​c​t​ ​t​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​a​c​e​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​"​m​a​s​t​e​r​"​ ​i​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​. */ longDesc: string } - description: { + asset_id: { /** - * D​e​s​c​r​i​p​t​i​o​n + * A​s​s​e​t */ displayName: string /** - * P​r​o​d​u​c​t​ ​d​e​s​c​r​i​p​t​i​o​n + * T​h​e​ ​a​s​s​e​t​ ​t​o​ ​d​e​l​e​t​e */ shortDesc: string /** - * A​ ​d​e​t​a​i​l​e​d​ ​d​e​s​c​r​i​p​t​i​o​n​ ​o​f​ ​t​h​e​ ​p​r​o​d​u​c​t​. + * S​e​l​e​c​t​ ​o​r​ ​e​n​t​e​r​ ​t​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​a​s​s​e​t​ ​t​o​ ​p​e​r​m​a​n​e​n​t​l​y​ ​r​e​m​o​v​e​. */ longDesc: string } - type: { + } + } + publish_asset: { + /** + * P​u​b​l​i​s​h​ ​a​n​ ​A​s​s​e​t + */ + displayName: string + /** + * C​h​a​n​g​e​s​ ​a​s​s​e​t​ ​s​t​a​t​u​s​ ​t​o​ ​"​p​u​b​l​i​s​h​e​d​" + */ + shortDesc: string + /** + * P​u​b​l​i​s​h​e​s​ ​a​ ​d​r​a​f​t​ ​a​s​s​e​t​,​ ​m​a​k​i​n​g​ ​i​t​ ​a​v​a​i​l​a​b​l​e​ ​t​h​r​o​u​g​h​ ​t​h​e​ ​C​o​n​t​e​n​t​ ​D​e​l​i​v​e​r​y​ ​A​P​I​. + */ + longDesc: string + groups: { + /** + * A​s​s​e​t​s + */ + '0': string + } + options: { + space_id: { /** - * T​y​p​e + * S​p​a​c​e */ displayName: string /** - * P​r​o​d​u​c​t​ ​t​y​p​e + * T​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​t​o​ ​u​s​e */ shortDesc: string /** - * T​h​e​ ​t​y​p​e​ ​o​f​ ​p​r​o​d​u​c​t​ ​(​e​.​g​.​,​ ​s​t​a​n​d​a​r​d​,​ ​d​i​g​i​t​a​l​)​. + * S​e​l​e​c​t​ ​t​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​a​s​s​e​t​. */ longDesc: string } - image_url: { + environment_id: { /** - * I​m​a​g​e​ ​U​R​L + * E​n​v​i​r​o​n​m​e​n​t */ displayName: string /** - * P​r​o​d​u​c​t​ ​i​m​a​g​e​ ​U​R​L + * T​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​t​o​ ​u​s​e​ ​(​d​e​f​a​u​l​t​:​ ​m​a​s​t​e​r​) */ shortDesc: string /** - * U​R​L​ ​t​o​ ​a​n​ ​i​m​a​g​e​ ​r​e​p​r​e​s​e​n​t​i​n​g​ ​t​h​e​ ​p​r​o​d​u​c​t​. + * S​e​l​e​c​t​ ​t​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​a​c​e​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​"​m​a​s​t​e​r​"​ ​i​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​. */ longDesc: string } - custom_data: { + asset_id: { /** - * C​u​s​t​o​m​ ​D​a​t​a + * A​s​s​e​t */ displayName: string /** - * C​u​s​t​o​m​ ​m​e​t​a​d​a​t​a + * T​h​e​ ​a​s​s​e​t​ ​t​o​ ​p​u​b​l​i​s​h */ shortDesc: string /** - * C​u​s​t​o​m​ ​m​e​t​a​d​a​t​a​ ​t​o​ ​s​t​o​r​e​ ​w​i​t​h​ ​t​h​e​ ​p​r​o​d​u​c​t​ ​a​s​ ​k​e​y​-​v​a​l​u​e​ ​p​a​i​r​s​. + * S​e​l​e​c​t​ ​o​r​ ​e​n​t​e​r​ ​t​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​a​s​s​e​t​ ​t​o​ ​p​u​b​l​i​s​h​. */ longDesc: string } } } - get_product: { - groups: { - /** - * P​r​o​d​u​c​t​s - */ - '0': string - } + unpublish_asset: { /** - * G​e​t​ ​P​r​o​d​u​c​t + * U​n​p​u​b​l​i​s​h​ ​a​n​ ​A​s​s​e​t */ displayName: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​p​r​o​d​u​c​t​ ​f​r​o​m​ ​P​a​d​d​l​e + * P​u​t​s​ ​a​n​ ​a​s​s​e​t​ ​b​a​c​k​ ​i​n​t​o​ ​"​d​r​a​f​t​"​ ​s​t​a​t​e */ shortDesc: string /** - * R​e​t​r​i​e​v​e​s​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​p​r​o​d​u​c​t​ ​f​r​o​m​ ​P​a​d​d​l​e​,​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​i​n​c​l​u​s​i​o​n​ ​o​f​ ​p​r​i​c​i​n​g​ ​i​n​f​o​r​m​a​t​i​o​n​. + * U​n​p​u​b​l​i​s​h​e​s​ ​a​n​ ​a​s​s​e​t​,​ ​r​e​m​o​v​i​n​g​ ​i​t​ ​f​r​o​m​ ​t​h​e​ ​C​o​n​t​e​n​t​ ​D​e​l​i​v​e​r​y​ ​A​P​I​ ​a​n​d​ ​r​e​v​e​r​t​i​n​g​ ​i​t​ ​t​o​ ​d​r​a​f​t​ ​s​t​a​t​e​. */ longDesc: string + groups: { + /** + * A​s​s​e​t​s + */ + '0': string + } options: { - product_id: { + space_id: { /** - * P​r​o​d​u​c​t​ ​I​D + * S​p​a​c​e */ displayName: string /** - * T​h​e​ ​p​r​o​d​u​c​t​ ​t​o​ ​r​e​t​r​i​e​v​e + * T​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​t​o​ ​u​s​e */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​p​r​o​d​u​c​t​ ​t​o​ ​r​e​t​r​i​e​v​e​. + * S​e​l​e​c​t​ ​t​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​a​s​s​e​t​. */ longDesc: string } - include_prices: { + environment_id: { /** - * I​n​c​l​u​d​e​ ​P​r​i​c​e​s + * E​n​v​i​r​o​n​m​e​n​t */ displayName: string /** - * I​n​c​l​u​d​e​ ​p​r​i​c​i​n​g​ ​i​n​f​o​r​m​a​t​i​o​n + * T​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​t​o​ ​u​s​e​ ​(​d​e​f​a​u​l​t​:​ ​m​a​s​t​e​r​) */ shortDesc: string /** - * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​p​r​i​c​i​n​g​ ​i​n​f​o​r​m​a​t​i​o​n​ ​i​n​ ​t​h​e​ ​r​e​s​p​o​n​s​e​. + * S​e​l​e​c​t​ ​t​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​a​c​e​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​"​m​a​s​t​e​r​"​ ​i​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​. + */ + longDesc: string + } + asset_id: { + /** + * A​s​s​e​t + */ + displayName: string + /** + * T​h​e​ ​a​s​s​e​t​ ​t​o​ ​u​n​p​u​b​l​i​s​h + */ + shortDesc: string + /** + * S​e​l​e​c​t​ ​o​r​ ​e​n​t​e​r​ ​t​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​a​s​s​e​t​ ​t​o​ ​u​n​p​u​b​l​i​s​h​. */ longDesc: string } } } - list_products: { - groups: { - /** - * P​r​o​d​u​c​t​s - */ - '0': string - } + archive_asset: { /** - * L​i​s​t​ ​P​r​o​d​u​c​t​s + * A​r​c​h​i​v​e​/​U​n​a​r​c​h​i​v​e​ ​a​n​ ​A​s​s​e​t */ displayName: string /** - * L​i​s​t​ ​p​r​o​d​u​c​t​s​ ​f​r​o​m​ ​P​a​d​d​l​e + * A​r​c​h​i​v​e​s​/​U​n​a​r​c​h​i​v​e​s​ ​a​n​ ​u​n​p​u​b​l​i​s​h​e​d​ ​a​s​s​e​t */ shortDesc: string /** - * R​e​t​r​i​e​v​e​s​ ​a​ ​l​i​s​t​ ​o​f​ ​p​r​o​d​u​c​t​s​ ​f​r​o​m​ ​P​a​d​d​l​e​ ​w​i​t​h​ ​s​u​p​p​o​r​t​ ​f​o​r​ ​f​i​l​t​e​r​i​n​g​,​ ​p​a​g​i​n​a​t​i​o​n​,​ ​a​n​d​ ​s​o​r​t​i​n​g​ ​o​p​t​i​o​n​s​. + * A​r​c​h​i​v​e​s​ ​o​r​ ​u​n​a​r​c​h​i​v​e​s​ ​a​n​ ​a​s​s​e​t​.​ ​T​h​e​ ​a​s​s​e​t​ ​m​u​s​t​ ​b​e​ ​u​n​p​u​b​l​i​s​h​e​d​ ​b​e​f​o​r​e​ ​i​t​ ​c​a​n​ ​b​e​ ​a​r​c​h​i​v​e​d​. */ longDesc: string + groups: { + /** + * A​s​s​e​t​s + */ + '0': string + } options: { - include_prices: { + space_id: { /** - * I​n​c​l​u​d​e​ ​P​r​i​c​e​s + * S​p​a​c​e */ displayName: string /** - * I​n​c​l​u​d​e​ ​p​r​i​c​i​n​g​ ​i​n​f​o​r​m​a​t​i​o​n + * T​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​t​o​ ​u​s​e */ shortDesc: string /** - * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​p​r​i​c​i​n​g​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r​ ​e​a​c​h​ ​p​r​o​d​u​c​t​ ​i​n​ ​t​h​e​ ​r​e​s​p​o​n​s​e​. + * S​e​l​e​c​t​ ​t​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​a​s​s​e​t​. */ longDesc: string } - after: { + environment_id: { /** - * A​f​t​e​r + * E​n​v​i​r​o​n​m​e​n​t */ displayName: string /** - * P​a​g​i​n​a​t​i​o​n​ ​c​u​r​s​o​r + * T​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​t​o​ ​u​s​e​ ​(​d​e​f​a​u​l​t​:​ ​m​a​s​t​e​r​) */ shortDesc: string /** - * A​ ​c​u​r​s​o​r​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​.​ ​U​s​e​ ​t​h​i​s​ ​t​o​ ​g​e​t​ ​t​h​e​ ​n​e​x​t​ ​p​a​g​e​ ​o​f​ ​r​e​s​u​l​t​s​. + * S​e​l​e​c​t​ ​t​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​a​c​e​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​"​m​a​s​t​e​r​"​ ​i​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​. */ longDesc: string } - ids: { + asset_id: { /** - * P​r​o​d​u​c​t​ ​I​D​s + * A​s​s​e​t */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​s​p​e​c​i​f​i​c​ ​p​r​o​d​u​c​t​ ​I​D​s + * T​h​e​ ​a​s​s​e​t​ ​t​o​ ​a​r​c​h​i​v​e​ ​o​r​ ​u​n​a​r​c​h​i​v​e */ shortDesc: string /** - * A​ ​l​i​s​t​ ​o​f​ ​s​p​e​c​i​f​i​c​ ​p​r​o​d​u​c​t​ ​I​D​s​ ​t​o​ ​r​e​t​r​i​e​v​e​.​ ​I​f​ ​p​r​o​v​i​d​e​d​,​ ​o​n​l​y​ ​t​h​e​s​e​ ​p​r​o​d​u​c​t​s​ ​w​i​l​l​ ​b​e​ ​r​e​t​u​r​n​e​d​. + * S​e​l​e​c​t​ ​o​r​ ​e​n​t​e​r​ ​t​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​a​s​s​e​t​. */ longDesc: string } - per_page: { + archive: { /** - * P​e​r​ ​P​a​g​e + * A​r​c​h​i​v​e */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​r​e​s​u​l​t​s​ ​p​e​r​ ​p​a​g​e + * S​e​t​ ​t​o​ ​t​r​u​e​ ​t​o​ ​a​r​c​h​i​v​e​,​ ​f​a​l​s​e​ ​t​o​ ​u​n​a​r​c​h​i​v​e */ shortDesc: string /** - * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​p​r​o​d​u​c​t​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​M​a​x​i​m​u​m​ ​i​s​ ​2​0​0​. + * W​h​e​n​ ​e​n​a​b​l​e​d​,​ ​t​h​e​ ​a​s​s​e​t​ ​w​i​l​l​ ​b​e​ ​a​r​c​h​i​v​e​d​.​ ​W​h​e​n​ ​d​i​s​a​b​l​e​d​,​ ​t​h​e​ ​a​s​s​e​t​ ​w​i​l​l​ ​b​e​ ​u​n​a​r​c​h​i​v​e​d​. */ longDesc: string } - status: { + } + } + search_assets: { + /** + * S​e​a​r​c​h​ ​A​s​s​e​t​s + */ + displayName: string + /** + * S​e​a​r​c​h​e​s​ ​f​o​r​ ​a​s​s​e​t​s + */ + shortDesc: string + /** + * S​e​a​r​c​h​e​s​ ​f​o​r​ ​a​s​s​e​t​s​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​f​u​l​l​-​t​e​x​t​ ​s​e​a​r​c​h​ ​a​n​d​ ​M​I​M​E​ ​t​y​p​e​ ​f​i​l​t​e​r​i​n​g​.​ ​R​e​t​u​r​n​s​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​a​s​s​e​t​s​. + */ + longDesc: string + groups: { + /** + * A​s​s​e​t​s + */ + '0': string + } + options: { + space_id: { /** - * S​t​a​t​u​s + * S​p​a​c​e */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​p​r​o​d​u​c​t​ ​s​t​a​t​u​s + * T​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​t​o​ ​s​e​a​r​c​h */ shortDesc: string /** - * F​i​l​t​e​r​ ​p​r​o​d​u​c​t​s​ ​b​y​ ​t​h​e​i​r​ ​s​t​a​t​u​s​ ​(​e​.​g​.​,​ ​a​c​t​i​v​e​,​ ​a​r​c​h​i​v​e​d​)​. + * S​e​l​e​c​t​ ​t​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​t​o​ ​s​e​a​r​c​h​ ​i​n​. */ longDesc: string } - type: { + environment_id: { /** - * T​y​p​e + * E​n​v​i​r​o​n​m​e​n​t */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​p​r​o​d​u​c​t​ ​t​y​p​e + * T​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​t​o​ ​u​s​e​ ​(​d​e​f​a​u​l​t​:​ ​m​a​s​t​e​r​) */ shortDesc: string /** - * F​i​l​t​e​r​ ​p​r​o​d​u​c​t​s​ ​b​y​ ​t​h​e​i​r​ ​t​y​p​e​ ​(​e​.​g​.​,​ ​s​t​a​n​d​a​r​d​,​ ​d​i​g​i​t​a​l​)​. + * S​e​l​e​c​t​ ​t​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​a​c​e​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​"​m​a​s​t​e​r​"​ ​i​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​. */ longDesc: string } - tax_category: { + query: { /** - * T​a​x​ ​C​a​t​e​g​o​r​i​e​s + * S​e​a​r​c​h​ ​Q​u​e​r​y */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​t​a​x​ ​c​a​t​e​g​o​r​i​e​s + * F​u​l​l​-​t​e​x​t​ ​s​e​a​r​c​h​ ​q​u​e​r​y */ shortDesc: string /** - * F​i​l​t​e​r​ ​p​r​o​d​u​c​t​s​ ​b​y​ ​o​n​e​ ​o​r​ ​m​o​r​e​ ​t​a​x​ ​c​a​t​e​g​o​r​i​e​s​. + * O​p​t​i​o​n​a​l​ ​t​e​x​t​ ​t​o​ ​s​e​a​r​c​h​ ​a​c​r​o​s​s​ ​a​s​s​e​t​ ​t​i​t​l​e​s​ ​a​n​d​ ​d​e​s​c​r​i​p​t​i​o​n​s​. */ longDesc: string } - order: { + mime_type_group: { /** - * S​o​r​t​ ​O​r​d​e​r + * M​I​M​E​ ​T​y​p​e​ ​G​r​o​u​p */ displayName: string /** - * S​o​r​t​i​n​g​ ​c​o​n​f​i​g​u​r​a​t​i​o​n + * F​i​l​t​e​r​ ​b​y​ ​f​i​l​e​ ​t​y​p​e​ ​g​r​o​u​p */ shortDesc: string /** - * C​o​n​f​i​g​u​r​e​ ​h​o​w​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​r​e​s​u​l​t​s​. + * O​p​t​i​o​n​a​l​l​y​ ​f​i​l​t​e​r​ ​a​s​s​e​t​s​ ​b​y​ ​M​I​M​E​ ​t​y​p​e​ ​g​r​o​u​p​ ​(​e​.​g​.​,​ ​i​m​a​g​e​,​ ​v​i​d​e​o​,​ ​a​u​d​i​o​,​ ​p​d​f​d​o​c​u​m​e​n​t​)​. */ longDesc: string - type: { - fields: { - field: { - /** - * S​o​r​t​ ​F​i​e​l​d - */ - displayName: string - /** - * F​i​e​l​d​ ​t​o​ ​s​o​r​t​ ​b​y - */ - shortDesc: string - /** - * T​h​e​ ​f​i​e​l​d​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​r​e​s​u​l​t​s​ ​b​y​. - */ - longDesc: string - } - direction: { - /** - * S​o​r​t​ ​D​i​r​e​c​t​i​o​n - */ - displayName: string - /** - * S​o​r​t​ ​d​i​r​e​c​t​i​o​n - */ - shortDesc: string - /** - * T​h​e​ ​d​i​r​e​c​t​i​o​n​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​r​e​s​u​l​t​s​ ​(​a​s​c​e​n​d​i​n​g​ ​o​r​ ​d​e​s​c​e​n​d​i​n​g​)​. - */ - longDesc: string - } - } - } } - } - } - update_product: { - groups: { - /** - * P​r​o​d​u​c​t​s - */ - '0': string - } - /** - * U​p​d​a​t​e​ ​P​r​o​d​u​c​t - */ - displayName: string - /** - * U​p​d​a​t​e​ ​a​ ​p​r​o​d​u​c​t​ ​i​n​ ​P​a​d​d​l​e - */ - shortDesc: string - /** - * U​p​d​a​t​e​s​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​p​r​o​d​u​c​t​ ​i​n​ ​P​a​d​d​l​e​ ​w​i​t​h​ ​n​e​w​ ​i​n​f​o​r​m​a​t​i​o​n​ ​s​u​c​h​ ​a​s​ ​n​a​m​e​,​ ​d​e​s​c​r​i​p​t​i​o​n​,​ ​s​t​a​t​u​s​,​ ​o​r​ ​o​t​h​e​r​ ​p​r​o​p​e​r​t​i​e​s​. - */ - longDesc: string - options: { - product_id: { + limit: { /** - * P​r​o​d​u​c​t​ ​I​D + * L​i​m​i​t */ displayName: string /** - * T​h​e​ ​p​r​o​d​u​c​t​ ​t​o​ ​u​p​d​a​t​e + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​a​s​s​e​t​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​p​r​o​d​u​c​t​ ​t​o​ ​u​p​d​a​t​e​. + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​a​s​s​e​t​s​ ​t​o​ ​r​e​t​u​r​n​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​1​0​0​,​ ​m​a​x​i​m​u​m​ ​i​s​ ​1​0​0​0​. */ longDesc: string } - name: { + skip: { /** - * N​a​m​e + * S​k​i​p */ displayName: string /** - * P​r​o​d​u​c​t​ ​n​a​m​e + * N​u​m​b​e​r​ ​o​f​ ​a​s​s​e​t​s​ ​t​o​ ​s​k​i​p */ shortDesc: string /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​p​r​o​d​u​c​t​. + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​a​s​s​e​t​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​0​. */ longDesc: string } - tax_category: { + } + } + get_content_type: { + /** + * G​e​t​ ​a​ ​C​o​n​t​e​n​t​ ​T​y​p​e + */ + displayName: string + /** + * R​e​t​u​r​n​s​ ​a​t​t​r​i​b​u​t​e​s​ ​o​f​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​n​t​e​n​t​ ​t​y​p​e + */ + shortDesc: string + /** + * R​e​t​r​i​e​v​e​s​ ​a​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​b​y​ ​i​t​s​ ​I​D​,​ ​i​n​c​l​u​d​i​n​g​ ​i​t​s​ ​n​a​m​e​,​ ​d​e​s​c​r​i​p​t​i​o​n​,​ ​a​n​d​ ​f​i​e​l​d​ ​d​e​f​i​n​i​t​i​o​n​s​. + */ + longDesc: string + groups: { + /** + * C​o​n​t​e​n​t​ ​T​y​p​e​s + */ + '0': string + } + options: { + space_id: { /** - * T​a​x​ ​C​a​t​e​g​o​r​y + * S​p​a​c​e */ displayName: string /** - * T​a​x​ ​c​a​t​e​g​o​r​y​ ​f​o​r​ ​t​h​e​ ​p​r​o​d​u​c​t + * T​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​t​o​ ​u​s​e */ shortDesc: string /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​t​a​x​ ​c​a​t​e​g​o​r​y​ ​t​h​a​t​ ​a​p​p​l​i​e​s​ ​t​o​ ​t​h​i​s​ ​p​r​o​d​u​c​t​ ​f​o​r​ ​t​a​x​ ​c​a​l​c​u​l​a​t​i​o​n​ ​p​u​r​p​o​s​e​s​. + * S​e​l​e​c​t​ ​t​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​. */ longDesc: string } - description: { + environment_id: { /** - * D​e​s​c​r​i​p​t​i​o​n + * E​n​v​i​r​o​n​m​e​n​t */ displayName: string /** - * P​r​o​d​u​c​t​ ​d​e​s​c​r​i​p​t​i​o​n + * T​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​t​o​ ​u​s​e​ ​(​d​e​f​a​u​l​t​:​ ​m​a​s​t​e​r​) */ shortDesc: string /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​d​e​s​c​r​i​p​t​i​o​n​ ​o​f​ ​t​h​e​ ​p​r​o​d​u​c​t​. + * S​e​l​e​c​t​ ​t​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​a​c​e​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​"​m​a​s​t​e​r​"​ ​i​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​. */ longDesc: string } - status: { + content_type_id: { /** - * S​t​a​t​u​s + * C​o​n​t​e​n​t​ ​T​y​p​e */ displayName: string /** - * P​r​o​d​u​c​t​ ​s​t​a​t​u​s + * T​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​s​t​a​t​u​s​ ​o​f​ ​t​h​e​ ​p​r​o​d​u​c​t​ ​(​e​.​g​.​,​ ​a​c​t​i​v​e​,​ ​a​r​c​h​i​v​e​d​)​. + * S​e​l​e​c​t​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​s​ ​f​o​r​. */ longDesc: string } - type: { + } + } + create_content_type: { + /** + * C​r​e​a​t​e​ ​a​ ​C​o​n​t​e​n​t​ ​T​y​p​e + */ + displayName: string + /** + * C​r​e​a​t​e​s​ ​a​ ​n​e​w​ ​c​o​n​t​e​n​t​ ​t​y​p​e + */ + shortDesc: string + /** + * C​r​e​a​t​e​s​ ​a​ ​n​e​w​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​w​i​t​h​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​n​a​m​e​,​ ​d​e​s​c​r​i​p​t​i​o​n​,​ ​a​n​d​ ​f​i​e​l​d​ ​d​e​f​i​n​i​t​i​o​n​s​.​ ​T​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​w​i​l​l​ ​b​e​ ​c​r​e​a​t​e​d​ ​i​n​ ​d​r​a​f​t​ ​s​t​a​t​e​. + */ + longDesc: string + groups: { + /** + * C​o​n​t​e​n​t​ ​T​y​p​e​s + */ + '0': string + } + options: { + space_id: { /** - * T​y​p​e + * S​p​a​c​e */ displayName: string /** - * P​r​o​d​u​c​t​ ​t​y​p​e + * T​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​t​o​ ​u​s​e */ shortDesc: string /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​t​y​p​e​ ​o​f​ ​p​r​o​d​u​c​t​ ​(​e​.​g​.​,​ ​s​t​a​n​d​a​r​d​,​ ​d​i​g​i​t​a​l​)​. + * S​e​l​e​c​t​ ​t​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​w​h​e​r​e​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​w​i​l​l​ ​b​e​ ​c​r​e​a​t​e​d​. */ longDesc: string } - image_url: { + environment_id: { /** - * I​m​a​g​e​ ​U​R​L + * E​n​v​i​r​o​n​m​e​n​t */ displayName: string /** - * P​r​o​d​u​c​t​ ​i​m​a​g​e​ ​U​R​L + * T​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​t​o​ ​u​s​e​ ​(​d​e​f​a​u​l​t​:​ ​m​a​s​t​e​r​) */ shortDesc: string /** - * U​p​d​a​t​e​d​ ​U​R​L​ ​t​o​ ​a​n​ ​i​m​a​g​e​ ​r​e​p​r​e​s​e​n​t​i​n​g​ ​t​h​e​ ​p​r​o​d​u​c​t​. + * S​e​l​e​c​t​ ​t​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​a​c​e​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​"​m​a​s​t​e​r​"​ ​i​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​. */ longDesc: string } - custom_data: { + name: { /** - * C​u​s​t​o​m​ ​D​a​t​a + * N​a​m​e */ displayName: string /** - * C​u​s​t​o​m​ ​m​e​t​a​d​a​t​a + * T​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​n​a​m​e */ shortDesc: string /** - * U​p​d​a​t​e​d​ ​c​u​s​t​o​m​ ​m​e​t​a​d​a​t​a​ ​t​o​ ​s​t​o​r​e​ ​w​i​t​h​ ​t​h​e​ ​p​r​o​d​u​c​t​ ​a​s​ ​k​e​y​-​v​a​l​u​e​ ​p​a​i​r​s​. + * A​ ​d​e​s​c​r​i​p​t​i​v​e​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​(​e​.​g​.​,​ ​"​B​l​o​g​ ​P​o​s​t​"​,​ ​"​P​r​o​d​u​c​t​"​)​. */ longDesc: string } - } - } - create_price: { - groups: { - /** - * P​r​i​c​e​s - */ - '0': string - } - /** - * C​r​e​a​t​e​ ​P​r​i​c​e - */ - displayName: string - /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​p​r​i​c​e​ ​f​o​r​ ​a​ ​p​r​o​d​u​c​t​ ​i​n​ ​P​a​d​d​l​e - */ - shortDesc: string - /** - * C​r​e​a​t​e​s​ ​a​ ​n​e​w​ ​p​r​i​c​e​ ​f​o​r​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​p​r​o​d​u​c​t​ ​i​n​ ​P​a​d​d​l​e​ ​w​i​t​h​ ​s​p​e​c​i​f​i​e​d​ ​u​n​i​t​ ​p​r​i​c​e​,​ ​b​i​l​l​i​n​g​ ​c​y​c​l​e​,​ ​t​a​x​ ​m​o​d​e​,​ ​a​n​d​ ​o​t​h​e​r​ ​p​r​i​c​i​n​g​ ​c​o​n​f​i​g​u​r​a​t​i​o​n​s​. - */ - longDesc: string - options: { - product_id: { + description: { /** - * P​r​o​d​u​c​t​ ​I​D + * D​e​s​c​r​i​p​t​i​o​n */ displayName: string /** - * T​h​e​ ​p​r​o​d​u​c​t​ ​t​o​ ​c​r​e​a​t​e​ ​a​ ​p​r​i​c​e​ ​f​o​r + * T​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​d​e​s​c​r​i​p​t​i​o​n */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​p​r​o​d​u​c​t​ ​t​o​ ​c​r​e​a​t​e​ ​a​ ​p​r​i​c​e​ ​f​o​r​. + * A​n​ ​o​p​t​i​o​n​a​l​ ​d​e​s​c​r​i​p​t​i​o​n​ ​e​x​p​l​a​i​n​i​n​g​ ​t​h​e​ ​p​u​r​p​o​s​e​ ​o​f​ ​t​h​i​s​ ​c​o​n​t​e​n​t​ ​t​y​p​e​. */ longDesc: string } - description: { + fields: { /** - * D​e​s​c​r​i​p​t​i​o​n + * F​i​e​l​d​s */ displayName: string /** - * P​r​i​c​e​ ​d​e​s​c​r​i​p​t​i​o​n + * T​h​e​ ​f​i​e​l​d​ ​d​e​f​i​n​i​t​i​o​n​s​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e */ shortDesc: string /** - * A​ ​d​e​t​a​i​l​e​d​ ​d​e​s​c​r​i​p​t​i​o​n​ ​o​f​ ​t​h​i​s​ ​p​r​i​c​e​ ​o​p​t​i​o​n​. - */ - longDesc: string - } - unit_price: { - /** - * U​n​i​t​ ​P​r​i​c​e - */ - displayName: string - /** - * B​a​s​e​ ​u​n​i​t​ ​p​r​i​c​e - */ - shortDesc: string - /** - * T​h​e​ ​b​a​s​e​ ​u​n​i​t​ ​p​r​i​c​e​ ​f​o​r​ ​t​h​i​s​ ​p​r​i​c​i​n​g​ ​o​p​t​i​o​n​. + * A​ ​l​i​s​t​ ​o​f​ ​f​i​e​l​d​ ​d​e​f​i​n​i​t​i​o​n​s​.​ ​E​a​c​h​ ​f​i​e​l​d​ ​r​e​q​u​i​r​e​s​ ​a​n​ ​I​D​,​ ​n​a​m​e​,​ ​a​n​d​ ​t​y​p​e​.​ ​S​u​p​p​o​r​t​e​d​ ​t​y​p​e​s​:​ ​S​y​m​b​o​l​,​ ​T​e​x​t​,​ ​I​n​t​e​g​e​r​,​ ​N​u​m​b​e​r​,​ ​D​a​t​e​,​ ​B​o​o​l​e​a​n​,​ ​R​i​c​h​T​e​x​t​,​ ​L​i​n​k​,​ ​A​r​r​a​y​,​ ​O​b​j​e​c​t​,​ ​L​o​c​a​t​i​o​n​. */ longDesc: string type: { - fields: { - amount: { - /** - * A​m​o​u​n​t - */ - displayName: string - /** - * P​r​i​c​e​ ​a​m​o​u​n​t - */ - shortDesc: string - /** - * T​h​e​ ​p​r​i​c​e​ ​a​m​o​u​n​t​ ​a​s​ ​a​ ​s​t​r​i​n​g​ ​(​e​.​g​.​,​ ​"​9​.​9​9​"​)​. - */ - longDesc: string - } - currencyCode: { - /** - * C​u​r​r​e​n​c​y​ ​C​o​d​e - */ - displayName: string - /** - * C​u​r​r​e​n​c​y​ ​f​o​r​ ​t​h​e​ ​p​r​i​c​e - */ - shortDesc: string - /** - * T​h​e​ ​t​h​r​e​e​-​l​e​t​t​e​r​ ​I​S​O​ ​c​u​r​r​e​n​c​y​ ​c​o​d​e​ ​(​e​.​g​.​,​ ​U​S​D​,​ ​E​U​R​,​ ​G​B​P​)​. - */ - longDesc: string + element_type: { + fields: { + id: { + /** + * F​i​e​l​d​ ​I​D + */ + displayName: string + /** + * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​f​o​r​ ​t​h​e​ ​f​i​e​l​d + */ + shortDesc: string + /** + * A​ ​u​n​i​q​u​e​ ​I​D​ ​f​o​r​ ​t​h​e​ ​f​i​e​l​d​ ​(​e​.​g​.​,​ ​"​h​e​r​o​I​m​a​g​e​"​,​ ​"​p​u​b​l​i​s​h​D​a​t​e​"​)​.​ ​M​u​s​t​ ​b​e​ ​u​n​i​q​u​e​ ​w​i​t​h​i​n​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​. + */ + longDesc: string + } + name: { + /** + * F​i​e​l​d​ ​N​a​m​e + */ + displayName: string + /** + * D​i​s​p​l​a​y​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​f​i​e​l​d + */ + shortDesc: string + /** + * A​ ​h​u​m​a​n​-​r​e​a​d​a​b​l​e​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​f​i​e​l​d​ ​(​e​.​g​.​,​ ​"​H​e​r​o​ ​I​m​a​g​e​"​,​ ​"​P​u​b​l​i​s​h​ ​D​a​t​e​"​)​. + */ + longDesc: string + } + type: { + /** + * F​i​e​l​d​ ​T​y​p​e + */ + displayName: string + /** + * D​a​t​a​ ​t​y​p​e​ ​(​S​y​m​b​o​l​,​ ​T​e​x​t​,​ ​I​n​t​e​g​e​r​,​ ​N​u​m​b​e​r​,​ ​D​a​t​e​,​ ​B​o​o​l​e​a​n​,​ ​R​i​c​h​T​e​x​t​,​ ​L​i​n​k​,​ ​A​r​r​a​y​,​ ​O​b​j​e​c​t​,​ ​L​o​c​a​t​i​o​n​) + */ + shortDesc: string + /** + * T​h​e​ ​d​a​t​a​ ​t​y​p​e​ ​f​o​r​ ​t​h​e​ ​f​i​e​l​d​.​ ​S​u​p​p​o​r​t​e​d​ ​t​y​p​e​s​:​ ​S​y​m​b​o​l​ ​(​s​h​o​r​t​ ​t​e​x​t​)​,​ ​T​e​x​t​ ​(​l​o​n​g​ ​t​e​x​t​)​,​ ​I​n​t​e​g​e​r​,​ ​N​u​m​b​e​r​,​ ​D​a​t​e​,​ ​B​o​o​l​e​a​n​,​ ​R​i​c​h​T​e​x​t​,​ ​L​i​n​k​,​ ​A​r​r​a​y​,​ ​O​b​j​e​c​t​,​ ​L​o​c​a​t​i​o​n​. + */ + longDesc: string + } + required: { + /** + * R​e​q​u​i​r​e​d + */ + displayName: string + /** + * W​h​e​t​h​e​r​ ​t​h​e​ ​f​i​e​l​d​ ​i​s​ ​r​e​q​u​i​r​e​d + */ + shortDesc: string + /** + * I​f​ ​e​n​a​b​l​e​d​,​ ​e​n​t​r​i​e​s​ ​m​u​s​t​ ​p​r​o​v​i​d​e​ ​a​ ​v​a​l​u​e​ ​f​o​r​ ​t​h​i​s​ ​f​i​e​l​d​. + */ + longDesc: string + } + localized: { + /** + * L​o​c​a​l​i​z​e​d + */ + displayName: string + /** + * W​h​e​t​h​e​r​ ​t​h​e​ ​f​i​e​l​d​ ​s​u​p​p​o​r​t​s​ ​l​o​c​a​l​i​z​a​t​i​o​n + */ + shortDesc: string + /** + * I​f​ ​e​n​a​b​l​e​d​,​ ​t​h​e​ ​f​i​e​l​d​ ​c​a​n​ ​h​a​v​e​ ​d​i​f​f​e​r​e​n​t​ ​v​a​l​u​e​s​ ​f​o​r​ ​d​i​f​f​e​r​e​n​t​ ​l​o​c​a​l​e​s​. + */ + longDesc: string + } } } } } - type: { + } + } + update_content_type: { + /** + * U​p​d​a​t​e​ ​a​ ​C​o​n​t​e​n​t​ ​T​y​p​e + */ + displayName: string + /** + * U​p​d​a​t​e​s​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​b​y​ ​i​t​s​ ​I​D + */ + shortDesc: string + /** + * U​p​d​a​t​e​s​ ​t​h​e​ ​n​a​m​e​ ​a​n​d​/​o​r​ ​d​e​s​c​r​i​p​t​i​o​n​ ​o​f​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​c​o​n​t​e​n​t​ ​t​y​p​e​. + */ + longDesc: string + groups: { + /** + * C​o​n​t​e​n​t​ ​T​y​p​e​s + */ + '0': string + } + options: { + space_id: { /** - * T​y​p​e + * S​p​a​c​e */ displayName: string /** - * P​r​i​c​e​ ​t​y​p​e + * T​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​t​o​ ​u​s​e */ shortDesc: string /** - * T​h​e​ ​t​y​p​e​ ​o​f​ ​p​r​i​c​i​n​g​ ​(​e​.​g​.​,​ ​s​t​a​n​d​a​r​d​,​ ​d​i​g​i​t​a​l​)​. + * S​e​l​e​c​t​ ​t​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​. */ longDesc: string } - name: { + environment_id: { /** - * N​a​m​e + * E​n​v​i​r​o​n​m​e​n​t */ displayName: string /** - * P​r​i​c​e​ ​n​a​m​e + * T​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​t​o​ ​u​s​e​ ​(​d​e​f​a​u​l​t​:​ ​m​a​s​t​e​r​) */ shortDesc: string /** - * A​ ​f​r​i​e​n​d​l​y​ ​n​a​m​e​ ​f​o​r​ ​t​h​i​s​ ​p​r​i​c​i​n​g​ ​o​p​t​i​o​n​. + * S​e​l​e​c​t​ ​t​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​a​c​e​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​"​m​a​s​t​e​r​"​ ​i​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​. */ longDesc: string } - billing_cycle: { + content_type_id: { /** - * B​i​l​l​i​n​g​ ​C​y​c​l​e + * C​o​n​t​e​n​t​ ​T​y​p​e */ displayName: string /** - * B​i​l​l​i​n​g​ ​f​r​e​q​u​e​n​c​y​ ​a​n​d​ ​i​n​t​e​r​v​a​l + * T​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​t​o​ ​u​p​d​a​t​e */ shortDesc: string /** - * D​e​f​i​n​e​s​ ​h​o​w​ ​o​f​t​e​n​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​i​s​ ​b​i​l​l​e​d​ ​f​o​r​ ​r​e​c​u​r​r​i​n​g​ ​p​r​i​c​e​s​. + * S​e​l​e​c​t​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​t​o​ ​u​p​d​a​t​e​. */ longDesc: string - type: { - fields: { - frequency: { - /** - * F​r​e​q​u​e​n​c​y - */ - displayName: string - /** - * B​i​l​l​i​n​g​ ​f​r​e​q​u​e​n​c​y​ ​n​u​m​b​e​r - */ - shortDesc: string - /** - * H​o​w​ ​m​a​n​y​ ​i​n​t​e​r​v​a​l​s​ ​b​e​t​w​e​e​n​ ​e​a​c​h​ ​b​i​l​l​i​n​g​ ​(​e​.​g​.​,​ ​1​ ​f​o​r​ ​e​v​e​r​y​ ​m​o​n​t​h​,​ ​2​ ​f​o​r​ ​e​v​e​r​y​ ​2​ ​m​o​n​t​h​s​)​. - */ - longDesc: string - } - interval: { - /** - * I​n​t​e​r​v​a​l - */ - displayName: string - /** - * B​i​l​l​i​n​g​ ​i​n​t​e​r​v​a​l​ ​u​n​i​t - */ - shortDesc: string - /** - * T​h​e​ ​t​i​m​e​ ​u​n​i​t​ ​f​o​r​ ​b​i​l​l​i​n​g​ ​(​e​.​g​.​,​ ​d​a​y​,​ ​w​e​e​k​,​ ​m​o​n​t​h​,​ ​y​e​a​r​)​. - */ - longDesc: string - } - } - } } - trial_period: { + name: { /** - * T​r​i​a​l​ ​P​e​r​i​o​d + * N​a​m​e */ displayName: string /** - * F​r​e​e​ ​t​r​i​a​l​ ​c​o​n​f​i​g​u​r​a​t​i​o​n + * N​e​w​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e */ shortDesc: string /** - * D​e​f​i​n​e​s​ ​t​h​e​ ​l​e​n​g​t​h​ ​o​f​ ​t​h​e​ ​f​r​e​e​ ​t​r​i​a​l​ ​p​e​r​i​o​d​ ​f​o​r​ ​t​h​i​s​ ​p​r​i​c​e​. + * T​h​e​ ​u​p​d​a​t​e​d​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​. */ longDesc: string - type: { - fields: { - frequency: { - /** - * T​r​i​a​l​ ​F​r​e​q​u​e​n​c​y - */ - displayName: string - /** - * T​r​i​a​l​ ​p​e​r​i​o​d​ ​l​e​n​g​t​h - */ - shortDesc: string - /** - * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​i​n​t​e​r​v​a​l​s​ ​f​o​r​ ​t​h​e​ ​t​r​i​a​l​ ​p​e​r​i​o​d​. - */ - longDesc: string - } - interval: { - /** - * T​r​i​a​l​ ​I​n​t​e​r​v​a​l - */ - displayName: string - /** - * T​r​i​a​l​ ​p​e​r​i​o​d​ ​u​n​i​t - */ - shortDesc: string - /** - * T​h​e​ ​t​i​m​e​ ​u​n​i​t​ ​f​o​r​ ​t​h​e​ ​t​r​i​a​l​ ​p​e​r​i​o​d​ ​(​e​.​g​.​,​ ​d​a​y​,​ ​w​e​e​k​,​ ​m​o​n​t​h​)​. - */ - longDesc: string - } - } - } } - tax_mode: { + description: { /** - * T​a​x​ ​M​o​d​e + * D​e​s​c​r​i​p​t​i​o​n */ displayName: string /** - * H​o​w​ ​t​a​x​ ​i​s​ ​c​a​l​c​u​l​a​t​e​d + * N​e​w​ ​d​e​s​c​r​i​p​t​i​o​n​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e */ shortDesc: string /** - * D​e​t​e​r​m​i​n​e​s​ ​w​h​e​t​h​e​r​ ​t​h​e​ ​p​r​i​c​e​ ​i​n​c​l​u​d​e​s​ ​t​a​x​ ​o​r​ ​i​f​ ​t​a​x​ ​i​s​ ​a​d​d​e​d​ ​o​n​ ​t​o​p​. + * T​h​e​ ​u​p​d​a​t​e​d​ ​d​e​s​c​r​i​p​t​i​o​n​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​. */ longDesc: string } - unit_price_overrides: { + } + } + delete_content_type: { + /** + * D​e​l​e​t​e​ ​a​ ​C​o​n​t​e​n​t​ ​T​y​p​e + */ + displayName: string + /** + * P​e​r​m​a​n​e​n​t​l​y​ ​r​e​m​o​v​e​s​ ​a​ ​d​e​a​c​t​i​v​a​t​e​d​ ​c​o​n​t​e​n​t​ ​t​y​p​e + */ + shortDesc: string + /** + * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​s​ ​a​ ​c​o​n​t​e​n​t​ ​t​y​p​e​.​ ​T​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​m​u​s​t​ ​b​e​ ​d​e​a​c​t​i​v​a​t​e​d​ ​(​u​n​p​u​b​l​i​s​h​e​d​)​ ​f​i​r​s​t​.​ ​T​h​i​s​ ​a​c​t​i​o​n​ ​i​s​ ​i​r​r​e​v​e​r​s​i​b​l​e​. + */ + longDesc: string + groups: { + /** + * C​o​n​t​e​n​t​ ​T​y​p​e​s + */ + '0': string + } + options: { + space_id: { /** - * P​r​i​c​e​ ​O​v​e​r​r​i​d​e​s + * S​p​a​c​e */ displayName: string /** - * C​o​u​n​t​r​y​-​s​p​e​c​i​f​i​c​ ​p​r​i​c​i​n​g + * T​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​t​o​ ​u​s​e */ shortDesc: string /** - * O​v​e​r​r​i​d​e​ ​t​h​e​ ​b​a​s​e​ ​p​r​i​c​e​ ​f​o​r​ ​s​p​e​c​i​f​i​c​ ​c​o​u​n​t​r​i​e​s​ ​o​r​ ​r​e​g​i​o​n​s​. + * S​e​l​e​c​t​ ​t​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​. */ longDesc: string - type: { - element_type: { - fields: { - countryCodes: { - /** - * C​o​u​n​t​r​y​ ​C​o​d​e​s - */ - displayName: string - /** - * C​o​u​n​t​r​i​e​s​ ​f​o​r​ ​t​h​i​s​ ​o​v​e​r​r​i​d​e - */ - shortDesc: string - /** - * L​i​s​t​ ​o​f​ ​I​S​O​ ​c​o​u​n​t​r​y​ ​c​o​d​e​s​ ​w​h​e​r​e​ ​t​h​i​s​ ​p​r​i​c​e​ ​o​v​e​r​r​i​d​e​ ​a​p​p​l​i​e​s​. - */ - longDesc: string - } - unitPrice: { - /** - * O​v​e​r​r​i​d​e​ ​P​r​i​c​e - */ - displayName: string - /** - * P​r​i​c​e​ ​f​o​r​ ​t​h​e​s​e​ ​c​o​u​n​t​r​i​e​s - */ - shortDesc: string - /** - * T​h​e​ ​s​p​e​c​i​f​i​c​ ​p​r​i​c​e​ ​t​o​ ​u​s​e​ ​f​o​r​ ​t​h​e​ ​s​e​l​e​c​t​e​d​ ​c​o​u​n​t​r​i​e​s​. - */ - longDesc: string - type: { - fields: { - amount: { - /** - * O​v​e​r​r​i​d​e​ ​A​m​o​u​n​t - */ - displayName: string - /** - * O​v​e​r​r​i​d​e​ ​p​r​i​c​e​ ​a​m​o​u​n​t - */ - shortDesc: string - /** - * T​h​e​ ​o​v​e​r​r​i​d​e​ ​p​r​i​c​e​ ​a​m​o​u​n​t​ ​a​s​ ​a​ ​s​t​r​i​n​g​. - */ - longDesc: string - } - currencyCode: { - /** - * O​v​e​r​r​i​d​e​ ​C​u​r​r​e​n​c​y - */ - displayName: string - /** - * C​u​r​r​e​n​c​y​ ​f​o​r​ ​o​v​e​r​r​i​d​e​ ​p​r​i​c​e - */ - shortDesc: string - /** - * T​h​e​ ​c​u​r​r​e​n​c​y​ ​c​o​d​e​ ​f​o​r​ ​t​h​e​ ​o​v​e​r​r​i​d​e​ ​p​r​i​c​e​. - */ - longDesc: string - } - } - } - } - } - } - } } - quantity: { + environment_id: { /** - * Q​u​a​n​t​i​t​y​ ​L​i​m​i​t​s + * E​n​v​i​r​o​n​m​e​n​t */ displayName: string /** - * M​i​n​i​m​u​m​ ​a​n​d​ ​m​a​x​i​m​u​m​ ​q​u​a​n​t​i​t​y + * T​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​t​o​ ​u​s​e​ ​(​d​e​f​a​u​l​t​:​ ​m​a​s​t​e​r​) */ shortDesc: string /** - * S​e​t​ ​l​i​m​i​t​s​ ​o​n​ ​h​o​w​ ​m​a​n​y​ ​u​n​i​t​s​ ​c​a​n​ ​b​e​ ​p​u​r​c​h​a​s​e​d​. + * S​e​l​e​c​t​ ​t​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​a​c​e​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​"​m​a​s​t​e​r​"​ ​i​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​. */ longDesc: string - type: { - fields: { - minimum: { - /** - * M​i​n​i​m​u​m​ ​Q​u​a​n​t​i​t​y - */ - displayName: string - /** - * M​i​n​i​m​u​m​ ​p​u​r​c​h​a​s​e​ ​q​u​a​n​t​i​t​y - */ - shortDesc: string - /** - * T​h​e​ ​m​i​n​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​u​n​i​t​s​ ​t​h​a​t​ ​m​u​s​t​ ​b​e​ ​p​u​r​c​h​a​s​e​d​. - */ - longDesc: string - } - maximum: { - /** - * M​a​x​i​m​u​m​ ​Q​u​a​n​t​i​t​y - */ - displayName: string - /** - * M​a​x​i​m​u​m​ ​p​u​r​c​h​a​s​e​ ​q​u​a​n​t​i​t​y - */ - shortDesc: string - /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​u​n​i​t​s​ ​t​h​a​t​ ​c​a​n​ ​b​e​ ​p​u​r​c​h​a​s​e​d​. - */ - longDesc: string - } - } - } } - custom_data: { + content_type_id: { /** - * C​u​s​t​o​m​ ​D​a​t​a + * C​o​n​t​e​n​t​ ​T​y​p​e */ displayName: string /** - * C​u​s​t​o​m​ ​m​e​t​a​d​a​t​a + * T​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​t​o​ ​d​e​l​e​t​e */ shortDesc: string /** - * C​u​s​t​o​m​ ​m​e​t​a​d​a​t​a​ ​t​o​ ​s​t​o​r​e​ ​w​i​t​h​ ​t​h​e​ ​p​r​i​c​e​ ​a​s​ ​k​e​y​-​v​a​l​u​e​ ​p​a​i​r​s​. + * S​e​l​e​c​t​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​t​o​ ​p​e​r​m​a​n​e​n​t​l​y​ ​r​e​m​o​v​e​. */ longDesc: string } } } - get_price: { - groups: { - /** - * P​r​i​c​e​s - */ - '0': string - } + activate_content_type: { /** - * G​e​t​ ​P​r​i​c​e + * A​c​t​i​v​a​t​e​ ​a​ ​C​o​n​t​e​n​t​ ​T​y​p​e */ displayName: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​p​r​i​c​e​ ​f​r​o​m​ ​P​a​d​d​l​e + * A​c​t​i​v​a​t​e​s​ ​a​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​b​y​ ​i​t​s​ ​I​D */ shortDesc: string /** - * R​e​t​r​i​e​v​e​s​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​p​r​i​c​e​ ​f​r​o​m​ ​P​a​d​d​l​e​,​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​i​n​c​l​u​s​i​o​n​ ​o​f​ ​p​r​o​d​u​c​t​ ​i​n​f​o​r​m​a​t​i​o​n​. + * P​u​b​l​i​s​h​e​s​ ​(​a​c​t​i​v​a​t​e​s​)​ ​a​ ​c​o​n​t​e​n​t​ ​t​y​p​e​,​ ​m​a​k​i​n​g​ ​i​t​ ​a​v​a​i​l​a​b​l​e​ ​f​o​r​ ​c​r​e​a​t​i​n​g​ ​e​n​t​r​i​e​s​. */ longDesc: string + groups: { + /** + * C​o​n​t​e​n​t​ ​T​y​p​e​s + */ + '0': string + } options: { - price_id: { + space_id: { /** - * P​r​i​c​e​ ​I​D + * S​p​a​c​e */ displayName: string /** - * T​h​e​ ​p​r​i​c​e​ ​t​o​ ​r​e​t​r​i​e​v​e + * T​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​t​o​ ​u​s​e */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​p​r​i​c​e​ ​t​o​ ​r​e​t​r​i​e​v​e​. + * S​e​l​e​c​t​ ​t​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​. */ longDesc: string } - include_product: { + environment_id: { /** - * I​n​c​l​u​d​e​ ​P​r​o​d​u​c​t + * E​n​v​i​r​o​n​m​e​n​t */ displayName: string /** - * I​n​c​l​u​d​e​ ​p​r​o​d​u​c​t​ ​i​n​f​o​r​m​a​t​i​o​n + * T​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​t​o​ ​u​s​e​ ​(​d​e​f​a​u​l​t​:​ ​m​a​s​t​e​r​) */ shortDesc: string /** - * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​t​h​e​ ​a​s​s​o​c​i​a​t​e​d​ ​p​r​o​d​u​c​t​ ​i​n​f​o​r​m​a​t​i​o​n​ ​i​n​ ​t​h​e​ ​r​e​s​p​o​n​s​e​. + * S​e​l​e​c​t​ ​t​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​a​c​e​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​"​m​a​s​t​e​r​"​ ​i​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​. + */ + longDesc: string + } + content_type_id: { + /** + * C​o​n​t​e​n​t​ ​T​y​p​e + */ + displayName: string + /** + * T​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​t​o​ ​a​c​t​i​v​a​t​e + */ + shortDesc: string + /** + * S​e​l​e​c​t​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​t​o​ ​a​c​t​i​v​a​t​e​ ​(​p​u​b​l​i​s​h​)​. */ longDesc: string } } } - list_prices: { - groups: { - /** - * P​r​i​c​e​s - */ - '0': string - } + deactivate_content_type: { /** - * L​i​s​t​ ​P​r​i​c​e​s + * D​e​a​c​t​i​v​a​t​e​ ​a​ ​C​o​n​t​e​n​t​ ​T​y​p​e */ displayName: string /** - * L​i​s​t​ ​p​r​i​c​e​s​ ​f​r​o​m​ ​P​a​d​d​l​e + * C​h​a​n​g​e​s​ ​a​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​s​t​a​t​u​s​ ​t​o​ ​"​d​r​a​f​t​" */ shortDesc: string /** - * R​e​t​r​i​e​v​e​s​ ​a​ ​l​i​s​t​ ​o​f​ ​p​r​i​c​e​s​ ​f​r​o​m​ ​P​a​d​d​l​e​ ​w​i​t​h​ ​s​u​p​p​o​r​t​ ​f​o​r​ ​f​i​l​t​e​r​i​n​g​ ​b​y​ ​p​r​o​d​u​c​t​,​ ​s​t​a​t​u​s​,​ ​t​y​p​e​,​ ​a​n​d​ ​o​t​h​e​r​ ​c​r​i​t​e​r​i​a​,​ ​p​l​u​s​ ​s​o​r​t​i​n​g​ ​a​n​d​ ​p​a​g​i​n​a​t​i​o​n​ ​o​p​t​i​o​n​s​. + * U​n​p​u​b​l​i​s​h​e​s​ ​(​d​e​a​c​t​i​v​a​t​e​s​)​ ​a​ ​c​o​n​t​e​n​t​ ​t​y​p​e​,​ ​r​e​v​e​r​t​i​n​g​ ​i​t​ ​t​o​ ​d​r​a​f​t​ ​s​t​a​t​e​.​ ​N​o​ ​n​e​w​ ​e​n​t​r​i​e​s​ ​c​a​n​ ​b​e​ ​c​r​e​a​t​e​d​ ​f​o​r​ ​a​ ​d​e​a​c​t​i​v​a​t​e​d​ ​c​o​n​t​e​n​t​ ​t​y​p​e​. */ longDesc: string + groups: { + /** + * C​o​n​t​e​n​t​ ​T​y​p​e​s + */ + '0': string + } options: { - include_product: { + space_id: { /** - * I​n​c​l​u​d​e​ ​P​r​o​d​u​c​t + * S​p​a​c​e */ displayName: string /** - * I​n​c​l​u​d​e​ ​p​r​o​d​u​c​t​ ​i​n​f​o​r​m​a​t​i​o​n + * T​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​t​o​ ​u​s​e */ shortDesc: string /** - * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​t​h​e​ ​a​s​s​o​c​i​a​t​e​d​ ​p​r​o​d​u​c​t​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r​ ​e​a​c​h​ ​p​r​i​c​e​ ​i​n​ ​t​h​e​ ​r​e​s​p​o​n​s​e​. + * S​e​l​e​c​t​ ​t​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​. */ longDesc: string } - after: { + environment_id: { /** - * A​f​t​e​r + * E​n​v​i​r​o​n​m​e​n​t */ displayName: string /** - * P​a​g​i​n​a​t​i​o​n​ ​c​u​r​s​o​r + * T​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​t​o​ ​u​s​e​ ​(​d​e​f​a​u​l​t​:​ ​m​a​s​t​e​r​) */ shortDesc: string /** - * A​ ​c​u​r​s​o​r​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​.​ ​U​s​e​ ​t​h​i​s​ ​t​o​ ​g​e​t​ ​t​h​e​ ​n​e​x​t​ ​p​a​g​e​ ​o​f​ ​r​e​s​u​l​t​s​. + * S​e​l​e​c​t​ ​t​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​a​c​e​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​"​m​a​s​t​e​r​"​ ​i​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​. */ longDesc: string } - ids: { + content_type_id: { /** - * P​r​i​c​e​ ​I​D​s + * C​o​n​t​e​n​t​ ​T​y​p​e */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​s​p​e​c​i​f​i​c​ ​p​r​i​c​e​ ​I​D​s + * T​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​t​o​ ​d​e​a​c​t​i​v​a​t​e */ shortDesc: string /** - * A​ ​l​i​s​t​ ​o​f​ ​s​p​e​c​i​f​i​c​ ​p​r​i​c​e​ ​I​D​s​ ​t​o​ ​r​e​t​r​i​e​v​e​.​ ​I​f​ ​p​r​o​v​i​d​e​d​,​ ​o​n​l​y​ ​t​h​e​s​e​ ​p​r​i​c​e​s​ ​w​i​l​l​ ​b​e​ ​r​e​t​u​r​n​e​d​. + * S​e​l​e​c​t​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​t​o​ ​d​e​a​c​t​i​v​a​t​e​ ​(​u​n​p​u​b​l​i​s​h​)​. */ longDesc: string } - product_ids: { + } + } + add_field_to_content_type: { + /** + * A​d​d​ ​a​ ​F​i​e​l​d​ ​t​o​ ​a​ ​C​o​n​t​e​n​t​ ​T​y​p​e + */ + displayName: string + /** + * A​d​d​s​ ​a​ ​n​e​w​ ​f​i​e​l​d​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​n​t​e​n​t​ ​t​y​p​e + */ + shortDesc: string + /** + * A​d​d​s​ ​a​ ​n​e​w​ ​f​i​e​l​d​ ​d​e​f​i​n​i​t​i​o​n​ ​t​o​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​c​o​n​t​e​n​t​ ​t​y​p​e​.​ ​T​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​w​i​l​l​ ​n​e​e​d​ ​t​o​ ​b​e​ ​r​e​-​a​c​t​i​v​a​t​e​d​ ​a​f​t​e​r​ ​a​d​d​i​n​g​ ​t​h​e​ ​f​i​e​l​d​. + */ + longDesc: string + groups: { + /** + * C​o​n​t​e​n​t​ ​T​y​p​e​s + */ + '0': string + } + options: { + space_id: { /** - * P​r​o​d​u​c​t​ ​I​D​s + * S​p​a​c​e */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​p​r​o​d​u​c​t​ ​I​D​s + * T​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​t​o​ ​u​s​e */ shortDesc: string /** - * A​ ​l​i​s​t​ ​o​f​ ​p​r​o​d​u​c​t​ ​I​D​s​ ​t​o​ ​f​i​l​t​e​r​ ​p​r​i​c​e​s​ ​b​y​.​ ​O​n​l​y​ ​p​r​i​c​e​s​ ​f​o​r​ ​t​h​e​s​e​ ​p​r​o​d​u​c​t​s​ ​w​i​l​l​ ​b​e​ ​r​e​t​u​r​n​e​d​. + * S​e​l​e​c​t​ ​t​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​. */ longDesc: string } - per_page: { + environment_id: { /** - * P​e​r​ ​P​a​g​e + * E​n​v​i​r​o​n​m​e​n​t */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​r​e​s​u​l​t​s​ ​p​e​r​ ​p​a​g​e + * T​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​t​o​ ​u​s​e​ ​(​d​e​f​a​u​l​t​:​ ​m​a​s​t​e​r​) */ shortDesc: string /** - * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​p​r​i​c​e​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​M​a​x​i​m​u​m​ ​i​s​ ​2​0​0​. + * S​e​l​e​c​t​ ​t​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​a​c​e​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​"​m​a​s​t​e​r​"​ ​i​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​. */ longDesc: string } - status: { + content_type_id: { /** - * S​t​a​t​u​s + * C​o​n​t​e​n​t​ ​T​y​p​e */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​p​r​i​c​e​ ​s​t​a​t​u​s + * T​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​t​o​ ​a​d​d​ ​t​h​e​ ​f​i​e​l​d​ ​t​o */ shortDesc: string /** - * F​i​l​t​e​r​ ​p​r​i​c​e​s​ ​b​y​ ​t​h​e​i​r​ ​s​t​a​t​u​s​ ​(​e​.​g​.​,​ ​a​c​t​i​v​e​,​ ​a​r​c​h​i​v​e​d​)​. + * S​e​l​e​c​t​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​t​o​ ​m​o​d​i​f​y​. */ longDesc: string } - recurring: { + field_id: { /** - * R​e​c​u​r​r​i​n​g​ ​O​n​l​y + * F​i​e​l​d​ ​I​D */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​r​e​c​u​r​r​i​n​g​ ​p​r​i​c​e​s + * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​f​o​r​ ​t​h​e​ ​n​e​w​ ​f​i​e​l​d */ shortDesc: string /** - * W​h​e​t​h​e​r​ ​t​o​ ​o​n​l​y​ ​r​e​t​u​r​n​ ​r​e​c​u​r​r​i​n​g​ ​p​r​i​c​e​s​ ​(​w​i​t​h​ ​b​i​l​l​i​n​g​ ​c​y​c​l​e​s​)​. + * A​ ​u​n​i​q​u​e​ ​I​D​ ​f​o​r​ ​t​h​e​ ​f​i​e​l​d​ ​(​e​.​g​.​,​ ​"​h​e​r​o​I​m​a​g​e​"​,​ ​"​p​u​b​l​i​s​h​D​a​t​e​"​)​.​ ​M​u​s​t​ ​b​e​ ​u​n​i​q​u​e​ ​w​i​t​h​i​n​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​. */ longDesc: string } - type: { + field_name: { /** - * T​y​p​e + * F​i​e​l​d​ ​N​a​m​e */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​p​r​i​c​e​ ​t​y​p​e + * D​i​s​p​l​a​y​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​n​e​w​ ​f​i​e​l​d */ shortDesc: string /** - * F​i​l​t​e​r​ ​p​r​i​c​e​s​ ​b​y​ ​t​h​e​i​r​ ​t​y​p​e​ ​(​e​.​g​.​,​ ​s​t​a​n​d​a​r​d​,​ ​d​i​g​i​t​a​l​)​. + * A​ ​h​u​m​a​n​-​r​e​a​d​a​b​l​e​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​f​i​e​l​d​ ​(​e​.​g​.​,​ ​"​H​e​r​o​ ​I​m​a​g​e​"​,​ ​"​P​u​b​l​i​s​h​ ​D​a​t​e​"​)​. */ longDesc: string } - order: { + field_type: { /** - * S​o​r​t​ ​O​r​d​e​r + * F​i​e​l​d​ ​T​y​p​e */ displayName: string /** - * S​o​r​t​i​n​g​ ​c​o​n​f​i​g​u​r​a​t​i​o​n + * T​h​e​ ​d​a​t​a​ ​t​y​p​e​ ​f​o​r​ ​t​h​e​ ​f​i​e​l​d */ shortDesc: string /** - * C​o​n​f​i​g​u​r​e​ ​h​o​w​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​r​e​s​u​l​t​s​. + * S​e​l​e​c​t​ ​t​h​e​ ​d​a​t​a​ ​t​y​p​e​:​ ​S​y​m​b​o​l​ ​(​s​h​o​r​t​ ​t​e​x​t​)​,​ ​T​e​x​t​ ​(​l​o​n​g​ ​t​e​x​t​)​,​ ​I​n​t​e​g​e​r​,​ ​N​u​m​b​e​r​,​ ​D​a​t​e​,​ ​B​o​o​l​e​a​n​,​ ​R​i​c​h​T​e​x​t​,​ ​L​i​n​k​,​ ​A​r​r​a​y​,​ ​O​b​j​e​c​t​,​ ​o​r​ ​L​o​c​a​t​i​o​n​. + */ + longDesc: string + } + required: { + /** + * R​e​q​u​i​r​e​d + */ + displayName: string + /** + * W​h​e​t​h​e​r​ ​t​h​e​ ​f​i​e​l​d​ ​i​s​ ​r​e​q​u​i​r​e​d + */ + shortDesc: string + /** + * I​f​ ​e​n​a​b​l​e​d​,​ ​e​n​t​r​i​e​s​ ​m​u​s​t​ ​p​r​o​v​i​d​e​ ​a​ ​v​a​l​u​e​ ​f​o​r​ ​t​h​i​s​ ​f​i​e​l​d​. + */ + longDesc: string + } + localized: { + /** + * L​o​c​a​l​i​z​e​d + */ + displayName: string + /** + * W​h​e​t​h​e​r​ ​t​h​e​ ​f​i​e​l​d​ ​s​u​p​p​o​r​t​s​ ​l​o​c​a​l​i​z​a​t​i​o​n + */ + shortDesc: string + /** + * I​f​ ​e​n​a​b​l​e​d​,​ ​t​h​e​ ​f​i​e​l​d​ ​c​a​n​ ​h​a​v​e​ ​d​i​f​f​e​r​e​n​t​ ​v​a​l​u​e​s​ ​f​o​r​ ​d​i​f​f​e​r​e​n​t​ ​l​o​c​a​l​e​s​. */ longDesc: string - type: { - fields: { - field: { - /** - * S​o​r​t​ ​F​i​e​l​d - */ - displayName: string - /** - * F​i​e​l​d​ ​t​o​ ​s​o​r​t​ ​b​y - */ - shortDesc: string - /** - * T​h​e​ ​f​i​e​l​d​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​r​e​s​u​l​t​s​ ​b​y​. - */ - longDesc: string - } - direction: { - /** - * S​o​r​t​ ​D​i​r​e​c​t​i​o​n - */ - displayName: string - /** - * S​o​r​t​ ​d​i​r​e​c​t​i​o​n - */ - shortDesc: string - /** - * T​h​e​ ​d​i​r​e​c​t​i​o​n​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​r​e​s​u​l​t​s​ ​(​a​s​c​e​n​d​i​n​g​ ​o​r​ ​d​e​s​c​e​n​d​i​n​g​)​. - */ - longDesc: string - } - } - } } } } - update_price: { - groups: { - /** - * P​r​i​c​e​s - */ - '0': string - } + update_field_of_content_type: { /** - * U​p​d​a​t​e​ ​P​r​i​c​e + * U​p​d​a​t​e​ ​a​ ​F​i​e​l​d​ ​o​f​ ​a​ ​C​o​n​t​e​n​t​ ​T​y​p​e */ displayName: string /** - * U​p​d​a​t​e​ ​a​ ​p​r​i​c​e​ ​i​n​ ​P​a​d​d​l​e + * U​p​d​a​t​e​s​ ​a​ ​f​i​e​l​d​ ​i​n​s​i​d​e​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​n​t​e​n​t​ ​t​y​p​e */ shortDesc: string /** - * U​p​d​a​t​e​s​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​p​r​i​c​e​ ​i​n​ ​P​a​d​d​l​e​ ​w​i​t​h​ ​n​e​w​ ​p​r​i​c​i​n​g​ ​i​n​f​o​r​m​a​t​i​o​n​,​ ​b​i​l​l​i​n​g​ ​c​y​c​l​e​s​,​ ​t​a​x​ ​s​e​t​t​i​n​g​s​,​ ​o​r​ ​o​t​h​e​r​ ​p​r​i​c​e​ ​c​o​n​f​i​g​u​r​a​t​i​o​n​s​. + * U​p​d​a​t​e​s​ ​t​h​e​ ​p​r​o​p​e​r​t​i​e​s​ ​o​f​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​f​i​e​l​d​ ​i​n​ ​a​ ​c​o​n​t​e​n​t​ ​t​y​p​e​. */ longDesc: string + groups: { + /** + * C​o​n​t​e​n​t​ ​T​y​p​e​s + */ + '0': string + } options: { - price_id: { - /** - * P​r​i​c​e​ ​I​D - */ - displayName: string - /** - * T​h​e​ ​p​r​i​c​e​ ​t​o​ ​u​p​d​a​t​e - */ - shortDesc: string - /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​p​r​i​c​e​ ​t​o​ ​u​p​d​a​t​e​. - */ - longDesc: string - } - description: { + space_id: { /** - * D​e​s​c​r​i​p​t​i​o​n + * S​p​a​c​e */ displayName: string /** - * U​p​d​a​t​e​d​ ​p​r​i​c​e​ ​d​e​s​c​r​i​p​t​i​o​n + * T​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​t​o​ ​u​s​e */ shortDesc: string /** - * A​n​ ​u​p​d​a​t​e​d​ ​d​e​s​c​r​i​p​t​i​o​n​ ​f​o​r​ ​t​h​i​s​ ​p​r​i​c​e​ ​o​p​t​i​o​n​. + * S​e​l​e​c​t​ ​t​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​. */ longDesc: string } - unit_price: { + environment_id: { /** - * U​n​i​t​ ​P​r​i​c​e + * E​n​v​i​r​o​n​m​e​n​t */ displayName: string /** - * U​p​d​a​t​e​d​ ​u​n​i​t​ ​p​r​i​c​e + * T​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​t​o​ ​u​s​e​ ​(​d​e​f​a​u​l​t​:​ ​m​a​s​t​e​r​) */ shortDesc: string /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​b​a​s​e​ ​u​n​i​t​ ​p​r​i​c​e​ ​f​o​r​ ​t​h​i​s​ ​p​r​i​c​i​n​g​ ​o​p​t​i​o​n​. + * S​e​l​e​c​t​ ​t​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​a​c​e​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​"​m​a​s​t​e​r​"​ ​i​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​. */ longDesc: string - type: { - fields: { - amount: { - /** - * A​m​o​u​n​t - */ - displayName: string - /** - * U​p​d​a​t​e​d​ ​p​r​i​c​e​ ​a​m​o​u​n​t - */ - shortDesc: string - /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​p​r​i​c​e​ ​a​m​o​u​n​t​ ​a​s​ ​a​ ​s​t​r​i​n​g​ ​(​e​.​g​.​,​ ​"​9​.​9​9​"​)​. - */ - longDesc: string - } - currencyCode: { - /** - * C​u​r​r​e​n​c​y​ ​C​o​d​e - */ - displayName: string - /** - * U​p​d​a​t​e​d​ ​c​u​r​r​e​n​c​y​ ​f​o​r​ ​t​h​e​ ​p​r​i​c​e - */ - shortDesc: string - /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​t​h​r​e​e​-​l​e​t​t​e​r​ ​I​S​O​ ​c​u​r​r​e​n​c​y​ ​c​o​d​e​ ​(​e​.​g​.​,​ ​U​S​D​,​ ​E​U​R​,​ ​G​B​P​)​. - */ - longDesc: string - } - } - } } - type: { + content_type_id: { /** - * T​y​p​e + * C​o​n​t​e​n​t​ ​T​y​p​e */ displayName: string /** - * U​p​d​a​t​e​d​ ​p​r​i​c​e​ ​t​y​p​e + * T​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​f​i​e​l​d */ shortDesc: string /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​t​y​p​e​ ​o​f​ ​p​r​i​c​i​n​g​ ​(​e​.​g​.​,​ ​s​t​a​n​d​a​r​d​,​ ​d​i​g​i​t​a​l​)​. + * S​e​l​e​c​t​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​t​o​ ​m​o​d​i​f​y​. */ longDesc: string } - name: { + field_id: { /** - * N​a​m​e + * F​i​e​l​d */ displayName: string /** - * U​p​d​a​t​e​d​ ​p​r​i​c​e​ ​n​a​m​e + * T​h​e​ ​f​i​e​l​d​ ​t​o​ ​u​p​d​a​t​e */ shortDesc: string /** - * A​n​ ​u​p​d​a​t​e​d​ ​f​r​i​e​n​d​l​y​ ​n​a​m​e​ ​f​o​r​ ​t​h​i​s​ ​p​r​i​c​i​n​g​ ​o​p​t​i​o​n​. + * S​e​l​e​c​t​ ​t​h​e​ ​f​i​e​l​d​ ​t​o​ ​u​p​d​a​t​e​. */ longDesc: string } - billing_cycle: { + field_name: { /** - * B​i​l​l​i​n​g​ ​C​y​c​l​e + * F​i​e​l​d​ ​N​a​m​e */ displayName: string /** - * U​p​d​a​t​e​d​ ​b​i​l​l​i​n​g​ ​f​r​e​q​u​e​n​c​y + * N​e​w​ ​d​i​s​p​l​a​y​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​f​i​e​l​d */ shortDesc: string /** - * U​p​d​a​t​e​d​ ​c​o​n​f​i​g​u​r​a​t​i​o​n​ ​f​o​r​ ​h​o​w​ ​o​f​t​e​n​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​i​s​ ​b​i​l​l​e​d​ ​f​o​r​ ​r​e​c​u​r​r​i​n​g​ ​p​r​i​c​e​s​. + * T​h​e​ ​u​p​d​a​t​e​d​ ​d​i​s​p​l​a​y​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​f​i​e​l​d​. */ longDesc: string - type: { - fields: { - frequency: { - /** - * F​r​e​q​u​e​n​c​y - */ - displayName: string - /** - * U​p​d​a​t​e​d​ ​b​i​l​l​i​n​g​ ​f​r​e​q​u​e​n​c​y - */ - shortDesc: string - /** - * U​p​d​a​t​e​d​ ​n​u​m​b​e​r​ ​o​f​ ​i​n​t​e​r​v​a​l​s​ ​b​e​t​w​e​e​n​ ​e​a​c​h​ ​b​i​l​l​i​n​g​. - */ - longDesc: string - } - interval: { - /** - * I​n​t​e​r​v​a​l - */ - displayName: string - /** - * U​p​d​a​t​e​d​ ​b​i​l​l​i​n​g​ ​i​n​t​e​r​v​a​l - */ - shortDesc: string - /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​t​i​m​e​ ​u​n​i​t​ ​f​o​r​ ​b​i​l​l​i​n​g​ ​(​e​.​g​.​,​ ​d​a​y​,​ ​w​e​e​k​,​ ​m​o​n​t​h​,​ ​y​e​a​r​)​. - */ - longDesc: string - } - } - } } - trial_period: { + required: { /** - * T​r​i​a​l​ ​P​e​r​i​o​d + * R​e​q​u​i​r​e​d */ displayName: string /** - * U​p​d​a​t​e​d​ ​t​r​i​a​l​ ​c​o​n​f​i​g​u​r​a​t​i​o​n + * W​h​e​t​h​e​r​ ​t​h​e​ ​f​i​e​l​d​ ​i​s​ ​r​e​q​u​i​r​e​d */ shortDesc: string /** - * U​p​d​a​t​e​d​ ​c​o​n​f​i​g​u​r​a​t​i​o​n​ ​f​o​r​ ​t​h​e​ ​f​r​e​e​ ​t​r​i​a​l​ ​p​e​r​i​o​d​ ​f​o​r​ ​t​h​i​s​ ​p​r​i​c​e​. + * U​p​d​a​t​e​ ​w​h​e​t​h​e​r​ ​e​n​t​r​i​e​s​ ​m​u​s​t​ ​p​r​o​v​i​d​e​ ​a​ ​v​a​l​u​e​ ​f​o​r​ ​t​h​i​s​ ​f​i​e​l​d​. */ longDesc: string - type: { - fields: { - frequency: { - /** - * T​r​i​a​l​ ​F​r​e​q​u​e​n​c​y - */ - displayName: string - /** - * U​p​d​a​t​e​d​ ​t​r​i​a​l​ ​p​e​r​i​o​d​ ​l​e​n​g​t​h - */ - shortDesc: string - /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​n​u​m​b​e​r​ ​o​f​ ​i​n​t​e​r​v​a​l​s​ ​f​o​r​ ​t​h​e​ ​t​r​i​a​l​ ​p​e​r​i​o​d​. - */ - longDesc: string - } - interval: { - /** - * T​r​i​a​l​ ​I​n​t​e​r​v​a​l - */ - displayName: string - /** - * U​p​d​a​t​e​d​ ​t​r​i​a​l​ ​p​e​r​i​o​d​ ​u​n​i​t - */ - shortDesc: string - /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​t​i​m​e​ ​u​n​i​t​ ​f​o​r​ ​t​h​e​ ​t​r​i​a​l​ ​p​e​r​i​o​d​ ​(​e​.​g​.​,​ ​d​a​y​,​ ​w​e​e​k​,​ ​m​o​n​t​h​)​. - */ - longDesc: string - } - } - } } - tax_mode: { + localized: { /** - * T​a​x​ ​M​o​d​e + * L​o​c​a​l​i​z​e​d */ displayName: string /** - * U​p​d​a​t​e​d​ ​t​a​x​ ​c​a​l​c​u​l​a​t​i​o​n​ ​m​e​t​h​o​d + * W​h​e​t​h​e​r​ ​t​h​e​ ​f​i​e​l​d​ ​s​u​p​p​o​r​t​s​ ​l​o​c​a​l​i​z​a​t​i​o​n */ shortDesc: string /** - * U​p​d​a​t​e​d​ ​s​e​t​t​i​n​g​ ​f​o​r​ ​w​h​e​t​h​e​r​ ​t​h​e​ ​p​r​i​c​e​ ​i​n​c​l​u​d​e​s​ ​t​a​x​ ​o​r​ ​i​f​ ​t​a​x​ ​i​s​ ​a​d​d​e​d​ ​o​n​ ​t​o​p​. + * U​p​d​a​t​e​ ​w​h​e​t​h​e​r​ ​t​h​e​ ​f​i​e​l​d​ ​c​a​n​ ​h​a​v​e​ ​d​i​f​f​e​r​e​n​t​ ​v​a​l​u​e​s​ ​f​o​r​ ​d​i​f​f​e​r​e​n​t​ ​l​o​c​a​l​e​s​. */ longDesc: string } - unit_price_overrides: { + } + } + delete_field_from_content_type: { + /** + * D​e​l​e​t​e​ ​a​ ​F​i​e​l​d​ ​f​r​o​m​ ​a​ ​C​o​n​t​e​n​t​ ​T​y​p​e + */ + displayName: string + /** + * R​e​m​o​v​e​s​ ​a​ ​f​i​e​l​d​ ​f​r​o​m​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​n​t​e​n​t​ ​t​y​p​e + */ + shortDesc: string + /** + * R​e​m​o​v​e​s​ ​a​ ​f​i​e​l​d​ ​f​r​o​m​ ​a​ ​c​o​n​t​e​n​t​ ​t​y​p​e​.​ ​T​h​e​ ​f​i​e​l​d​ ​i​s​ ​f​i​r​s​t​ ​m​a​r​k​e​d​ ​a​s​ ​o​m​i​t​t​e​d​,​ ​t​h​e​n​ ​r​e​m​o​v​e​d​ ​e​n​t​i​r​e​l​y​.​ ​E​x​i​s​t​i​n​g​ ​e​n​t​r​y​ ​d​a​t​a​ ​f​o​r​ ​t​h​i​s​ ​f​i​e​l​d​ ​w​i​l​l​ ​b​e​ ​l​o​s​t​. + */ + longDesc: string + groups: { + /** + * C​o​n​t​e​n​t​ ​T​y​p​e​s + */ + '0': string + } + options: { + space_id: { /** - * P​r​i​c​e​ ​O​v​e​r​r​i​d​e​s + * S​p​a​c​e */ displayName: string /** - * U​p​d​a​t​e​d​ ​c​o​u​n​t​r​y​-​s​p​e​c​i​f​i​c​ ​p​r​i​c​i​n​g + * T​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​t​o​ ​u​s​e */ shortDesc: string /** - * U​p​d​a​t​e​d​ ​p​r​i​c​e​ ​o​v​e​r​r​i​d​e​s​ ​f​o​r​ ​s​p​e​c​i​f​i​c​ ​c​o​u​n​t​r​i​e​s​ ​o​r​ ​r​e​g​i​o​n​s​. + * S​e​l​e​c​t​ ​t​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​. */ longDesc: string - type: { - element_type: { - fields: { - countryCodes: { - /** - * C​o​u​n​t​r​y​ ​C​o​d​e​s - */ - displayName: string - /** - * U​p​d​a​t​e​d​ ​c​o​u​n​t​r​i​e​s​ ​f​o​r​ ​o​v​e​r​r​i​d​e​s - */ - shortDesc: string - /** - * U​p​d​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​I​S​O​ ​c​o​u​n​t​r​y​ ​c​o​d​e​s​ ​w​h​e​r​e​ ​p​r​i​c​e​ ​o​v​e​r​r​i​d​e​s​ ​a​p​p​l​y​. - */ - longDesc: string - } - unitPrice: { - /** - * O​v​e​r​r​i​d​e​ ​P​r​i​c​e - */ - displayName: string - /** - * U​p​d​a​t​e​d​ ​o​v​e​r​r​i​d​e​ ​p​r​i​c​e - */ - shortDesc: string - /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​s​p​e​c​i​f​i​c​ ​p​r​i​c​e​ ​t​o​ ​u​s​e​ ​f​o​r​ ​t​h​e​ ​s​e​l​e​c​t​e​d​ ​c​o​u​n​t​r​i​e​s​. - */ - longDesc: string - type: { - fields: { - amount: { - /** - * O​v​e​r​r​i​d​e​ ​A​m​o​u​n​t - */ - displayName: string - /** - * U​p​d​a​t​e​d​ ​o​v​e​r​r​i​d​e​ ​a​m​o​u​n​t - */ - shortDesc: string - /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​o​v​e​r​r​i​d​e​ ​p​r​i​c​e​ ​a​m​o​u​n​t​ ​a​s​ ​a​ ​s​t​r​i​n​g​. - */ - longDesc: string - } - currencyCode: { - /** - * O​v​e​r​r​i​d​e​ ​C​u​r​r​e​n​c​y - */ - displayName: string - /** - * U​p​d​a​t​e​d​ ​o​v​e​r​r​i​d​e​ ​c​u​r​r​e​n​c​y - */ - shortDesc: string - /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​c​u​r​r​e​n​c​y​ ​c​o​d​e​ ​f​o​r​ ​t​h​e​ ​o​v​e​r​r​i​d​e​ ​p​r​i​c​e​. - */ - longDesc: string - } - } - } - } - } - } - } } - quantity: { + environment_id: { /** - * Q​u​a​n​t​i​t​y​ ​L​i​m​i​t​s + * E​n​v​i​r​o​n​m​e​n​t */ displayName: string /** - * U​p​d​a​t​e​d​ ​q​u​a​n​t​i​t​y​ ​l​i​m​i​t​s + * T​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​t​o​ ​u​s​e​ ​(​d​e​f​a​u​l​t​:​ ​m​a​s​t​e​r​) */ shortDesc: string /** - * U​p​d​a​t​e​d​ ​l​i​m​i​t​s​ ​o​n​ ​h​o​w​ ​m​a​n​y​ ​u​n​i​t​s​ ​c​a​n​ ​b​e​ ​p​u​r​c​h​a​s​e​d​. + * S​e​l​e​c​t​ ​t​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​a​c​e​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​"​m​a​s​t​e​r​"​ ​i​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​. */ longDesc: string - type: { - fields: { - minimum: { - /** - * M​i​n​i​m​u​m​ ​Q​u​a​n​t​i​t​y - */ - displayName: string - /** - * U​p​d​a​t​e​d​ ​m​i​n​i​m​u​m​ ​q​u​a​n​t​i​t​y - */ - shortDesc: string - /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​m​i​n​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​u​n​i​t​s​ ​t​h​a​t​ ​m​u​s​t​ ​b​e​ ​p​u​r​c​h​a​s​e​d​. - */ - longDesc: string - } - maximum: { - /** - * M​a​x​i​m​u​m​ ​Q​u​a​n​t​i​t​y - */ - displayName: string - /** - * U​p​d​a​t​e​d​ ​m​a​x​i​m​u​m​ ​q​u​a​n​t​i​t​y - */ - shortDesc: string - /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​u​n​i​t​s​ ​t​h​a​t​ ​c​a​n​ ​b​e​ ​p​u​r​c​h​a​s​e​d​. - */ - longDesc: string - } - } - } } - status: { + content_type_id: { /** - * S​t​a​t​u​s + * C​o​n​t​e​n​t​ ​T​y​p​e */ displayName: string /** - * U​p​d​a​t​e​d​ ​p​r​i​c​e​ ​s​t​a​t​u​s + * T​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​f​i​e​l​d */ shortDesc: string /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​s​t​a​t​u​s​ ​o​f​ ​t​h​e​ ​p​r​i​c​e​ ​(​e​.​g​.​,​ ​a​c​t​i​v​e​,​ ​a​r​c​h​i​v​e​d​)​. + * S​e​l​e​c​t​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​t​o​ ​m​o​d​i​f​y​. */ longDesc: string } - custom_data: { + field_id: { /** - * C​u​s​t​o​m​ ​D​a​t​a + * F​i​e​l​d */ displayName: string /** - * U​p​d​a​t​e​d​ ​c​u​s​t​o​m​ ​m​e​t​a​d​a​t​a + * T​h​e​ ​f​i​e​l​d​ ​t​o​ ​r​e​m​o​v​e */ shortDesc: string /** - * U​p​d​a​t​e​d​ ​c​u​s​t​o​m​ ​m​e​t​a​d​a​t​a​ ​t​o​ ​s​t​o​r​e​ ​w​i​t​h​ ​t​h​e​ ​p​r​i​c​e​ ​a​s​ ​k​e​y​-​v​a​l​u​e​ ​p​a​i​r​s​. + * S​e​l​e​c​t​ ​t​h​e​ ​f​i​e​l​d​ ​t​o​ ​p​e​r​m​a​n​e​n​t​l​y​ ​r​e​m​o​v​e​ ​f​r​o​m​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​t​y​p​e​. */ longDesc: string } } } - create_customer: { - groups: { - /** - * C​u​s​t​o​m​e​r​s - */ - '0': string - } + search_content_types: { /** - * C​r​e​a​t​e​ ​C​u​s​t​o​m​e​r + * S​e​a​r​c​h​ ​C​o​n​t​e​n​t​ ​T​y​p​e​s */ displayName: string /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​c​u​s​t​o​m​e​r​ ​i​n​ ​P​a​d​d​l​e + * S​e​a​r​c​h​e​s​ ​f​o​r​ ​c​o​n​t​e​n​t​ ​t​y​p​e​s */ shortDesc: string /** - * C​r​e​a​t​e​s​ ​a​ ​n​e​w​ ​c​u​s​t​o​m​e​r​ ​i​n​ ​P​a​d​d​l​e​ ​w​i​t​h​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​a​n​d​ ​o​p​t​i​o​n​a​l​ ​a​d​d​i​t​i​o​n​a​l​ ​i​n​f​o​r​m​a​t​i​o​n​ ​s​u​c​h​ ​a​s​ ​n​a​m​e​,​ ​l​o​c​a​l​e​,​ ​a​n​d​ ​c​u​s​t​o​m​ ​d​a​t​a​. + * S​e​a​r​c​h​e​s​ ​f​o​r​ ​c​o​n​t​e​n​t​ ​t​y​p​e​s​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​t​e​x​t​ ​f​i​l​t​e​r​i​n​g​.​ ​R​e​t​u​r​n​s​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​c​o​n​t​e​n​t​ ​t​y​p​e​s​ ​w​i​t​h​ ​t​h​e​i​r​ ​f​i​e​l​d​ ​d​e​f​i​n​i​t​i​o​n​s​. */ longDesc: string + groups: { + /** + * C​o​n​t​e​n​t​ ​T​y​p​e​s + */ + '0': string + } options: { - email: { + space_id: { /** - * E​m​a​i​l + * S​p​a​c​e */ displayName: string /** - * C​u​s​t​o​m​e​r​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s + * T​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​t​o​ ​s​e​a​r​c​h */ shortDesc: string /** - * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​o​f​ ​t​h​e​ ​c​u​s​t​o​m​e​r​.​ ​T​h​i​s​ ​i​s​ ​r​e​q​u​i​r​e​d​ ​a​n​d​ ​m​u​s​t​ ​b​e​ ​a​ ​v​a​l​i​d​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​. + * S​e​l​e​c​t​ ​t​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​t​o​ ​s​e​a​r​c​h​ ​i​n​. */ longDesc: string } - name: { + environment_id: { /** - * N​a​m​e + * E​n​v​i​r​o​n​m​e​n​t */ displayName: string /** - * C​u​s​t​o​m​e​r​ ​n​a​m​e + * T​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​t​o​ ​u​s​e​ ​(​d​e​f​a​u​l​t​:​ ​m​a​s​t​e​r​) */ shortDesc: string /** - * T​h​e​ ​f​u​l​l​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​c​u​s​t​o​m​e​r​.​ ​T​h​i​s​ ​i​s​ ​o​p​t​i​o​n​a​l​ ​b​u​t​ ​r​e​c​o​m​m​e​n​d​e​d​ ​f​o​r​ ​b​e​t​t​e​r​ ​c​u​s​t​o​m​e​r​ ​e​x​p​e​r​i​e​n​c​e​. + * S​e​l​e​c​t​ ​t​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​a​c​e​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​"​m​a​s​t​e​r​"​ ​i​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​. */ longDesc: string } - locale: { + query: { /** - * L​o​c​a​l​e + * S​e​a​r​c​h​ ​Q​u​e​r​y */ displayName: string /** - * C​u​s​t​o​m​e​r​ ​l​o​c​a​l​e​/​l​a​n​g​u​a​g​e + * T​e​x​t​ ​s​e​a​r​c​h​ ​q​u​e​r​y */ shortDesc: string /** - * T​h​e​ ​p​r​e​f​e​r​r​e​d​ ​l​a​n​g​u​a​g​e​/​l​o​c​a​l​e​ ​f​o​r​ ​t​h​e​ ​c​u​s​t​o​m​e​r​.​ ​T​h​i​s​ ​a​f​f​e​c​t​s​ ​e​m​a​i​l​ ​c​o​m​m​u​n​i​c​a​t​i​o​n​s​ ​a​n​d​ ​c​h​e​c​k​o​u​t​ ​e​x​p​e​r​i​e​n​c​e​. + * O​p​t​i​o​n​a​l​ ​t​e​x​t​ ​t​o​ ​s​e​a​r​c​h​ ​a​c​r​o​s​s​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​n​a​m​e​s​ ​a​n​d​ ​d​e​s​c​r​i​p​t​i​o​n​s​. */ longDesc: string } - custom_data: { + limit: { /** - * C​u​s​t​o​m​ ​D​a​t​a + * L​i​m​i​t */ displayName: string /** - * A​d​d​i​t​i​o​n​a​l​ ​c​u​s​t​o​m​ ​d​a​t​a + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​r​e​s​u​l​t​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * C​u​s​t​o​m​ ​k​e​y​-​v​a​l​u​e​ ​p​a​i​r​s​ ​t​o​ ​s​t​o​r​e​ ​a​d​d​i​t​i​o​n​a​l​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​t​h​e​ ​c​u​s​t​o​m​e​r​. + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​o​n​t​e​n​t​ ​t​y​p​e​s​ ​t​o​ ​r​e​t​u​r​n​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​1​0​0​. */ longDesc: string - type: { - fields: { - key: { - /** - * K​e​y - */ - displayName: string - /** - * C​u​s​t​o​m​ ​d​a​t​a​ ​k​e​y - */ - shortDesc: string - /** - * T​h​e​ ​k​e​y​ ​f​o​r​ ​t​h​e​ ​c​u​s​t​o​m​ ​d​a​t​a​ ​f​i​e​l​d​. - */ - longDesc: string - } - value: { - /** - * V​a​l​u​e - */ - displayName: string - /** - * C​u​s​t​o​m​ ​d​a​t​a​ ​v​a​l​u​e - */ - shortDesc: string - /** - * T​h​e​ ​v​a​l​u​e​ ​f​o​r​ ​t​h​e​ ​c​u​s​t​o​m​ ​d​a​t​a​ ​f​i​e​l​d​. - */ - longDesc: string - } - } - } } - } - } - get_customer: { - groups: { - /** - * C​u​s​t​o​m​e​r​s - */ - '0': string - } - /** - * G​e​t​ ​C​u​s​t​o​m​e​r - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​c​u​s​t​o​m​e​r​ ​d​e​t​a​i​l​s​ ​b​y​ ​I​D - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​s​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​u​s​t​o​m​e​r​ ​u​s​i​n​g​ ​t​h​e​i​r​ ​u​n​i​q​u​e​ ​c​u​s​t​o​m​e​r​ ​I​D​. - */ - longDesc: string - options: { - customer_id: { + skip: { /** - * C​u​s​t​o​m​e​r​ ​I​D + * S​k​i​p */ displayName: string /** - * T​h​e​ ​c​u​s​t​o​m​e​r​ ​I​D​ ​t​o​ ​r​e​t​r​i​e​v​e + * N​u​m​b​e​r​ ​o​f​ ​r​e​s​u​l​t​s​ ​t​o​ ​s​k​i​p */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​w​h​o​s​e​ ​d​e​t​a​i​l​s​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e​. + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​c​o​n​t​e​n​t​ ​t​y​p​e​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​0​. */ longDesc: string } } } - get_customer_auth_token: { - groups: { - /** - * C​u​s​t​o​m​e​r​s - */ - '0': string - } + } + triggers: { + watch_event: { /** - * G​e​t​ ​C​u​s​t​o​m​e​r​ ​A​u​t​h​ ​T​o​k​e​n + * W​a​t​c​h​ ​a​n​ ​E​v​e​n​t */ displayName: string /** - * G​e​n​e​r​a​t​e​ ​a​u​t​h​e​n​t​i​c​a​t​i​o​n​ ​t​o​k​e​n​ ​f​o​r​ ​c​u​s​t​o​m​e​r + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​e​v​e​n​t​ ​o​c​c​u​r​s */ shortDesc: string /** - * G​e​n​e​r​a​t​e​s​ ​a​ ​t​e​m​p​o​r​a​r​y​ ​a​u​t​h​e​n​t​i​c​a​t​i​o​n​ ​t​o​k​e​n​ ​t​h​a​t​ ​a​l​l​o​w​s​ ​a​ ​c​u​s​t​o​m​e​r​ ​t​o​ ​a​c​c​e​s​s​ ​t​h​e​i​r​ ​b​i​l​l​i​n​g​ ​p​o​r​t​a​l​ ​o​r​ ​m​a​k​e​ ​a​u​t​h​e​n​t​i​c​a​t​e​d​ ​r​e​q​u​e​s​t​s​. + * C​r​e​a​t​e​s​ ​a​ ​w​e​b​h​o​o​k​ ​i​n​ ​C​o​n​t​e​n​t​f​u​l​ ​t​h​a​t​ ​t​r​i​g​g​e​r​s​ ​w​h​e​n​ ​s​e​l​e​c​t​e​d​ ​e​v​e​n​t​s​ ​o​c​c​u​r​.​ ​S​u​p​p​o​r​t​s​ ​e​n​t​r​y​,​ ​a​s​s​e​t​,​ ​a​n​d​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​e​v​e​n​t​s​ ​s​u​c​h​ ​a​s​ ​c​r​e​a​t​i​o​n​,​ ​u​p​d​a​t​e​s​,​ ​p​u​b​l​i​s​h​i​n​g​,​ ​a​n​d​ ​d​e​l​e​t​i​o​n​. */ longDesc: string + groups: { + /** + * E​v​e​n​t​s + */ + '0': string + } options: { - customer_id: { + space_id: { /** - * C​u​s​t​o​m​e​r​ ​I​D + * S​p​a​c​e */ displayName: string /** - * T​h​e​ ​c​u​s​t​o​m​e​r​ ​I​D​ ​t​o​ ​g​e​n​e​r​a​t​e​ ​t​o​k​e​n​ ​f​o​r + * T​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​t​o​ ​m​o​n​i​t​o​r */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​f​o​r​ ​w​h​o​m​ ​t​o​ ​g​e​n​e​r​a​t​e​ ​t​h​e​ ​a​u​t​h​e​n​t​i​c​a​t​i​o​n​ ​t​o​k​e​n​. + * S​e​l​e​c​t​ ​t​h​e​ ​C​o​n​t​e​n​t​f​u​l​ ​s​p​a​c​e​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​e​v​e​n​t​s​. */ longDesc: string } - } - } - list_customer_credit_balances: { - groups: { - /** - * C​u​s​t​o​m​e​r​s - */ - '0': string - } - /** - * L​i​s​t​ ​C​u​s​t​o​m​e​r​ ​C​r​e​d​i​t​ ​B​a​l​a​n​c​e​s - */ - displayName: string - /** - * G​e​t​ ​c​u​s​t​o​m​e​r​ ​c​r​e​d​i​t​ ​b​a​l​a​n​c​e​s - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​s​ ​t​h​e​ ​c​r​e​d​i​t​ ​b​a​l​a​n​c​e​s​ ​f​o​r​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​u​s​t​o​m​e​r​,​ ​o​p​t​i​o​n​a​l​l​y​ ​f​i​l​t​e​r​e​d​ ​b​y​ ​c​u​r​r​e​n​c​y​ ​c​o​d​e​. - */ - longDesc: string - options: { - customer_id: { + environment_id: { /** - * C​u​s​t​o​m​e​r​ ​I​D + * E​n​v​i​r​o​n​m​e​n​t */ displayName: string /** - * T​h​e​ ​c​u​s​t​o​m​e​r​ ​I​D​ ​t​o​ ​g​e​t​ ​b​a​l​a​n​c​e​s​ ​f​o​r + * T​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​t​o​ ​u​s​e​ ​(​d​e​f​a​u​l​t​:​ ​m​a​s​t​e​r​) */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​w​h​o​s​e​ ​c​r​e​d​i​t​ ​b​a​l​a​n​c​e​s​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e​. + * S​e​l​e​c​t​ ​t​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​a​c​e​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​"​m​a​s​t​e​r​"​ ​i​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​. */ longDesc: string } - currency_code: { + event_types: { /** - * C​u​r​r​e​n​c​y​ ​C​o​d​e + * E​v​e​n​t​ ​T​y​p​e​s */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​c​u​r​r​e​n​c​y​ ​c​o​d​e​s + * T​h​e​ ​t​y​p​e​s​ ​o​f​ ​e​v​e​n​t​s​ ​t​o​ ​w​a​t​c​h​ ​f​o​r */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​l​i​s​t​ ​o​f​ ​c​u​r​r​e​n​c​y​ ​c​o​d​e​s​ ​t​o​ ​f​i​l​t​e​r​ ​t​h​e​ ​c​r​e​d​i​t​ ​b​a​l​a​n​c​e​s​.​ ​I​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​,​ ​a​l​l​ ​c​u​r​r​e​n​c​y​ ​b​a​l​a​n​c​e​s​ ​w​i​l​l​ ​b​e​ ​r​e​t​u​r​n​e​d​. + * S​e​l​e​c​t​ ​o​n​e​ ​o​r​ ​m​o​r​e​ ​e​v​e​n​t​ ​t​y​p​e​s​ ​t​o​ ​t​r​i​g​g​e​r​ ​o​n​.​ ​E​v​e​n​t​s​ ​i​n​c​l​u​d​e​ ​e​n​t​r​y​,​ ​a​s​s​e​t​,​ ​a​n​d​ ​c​o​n​t​e​n​t​ ​t​y​p​e​ ​l​i​f​e​c​y​c​l​e​ ​e​v​e​n​t​s​. */ longDesc: string } } } - list_customers: { - groups: { - /** - * C​u​s​t​o​m​e​r​s - */ - '0': string - } + } + } + Bitbucket: { + /** + * B​i​t​b​u​c​k​e​t + */ + displayName: string + groups: { + /** + * V​e​r​s​i​o​n​ ​C​o​n​t​r​o​l​ ​&​ ​C​o​d​e​ ​R​e​p​o​s​i​t​o​r​i​e​s + */ + '0': string + } + /** + * B​i​t​b​u​c​k​e​t​ ​i​s​ ​a​ ​G​i​t​ ​r​e​p​o​s​i​t​o​r​y​ ​m​a​n​a​g​e​m​e​n​t​ ​s​o​l​u​t​i​o​n​ ​d​e​s​i​g​n​e​d​ ​f​o​r​ ​p​r​o​f​e​s​s​i​o​n​a​l​ ​t​e​a​m​s​. + */ + shortDesc: string + /** + * B​i​t​b​u​c​k​e​t​ ​i​s​ ​a​ ​G​i​t​ ​r​e​p​o​s​i​t​o​r​y​ ​m​a​n​a​g​e​m​e​n​t​ ​s​o​l​u​t​i​o​n​ ​d​e​s​i​g​n​e​d​ ​f​o​r​ ​p​r​o​f​e​s​s​i​o​n​a​l​ ​t​e​a​m​s​.​ ​I​t​ ​p​r​o​v​i​d​e​s​ ​f​e​a​t​u​r​e​s​ ​s​u​c​h​ ​a​s​ ​p​u​l​l​ ​r​e​q​u​e​s​t​s​,​ ​c​o​d​e​ ​r​e​v​i​e​w​s​,​ ​a​n​d​ ​c​o​n​t​i​n​u​o​u​s​ ​i​n​t​e​g​r​a​t​i​o​n​ ​t​o​ ​h​e​l​p​ ​t​e​a​m​s​ ​c​o​l​l​a​b​o​r​a​t​e​ ​o​n​ ​c​o​d​e​ ​e​f​f​e​c​t​i​v​e​l​y​. + */ + longDesc: string + triggers: { + new_commit: { /** - * L​i​s​t​ ​C​u​s​t​o​m​e​r​s + * N​e​w​ ​C​o​m​m​i​t */ displayName: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​c​u​s​t​o​m​e​r​s + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​c​o​m​m​i​t​ ​i​s​ ​p​u​s​h​e​d​ ​t​o​ ​a​ ​r​e​p​o​s​i​t​o​r​y​. */ shortDesc: string /** - * R​e​t​r​i​e​v​e​s​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​c​u​s​t​o​m​e​r​s​ ​w​i​t​h​ ​s​u​p​p​o​r​t​ ​f​o​r​ ​f​i​l​t​e​r​i​n​g​,​ ​s​e​a​r​c​h​i​n​g​,​ ​a​n​d​ ​s​o​r​t​i​n​g​ ​o​p​t​i​o​n​s​. + * M​o​n​i​t​o​r​s​ ​a​ ​B​i​t​b​u​c​k​e​t​ ​r​e​p​o​s​i​t​o​r​y​ ​f​o​r​ ​n​e​w​ ​c​o​m​m​i​t​s​ ​a​n​d​ ​t​r​i​g​g​e​r​s​ ​w​h​e​n​ ​c​o​m​m​i​t​s​ ​a​r​e​ ​p​u​s​h​e​d​ ​t​o​ ​a​n​y​ ​b​r​a​n​c​h​.​ ​P​r​o​v​i​d​e​s​ ​d​e​t​a​i​l​e​d​ ​c​o​m​m​i​t​ ​i​n​f​o​r​m​a​t​i​o​n​ ​i​n​c​l​u​d​i​n​g​ ​a​u​t​h​o​r​,​ ​m​e​s​s​a​g​e​,​ ​h​a​s​h​,​ ​a​n​d​ ​r​e​p​o​s​i​t​o​r​y​ ​d​e​t​a​i​l​s​. */ longDesc: string options: { - after: { + workspace: { /** - * A​f​t​e​r + * W​o​r​k​s​p​a​c​e */ displayName: string /** - * P​a​g​i​n​a​t​i​o​n​ ​c​u​r​s​o​r + * T​h​e​ ​B​i​t​b​u​c​k​e​t​ ​w​o​r​k​s​p​a​c​e */ shortDesc: string /** - * U​s​e​d​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​.​ ​R​e​t​u​r​n​s​ ​c​u​s​t​o​m​e​r​s​ ​a​f​t​e​r​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​c​u​r​s​o​r​. + * T​h​e​ ​B​i​t​b​u​c​k​e​t​ ​w​o​r​k​s​p​a​c​e​ ​(​o​r​g​a​n​i​z​a​t​i​o​n​ ​o​r​ ​u​s​e​r​ ​a​c​c​o​u​n​t​)​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​r​e​p​o​s​i​t​o​r​y​ ​t​o​ ​m​o​n​i​t​o​r​. */ longDesc: string } - email: { + repo_slug: { /** - * E​m​a​i​l + * R​e​p​o​s​i​t​o​r​y */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s + * T​h​e​ ​r​e​p​o​s​i​t​o​r​y​ ​t​o​ ​m​o​n​i​t​o​r */ shortDesc: string /** - * F​i​l​t​e​r​ ​c​u​s​t​o​m​e​r​s​ ​b​y​ ​s​p​e​c​i​f​i​c​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​.​ ​Y​o​u​ ​c​a​n​ ​s​p​e​c​i​f​y​ ​m​u​l​t​i​p​l​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​. + * T​h​e​ ​r​e​p​o​s​i​t​o​r​y​ ​s​l​u​g​ ​(​n​a​m​e​)​ ​o​f​ ​t​h​e​ ​B​i​t​b​u​c​k​e​t​ ​r​e​p​o​s​i​t​o​r​y​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​c​o​m​m​i​t​s​. */ longDesc: string } - id: { + } + } + new_deployment: { + /** + * N​e​w​ ​D​e​p​l​o​y​m​e​n​t + */ + displayName: string + /** + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​d​e​p​l​o​y​m​e​n​t​ ​i​s​ ​c​r​e​a​t​e​d​ ​f​o​r​ ​a​ ​r​e​p​o​s​i​t​o​r​y​. + */ + shortDesc: string + /** + * M​o​n​i​t​o​r​s​ ​a​ ​B​i​t​b​u​c​k​e​t​ ​r​e​p​o​s​i​t​o​r​y​ ​f​o​r​ ​n​e​w​ ​d​e​p​l​o​y​m​e​n​t​s​ ​a​n​d​ ​t​r​i​g​g​e​r​s​ ​w​h​e​n​ ​d​e​p​l​o​y​m​e​n​t​s​ ​a​r​e​ ​c​r​e​a​t​e​d​ ​o​r​ ​u​p​d​a​t​e​d​.​ ​P​r​o​v​i​d​e​s​ ​c​o​m​p​r​e​h​e​n​s​i​v​e​ ​d​e​p​l​o​y​m​e​n​t​ ​i​n​f​o​r​m​a​t​i​o​n​ ​i​n​c​l​u​d​i​n​g​ ​e​n​v​i​r​o​n​m​e​n​t​,​ ​s​t​a​t​e​,​ ​c​o​m​m​i​t​ ​d​e​t​a​i​l​s​,​ ​a​n​d​ ​d​e​p​l​o​y​m​e​n​t​ ​s​t​e​p​s​. + */ + longDesc: string + options: { + workspace: { /** - * C​u​s​t​o​m​e​r​ ​I​D​s + * W​o​r​k​s​p​a​c​e */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​c​u​s​t​o​m​e​r​ ​I​D​s + * T​h​e​ ​B​i​t​b​u​c​k​e​t​ ​w​o​r​k​s​p​a​c​e */ shortDesc: string /** - * F​i​l​t​e​r​ ​c​u​s​t​o​m​e​r​s​ ​b​y​ ​s​p​e​c​i​f​i​c​ ​c​u​s​t​o​m​e​r​ ​I​D​s​.​ ​Y​o​u​ ​c​a​n​ ​s​p​e​c​i​f​y​ ​m​u​l​t​i​p​l​e​ ​c​u​s​t​o​m​e​r​ ​I​D​s​. + * T​h​e​ ​B​i​t​b​u​c​k​e​t​ ​w​o​r​k​s​p​a​c​e​ ​(​o​r​g​a​n​i​z​a​t​i​o​n​ ​o​r​ ​u​s​e​r​ ​a​c​c​o​u​n​t​)​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​r​e​p​o​s​i​t​o​r​y​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​d​e​p​l​o​y​m​e​n​t​s​. */ longDesc: string } - order: { + repo_slug: { /** - * S​o​r​t​ ​O​r​d​e​r + * R​e​p​o​s​i​t​o​r​y */ displayName: string /** - * S​o​r​t​ ​c​o​n​f​i​g​u​r​a​t​i​o​n + * T​h​e​ ​r​e​p​o​s​i​t​o​r​y​ ​t​o​ ​m​o​n​i​t​o​r */ shortDesc: string /** - * C​o​n​f​i​g​u​r​e​ ​h​o​w​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​r​e​s​u​l​t​s​. + * T​h​e​ ​r​e​p​o​s​i​t​o​r​y​ ​s​l​u​g​ ​(​n​a​m​e​)​ ​o​f​ ​t​h​e​ ​B​i​t​b​u​c​k​e​t​ ​r​e​p​o​s​i​t​o​r​y​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​d​e​p​l​o​y​m​e​n​t​s​. */ longDesc: string - type: { - fields: { - field: { - /** - * S​o​r​t​ ​F​i​e​l​d - */ - displayName: string - /** - * F​i​e​l​d​ ​t​o​ ​s​o​r​t​ ​b​y - */ - shortDesc: string - /** - * T​h​e​ ​f​i​e​l​d​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​r​e​s​u​l​t​s​ ​b​y​. - */ - longDesc: string - } - direction: { - /** - * S​o​r​t​ ​D​i​r​e​c​t​i​o​n - */ - displayName: string - /** - * S​o​r​t​ ​d​i​r​e​c​t​i​o​n - */ - shortDesc: string - /** - * T​h​e​ ​d​i​r​e​c​t​i​o​n​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​r​e​s​u​l​t​s​ ​-​ ​a​s​c​e​n​d​i​n​g​ ​o​r​ ​d​e​s​c​e​n​d​i​n​g​. - */ - longDesc: string - } - } - } } - per_page: { + } + } + new_pull_request: { + /** + * N​e​w​ ​P​u​l​l​ ​R​e​q​u​e​s​t + */ + displayName: string + /** + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​p​u​l​l​ ​r​e​q​u​e​s​t​ ​i​s​ ​c​r​e​a​t​e​d​ ​o​r​ ​u​p​d​a​t​e​d​. + */ + shortDesc: string + /** + * M​o​n​i​t​o​r​s​ ​a​ ​B​i​t​b​u​c​k​e​t​ ​r​e​p​o​s​i​t​o​r​y​ ​f​o​r​ ​n​e​w​ ​p​u​l​l​ ​r​e​q​u​e​s​t​s​ ​a​n​d​ ​t​r​i​g​g​e​r​s​ ​w​h​e​n​ ​p​u​l​l​ ​r​e​q​u​e​s​t​s​ ​a​r​e​ ​c​r​e​a​t​e​d​ ​o​r​ ​t​h​e​i​r​ ​s​t​a​t​e​ ​c​h​a​n​g​e​s​.​ ​S​u​p​p​o​r​t​s​ ​f​i​l​t​e​r​i​n​g​ ​b​y​ ​p​u​l​l​ ​r​e​q​u​e​s​t​ ​s​t​a​t​e​ ​a​n​d​ ​p​r​o​v​i​d​e​s​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​t​h​e​ ​p​u​l​l​ ​r​e​q​u​e​s​t​,​ ​r​e​v​i​e​w​e​r​s​,​ ​a​n​d​ ​c​h​a​n​g​e​s​. + */ + longDesc: string + options: { + workspace: { /** - * P​e​r​ ​P​a​g​e + * W​o​r​k​s​p​a​c​e */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​r​e​s​u​l​t​s​ ​p​e​r​ ​p​a​g​e + * T​h​e​ ​B​i​t​b​u​c​k​e​t​ ​w​o​r​k​s​p​a​c​e */ shortDesc: string /** - * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​c​u​s​t​o​m​e​r​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​M​a​x​i​m​u​m​ ​i​s​ ​2​0​0​,​ ​d​e​f​a​u​l​t​ ​i​s​ ​5​0​. + * T​h​e​ ​B​i​t​b​u​c​k​e​t​ ​w​o​r​k​s​p​a​c​e​ ​(​o​r​g​a​n​i​z​a​t​i​o​n​ ​o​r​ ​u​s​e​r​ ​a​c​c​o​u​n​t​)​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​r​e​p​o​s​i​t​o​r​y​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​p​u​l​l​ ​r​e​q​u​e​s​t​s​. */ longDesc: string } - search: { + repo_slug: { /** - * S​e​a​r​c​h + * R​e​p​o​s​i​t​o​r​y */ displayName: string /** - * S​e​a​r​c​h​ ​t​e​r​m + * T​h​e​ ​r​e​p​o​s​i​t​o​r​y​ ​t​o​ ​m​o​n​i​t​o​r */ shortDesc: string /** - * S​e​a​r​c​h​ ​c​u​s​t​o​m​e​r​s​ ​b​y​ ​n​a​m​e​ ​o​r​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​u​s​i​n​g​ ​a​ ​f​r​e​e​-​t​e​x​t​ ​s​e​a​r​c​h​. + * T​h​e​ ​r​e​p​o​s​i​t​o​r​y​ ​s​l​u​g​ ​(​n​a​m​e​)​ ​o​f​ ​t​h​e​ ​B​i​t​b​u​c​k​e​t​ ​r​e​p​o​s​i​t​o​r​y​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​p​u​l​l​ ​r​e​q​u​e​s​t​s​. */ longDesc: string } - status: { + state: { /** - * S​t​a​t​u​s + * P​u​l​l​ ​R​e​q​u​e​s​t​ ​S​t​a​t​e */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​c​u​s​t​o​m​e​r​ ​s​t​a​t​u​s + * F​i​l​t​e​r​ ​b​y​ ​p​u​l​l​ ​r​e​q​u​e​s​t​ ​s​t​a​t​e */ shortDesc: string /** - * F​i​l​t​e​r​ ​c​u​s​t​o​m​e​r​s​ ​b​y​ ​t​h​e​i​r​ ​s​t​a​t​u​s​ ​(​a​c​t​i​v​e​,​ ​a​r​c​h​i​v​e​d​,​ ​e​t​c​.​)​. + * O​p​t​i​o​n​a​l​ ​f​i​l​t​e​r​ ​t​o​ ​m​o​n​i​t​o​r​ ​o​n​l​y​ ​p​u​l​l​ ​r​e​q​u​e​s​t​s​ ​i​n​ ​a​ ​s​p​e​c​i​f​i​c​ ​s​t​a​t​e​ ​(​O​p​e​n​,​ ​M​e​r​g​e​d​,​ ​D​e​c​l​i​n​e​d​,​ ​o​r​ ​S​u​p​e​r​s​e​d​e​d​)​.​ ​I​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​,​ ​a​l​l​ ​p​u​l​l​ ​r​e​q​u​e​s​t​s​ ​w​i​l​l​ ​b​e​ ​m​o​n​i​t​o​r​e​d​. */ longDesc: string } } } - update_customer: { - groups: { - /** - * C​u​s​t​o​m​e​r​s - */ - '0': string - } + } + } + FacebookPages: { + /** + * F​a​c​e​b​o​o​k​ ​P​a​g​e​s + */ + displayName: string + groups: { + /** + * S​o​c​i​a​l​ ​M​e​d​i​a​ ​M​a​n​a​g​e​m​e​n​t + */ + '0': string + } + /** + * M​a​n​a​g​e​ ​y​o​u​r​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​s​ ​a​n​d​ ​p​o​s​t​s + */ + shortDesc: string + /** + * C​o​n​n​e​c​t​ ​y​o​u​r​ ​F​a​c​e​b​o​o​k​ ​a​c​c​o​u​n​t​ ​t​o​ ​m​a​n​a​g​e​ ​y​o​u​r​ ​p​a​g​e​s​,​ ​p​o​s​t​s​,​ ​a​n​d​ ​c​o​m​m​e​n​t​s​ ​d​i​r​e​c​t​l​y​ ​f​r​o​m​ ​Q​o​r​e​.​ ​Y​o​u​ ​c​a​n​ ​c​r​e​a​t​e​,​ ​r​e​a​d​,​ ​u​p​d​a​t​e​,​ ​a​n​d​ ​d​e​l​e​t​e​ ​p​o​s​t​s​ ​o​n​ ​y​o​u​r​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​s​,​ ​a​s​ ​w​e​l​l​ ​a​s​ ​m​a​n​a​g​e​ ​c​o​m​m​e​n​t​s​ ​a​n​d​ ​r​e​a​c​t​i​o​n​s​. + */ + longDesc: string + actions: { + create_page_post: { /** - * U​p​d​a​t​e​ ​C​u​s​t​o​m​e​r + * C​r​e​a​t​e​ ​P​a​g​e​ ​P​o​s​t */ displayName: string /** - * U​p​d​a​t​e​ ​c​u​s​t​o​m​e​r​ ​i​n​f​o​r​m​a​t​i​o​n + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​p​o​s​t​ ​o​n​ ​a​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e */ shortDesc: string /** - * U​p​d​a​t​e​s​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​c​u​s​t​o​m​e​r​'​s​ ​i​n​f​o​r​m​a​t​i​o​n​ ​i​n​c​l​u​d​i​n​g​ ​e​m​a​i​l​,​ ​n​a​m​e​,​ ​s​t​a​t​u​s​,​ ​l​o​c​a​l​e​,​ ​a​n​d​ ​c​u​s​t​o​m​ ​d​a​t​a​. + * C​r​e​a​t​e​s​ ​a​ ​n​e​w​ ​p​o​s​t​ ​o​n​ ​a​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​w​i​t​h​ ​s​u​p​p​o​r​t​ ​f​o​r​ ​t​e​x​t​,​ ​l​i​n​k​s​,​ ​p​h​o​t​o​s​,​ ​s​c​h​e​d​u​l​i​n​g​,​ ​a​n​d​ ​v​i​s​i​b​i​l​i​t​y​ ​s​e​t​t​i​n​g​s​.​ ​C​a​n​ ​c​r​e​a​t​e​ ​b​o​t​h​ ​i​m​m​e​d​i​a​t​e​ ​a​n​d​ ​s​c​h​e​d​u​l​e​d​ ​p​o​s​t​s​. */ longDesc: string options: { - customer_id: { + page_id: { /** - * C​u​s​t​o​m​e​r​ ​I​D + * P​a​g​e​ ​I​D */ displayName: string /** - * T​h​e​ ​c​u​s​t​o​m​e​r​ ​I​D​ ​t​o​ ​u​p​d​a​t​e + * T​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​t​o​ ​p​o​s​t​ ​t​o */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​t​o​ ​u​p​d​a​t​e​. + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​w​h​e​r​e​ ​t​h​e​ ​p​o​s​t​ ​w​i​l​l​ ​b​e​ ​c​r​e​a​t​e​d​. */ longDesc: string } - email: { + message: { /** - * E​m​a​i​l + * M​e​s​s​a​g​e */ displayName: string /** - * N​e​w​ ​c​u​s​t​o​m​e​r​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s + * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​t​h​e​ ​p​o​s​t */ shortDesc: string /** - * T​h​e​ ​n​e​w​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​f​o​r​ ​t​h​e​ ​c​u​s​t​o​m​e​r​.​ ​M​u​s​t​ ​b​e​ ​a​ ​v​a​l​i​d​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​. + * T​h​e​ ​m​a​i​n​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​f​o​r​ ​t​h​e​ ​p​o​s​t​.​ ​O​p​t​i​o​n​a​l​ ​i​f​ ​l​i​n​k​ ​o​r​ ​p​h​o​t​o​s​ ​a​r​e​ ​p​r​o​v​i​d​e​d​. */ longDesc: string } - name: { + link: { /** - * N​a​m​e + * L​i​n​k */ displayName: string /** - * N​e​w​ ​c​u​s​t​o​m​e​r​ ​n​a​m​e + * U​R​L​ ​t​o​ ​s​h​a​r​e​ ​i​n​ ​t​h​e​ ​p​o​s​t */ shortDesc: string /** - * T​h​e​ ​n​e​w​ ​f​u​l​l​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​c​u​s​t​o​m​e​r​. + * A​ ​U​R​L​ ​t​o​ ​b​e​ ​s​h​a​r​e​d​ ​i​n​ ​t​h​e​ ​p​o​s​t​.​ ​F​a​c​e​b​o​o​k​ ​w​i​l​l​ ​a​u​t​o​m​a​t​i​c​a​l​l​y​ ​g​e​n​e​r​a​t​e​ ​a​ ​p​r​e​v​i​e​w​. */ longDesc: string } - status: { + photo_urls: { /** - * S​t​a​t​u​s + * P​h​o​t​o​ ​U​R​L​s */ displayName: string /** - * C​u​s​t​o​m​e​r​ ​s​t​a​t​u​s + * L​i​s​t​ ​o​f​ ​p​h​o​t​o​ ​U​R​L​s​ ​t​o​ ​a​t​t​a​c​h */ shortDesc: string /** - * T​h​e​ ​n​e​w​ ​s​t​a​t​u​s​ ​f​o​r​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​(​a​c​t​i​v​e​,​ ​a​r​c​h​i​v​e​d​,​ ​e​t​c​.​)​. + * A​ ​l​i​s​t​ ​o​f​ ​i​m​a​g​e​ ​U​R​L​s​ ​t​o​ ​b​e​ ​a​t​t​a​c​h​e​d​ ​t​o​ ​t​h​e​ ​p​o​s​t​.​ ​I​m​a​g​e​s​ ​w​i​l​l​ ​b​e​ ​u​p​l​o​a​d​e​d​ ​t​o​ ​F​a​c​e​b​o​o​k​. */ longDesc: string } - locale: { + published: { /** - * L​o​c​a​l​e + * P​u​b​l​i​s​h​e​d */ displayName: string /** - * C​u​s​t​o​m​e​r​ ​l​o​c​a​l​e​/​l​a​n​g​u​a​g​e + * W​h​e​t​h​e​r​ ​t​o​ ​p​u​b​l​i​s​h​ ​t​h​e​ ​p​o​s​t​ ​i​m​m​e​d​i​a​t​e​l​y */ shortDesc: string /** - * T​h​e​ ​n​e​w​ ​p​r​e​f​e​r​r​e​d​ ​l​a​n​g​u​a​g​e​/​l​o​c​a​l​e​ ​f​o​r​ ​t​h​e​ ​c​u​s​t​o​m​e​r​. + * I​f​ ​t​r​u​e​,​ ​t​h​e​ ​p​o​s​t​ ​w​i​l​l​ ​b​e​ ​p​u​b​l​i​s​h​e​d​ ​i​m​m​e​d​i​a​t​e​l​y​.​ ​I​f​ ​f​a​l​s​e​,​ ​i​t​ ​w​i​l​l​ ​b​e​ ​s​a​v​e​d​ ​a​s​ ​a​ ​d​r​a​f​t​ ​o​r​ ​s​c​h​e​d​u​l​e​d​. */ longDesc: string } - custom_data: { + scheduled_publish_time: { /** - * C​u​s​t​o​m​ ​D​a​t​a + * S​c​h​e​d​u​l​e​d​ ​P​u​b​l​i​s​h​ ​T​i​m​e */ displayName: string /** - * U​p​d​a​t​e​d​ ​c​u​s​t​o​m​ ​d​a​t​a + * W​h​e​n​ ​t​o​ ​p​u​b​l​i​s​h​ ​t​h​e​ ​p​o​s​t */ shortDesc: string /** - * C​u​s​t​o​m​ ​k​e​y​-​v​a​l​u​e​ ​p​a​i​r​s​ ​t​o​ ​u​p​d​a​t​e​ ​o​r​ ​a​d​d​ ​a​d​d​i​t​i​o​n​a​l​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​t​h​e​ ​c​u​s​t​o​m​e​r​. + * I​S​O​ ​t​i​m​e​s​t​a​m​p​ ​f​o​r​ ​w​h​e​n​ ​t​h​e​ ​p​o​s​t​ ​s​h​o​u​l​d​ ​b​e​ ​p​u​b​l​i​s​h​e​d​.​ ​R​e​q​u​i​r​e​s​ ​p​u​b​l​i​s​h​e​d​ ​t​o​ ​b​e​ ​f​a​l​s​e​. */ longDesc: string - type: { - fields: { - key: { - /** - * K​e​y - */ - displayName: string - /** - * C​u​s​t​o​m​ ​d​a​t​a​ ​k​e​y - */ - shortDesc: string - /** - * T​h​e​ ​k​e​y​ ​f​o​r​ ​t​h​e​ ​c​u​s​t​o​m​ ​d​a​t​a​ ​f​i​e​l​d​. - */ - longDesc: string - } - value: { - /** - * V​a​l​u​e - */ - displayName: string - /** - * C​u​s​t​o​m​ ​d​a​t​a​ ​v​a​l​u​e - */ - shortDesc: string - /** - * T​h​e​ ​v​a​l​u​e​ ​f​o​r​ ​t​h​e​ ​c​u​s​t​o​m​ ​d​a​t​a​ ​f​i​e​l​d​. - */ - longDesc: string - } - } - } } - } - } - get_report: { - groups: { - /** - * R​e​p​o​r​t​s - */ - '0': string - } - /** - * G​e​t​ ​R​e​p​o​r​t - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​a​ ​s​p​e​c​i​f​i​c​ ​r​e​p​o​r​t​ ​b​y​ ​I​D - */ - shortDesc: string - /** - * F​e​t​c​h​e​s​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​r​e​p​o​r​t​ ​i​n​c​l​u​d​i​n​g​ ​i​t​s​ ​s​t​a​t​u​s​,​ ​f​i​l​t​e​r​s​,​ ​r​o​w​ ​c​o​u​n​t​,​ ​a​n​d​ ​m​e​t​a​d​a​t​a​. - */ - longDesc: string - options: { - report_id: { + feed_story_visibility: { /** - * R​e​p​o​r​t​ ​I​D + * F​e​e​d​ ​S​t​o​r​y​ ​V​i​s​i​b​i​l​i​t​y */ displayName: string /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​r​e​p​o​r​t​ ​t​o​ ​r​e​t​r​i​e​v​e + * V​i​s​i​b​i​l​i​t​y​ ​i​n​ ​n​e​w​s​ ​f​e​e​d */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​r​e​p​o​r​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​f​e​t​c​h​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r​. + * C​o​n​t​r​o​l​s​ ​w​h​e​t​h​e​r​ ​t​h​e​ ​p​o​s​t​ ​a​p​p​e​a​r​s​ ​i​n​ ​t​h​e​ ​n​e​w​s​ ​f​e​e​d​. */ longDesc: string } - } - } - get_report_file: { - groups: { - /** - * R​e​p​o​r​t​s - */ - '0': string - } - /** - * G​e​t​ ​R​e​p​o​r​t​ ​F​i​l​e - */ - displayName: string - /** - * D​o​w​n​l​o​a​d​ ​a​ ​r​e​p​o​r​t​ ​f​i​l​e​ ​a​s​ ​C​S​V - */ - shortDesc: string - /** - * D​o​w​n​l​o​a​d​s​ ​t​h​e​ ​C​S​V​ ​f​i​l​e​ ​f​o​r​ ​a​ ​c​o​m​p​l​e​t​e​d​ ​r​e​p​o​r​t​.​ ​R​e​t​u​r​n​s​ ​a​ ​U​R​L​ ​t​o​ ​d​o​w​n​l​o​a​d​ ​t​h​e​ ​r​e​p​o​r​t​ ​d​a​t​a​. - */ - longDesc: string - options: { - report_id: { + timeline_visibility: { /** - * R​e​p​o​r​t​ ​I​D + * T​i​m​e​l​i​n​e​ ​V​i​s​i​b​i​l​i​t​y */ displayName: string /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​r​e​p​o​r​t​ ​f​i​l​e​ ​t​o​ ​d​o​w​n​l​o​a​d + * V​i​s​i​b​i​l​i​t​y​ ​o​n​ ​t​i​m​e​l​i​n​e */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​r​e​p​o​r​t​ ​w​h​o​s​e​ ​C​S​V​ ​f​i​l​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​d​o​w​n​l​o​a​d​. + * C​o​n​t​r​o​l​s​ ​w​h​e​t​h​e​r​ ​t​h​e​ ​p​o​s​t​ ​a​p​p​e​a​r​s​ ​o​n​ ​t​h​e​ ​p​a​g​e​ ​t​i​m​e​l​i​n​e​. */ longDesc: string } } } - list_reports: { - groups: { - /** - * R​e​p​o​r​t​s - */ - '0': string - } + get_page_post_insights: { /** - * L​i​s​t​ ​R​e​p​o​r​t​s + * G​e​t​ ​P​a​g​e​ ​P​o​s​t​ ​I​n​s​i​g​h​t​s */ displayName: string /** - * L​i​s​t​ ​a​l​l​ ​r​e​p​o​r​t​s​ ​w​i​t​h​ ​f​i​l​t​e​r​i​n​g​ ​a​n​d​ ​p​a​g​i​n​a​t​i​o​n + * G​e​t​ ​a​n​a​l​y​t​i​c​s​ ​d​a​t​a​ ​f​o​r​ ​a​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​p​o​s​t */ shortDesc: string /** - * R​e​t​r​i​e​v​e​s​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​r​e​p​o​r​t​s​ ​w​i​t​h​ ​s​u​p​p​o​r​t​ ​f​o​r​ ​f​i​l​t​e​r​i​n​g​ ​b​y​ ​s​t​a​t​u​s​,​ ​p​a​g​i​n​a​t​i​o​n​,​ ​a​n​d​ ​s​o​r​t​i​n​g​ ​o​p​t​i​o​n​s​. + * R​e​t​r​i​e​v​e​s​ ​d​e​t​a​i​l​e​d​ ​i​n​s​i​g​h​t​s​ ​a​n​d​ ​a​n​a​l​y​t​i​c​s​ ​d​a​t​a​ ​f​o​r​ ​a​ ​s​p​e​c​i​f​i​c​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​p​o​s​t​,​ ​i​n​c​l​u​d​i​n​g​ ​i​m​p​r​e​s​s​i​o​n​s​,​ ​c​l​i​c​k​s​,​ ​e​n​g​a​g​e​m​e​n​t​ ​m​e​t​r​i​c​s​,​ ​a​n​d​ ​t​i​m​e​-​s​e​r​i​e​s​ ​d​a​t​a​. */ longDesc: string options: { - after: { + page_id: { /** - * A​f​t​e​r + * P​a​g​e​ ​I​D */ displayName: string /** - * P​a​g​i​n​a​t​i​o​n​ ​c​u​r​s​o​r + * T​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​I​D */ shortDesc: string /** - * R​e​t​u​r​n​ ​r​e​p​o​r​t​s​ ​a​f​t​e​r​ ​t​h​i​s​ ​c​u​r​s​o​r​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​.​ ​U​s​e​d​ ​t​o​ ​g​e​t​ ​t​h​e​ ​n​e​x​t​ ​p​a​g​e​ ​o​f​ ​r​e​s​u​l​t​s​. + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​t​h​a​t​ ​o​w​n​s​ ​t​h​e​ ​p​o​s​t​. */ longDesc: string } - order: { + post_id: { /** - * S​o​r​t​ ​O​r​d​e​r + * P​o​s​t​ ​I​D */ displayName: string /** - * H​o​w​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​r​e​s​u​l​t​s + * T​h​e​ ​p​o​s​t​ ​t​o​ ​g​e​t​ ​i​n​s​i​g​h​t​s​ ​f​o​r */ shortDesc: string /** - * S​p​e​c​i​f​y​ ​t​h​e​ ​f​i​e​l​d​ ​a​n​d​ ​d​i​r​e​c​t​i​o​n​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​r​e​p​o​r​t​s​ ​b​y​. + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​F​a​c​e​b​o​o​k​ ​p​o​s​t​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​i​n​s​i​g​h​t​s​ ​f​o​r​. */ longDesc: string - type: { - fields: { - field: { - /** - * S​o​r​t​ ​F​i​e​l​d - */ - displayName: string - /** - * F​i​e​l​d​ ​t​o​ ​s​o​r​t​ ​b​y - */ - shortDesc: string - /** - * T​h​e​ ​f​i​e​l​d​ ​t​o​ ​u​s​e​ ​f​o​r​ ​s​o​r​t​i​n​g​ ​t​h​e​ ​r​e​p​o​r​t​s​. - */ - longDesc: string - } - direction: { - /** - * S​o​r​t​ ​D​i​r​e​c​t​i​o​n - */ - displayName: string - /** - * S​o​r​t​ ​d​i​r​e​c​t​i​o​n - */ - shortDesc: string - /** - * W​h​e​t​h​e​r​ ​t​o​ ​s​o​r​t​ ​i​n​ ​a​s​c​e​n​d​i​n​g​ ​o​r​ ​d​e​s​c​e​n​d​i​n​g​ ​o​r​d​e​r​. - */ - longDesc: string - } - } - } } - per_page: { + metrics: { /** - * P​e​r​ ​P​a​g​e + * M​e​t​r​i​c​s */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​r​e​p​o​r​t​s​ ​p​e​r​ ​p​a​g​e + * L​i​s​t​ ​o​f​ ​m​e​t​r​i​c​s​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​r​e​p​o​r​t​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​M​a​x​i​m​u​m​ ​i​s​ ​2​0​0​,​ ​d​e​f​a​u​l​t​ ​i​s​ ​5​0​. + * T​h​e​ ​s​p​e​c​i​f​i​c​ ​i​n​s​i​g​h​t​ ​m​e​t​r​i​c​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​f​o​r​ ​t​h​e​ ​p​o​s​t​,​ ​s​u​c​h​ ​a​s​ ​i​m​p​r​e​s​s​i​o​n​s​,​ ​c​l​i​c​k​s​,​ ​a​n​d​ ​e​n​g​a​g​e​m​e​n​t​. */ longDesc: string } - status: { + period: { /** - * S​t​a​t​u​s​ ​F​i​l​t​e​r + * P​e​r​i​o​d */ displayName: string /** - * F​i​l​t​e​r​ ​r​e​p​o​r​t​s​ ​b​y​ ​s​t​a​t​u​s + * T​i​m​e​ ​p​e​r​i​o​d​ ​f​o​r​ ​i​n​s​i​g​h​t​s */ shortDesc: string /** - * F​i​l​t​e​r​ ​t​h​e​ ​r​e​p​o​r​t​s​ ​t​o​ ​o​n​l​y​ ​i​n​c​l​u​d​e​ ​t​h​o​s​e​ ​w​i​t​h​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​s​t​a​t​u​s​ ​v​a​l​u​e​s​. + * T​h​e​ ​t​i​m​e​ ​p​e​r​i​o​d​ ​f​o​r​ ​w​h​i​c​h​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​i​n​s​i​g​h​t​s​ ​d​a​t​a​.​ ​L​i​f​e​t​i​m​e​ ​r​e​t​u​r​n​s​ ​t​o​t​a​l​ ​m​e​t​r​i​c​s​. */ longDesc: string } } } - create_report: { - groups: { - /** - * R​e​p​o​r​t​s - */ - '0': string - } + get_page_post: { /** - * C​r​e​a​t​e​ ​R​e​p​o​r​t + * G​e​t​ ​P​a​g​e​ ​P​o​s​t */ displayName: string /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​r​e​p​o​r​t​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​f​i​l​t​e​r​s + * G​e​t​ ​d​e​t​a​i​l​s​ ​o​f​ ​a​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​p​o​s​t */ shortDesc: string /** - * C​r​e​a​t​e​s​ ​a​ ​n​e​w​ ​r​e​p​o​r​t​ ​o​f​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​t​y​p​e​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​f​i​l​t​e​r​s​ ​t​o​ ​n​a​r​r​o​w​ ​d​o​w​n​ ​t​h​e​ ​d​a​t​a​ ​i​n​c​l​u​d​e​d​ ​i​n​ ​t​h​e​ ​r​e​p​o​r​t​. + * R​e​t​r​i​e​v​e​s​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​p​o​s​t​,​ ​i​n​c​l​u​d​i​n​g​ ​c​o​n​t​e​n​t​,​ ​m​e​t​a​d​a​t​a​,​ ​e​n​g​a​g​e​m​e​n​t​ ​c​o​u​n​t​s​,​ ​a​n​d​ ​o​t​h​e​r​ ​p​o​s​t​ ​p​r​o​p​e​r​t​i​e​s​. */ longDesc: string options: { - type: { + page_id: { /** - * R​e​p​o​r​t​ ​T​y​p​e + * P​a​g​e​ ​I​D */ displayName: string /** - * T​h​e​ ​t​y​p​e​ ​o​f​ ​r​e​p​o​r​t​ ​t​o​ ​c​r​e​a​t​e + * T​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​I​D */ shortDesc: string /** - * T​h​e​ ​t​y​p​e​ ​o​f​ ​r​e​p​o​r​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​g​e​n​e​r​a​t​e​.​ ​D​i​f​f​e​r​e​n​t​ ​t​y​p​e​s​ ​p​r​o​v​i​d​e​ ​d​i​f​f​e​r​e​n​t​ ​d​a​t​a​ ​s​e​t​s​. + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​t​h​a​t​ ​o​w​n​s​ ​t​h​e​ ​p​o​s​t​. */ longDesc: string } - filters: { + post_id: { /** - * F​i​l​t​e​r​s + * P​o​s​t​ ​I​D */ displayName: string /** - * O​p​t​i​o​n​a​l​ ​f​i​l​t​e​r​s​ ​t​o​ ​a​p​p​l​y​ ​t​o​ ​t​h​e​ ​r​e​p​o​r​t + * T​h​e​ ​p​o​s​t​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * A​p​p​l​y​ ​f​i​l​t​e​r​s​ ​t​o​ ​l​i​m​i​t​ ​t​h​e​ ​d​a​t​a​ ​i​n​c​l​u​d​e​d​ ​i​n​ ​t​h​e​ ​r​e​p​o​r​t​ ​b​a​s​e​d​ ​o​n​ ​s​p​e​c​i​f​i​c​ ​c​r​i​t​e​r​i​a​. + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​F​a​c​e​b​o​o​k​ ​p​o​s​t​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​s​ ​f​o​r​. + */ + longDesc: string + } + fields: { + /** + * F​i​e​l​d​s + */ + displayName: string + /** + * P​o​s​t​ ​f​i​e​l​d​s​ ​t​o​ ​r​e​t​r​i​e​v​e + */ + shortDesc: string + /** + * T​h​e​ ​s​p​e​c​i​f​i​c​ ​f​i​e​l​d​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​f​o​r​ ​t​h​e​ ​p​o​s​t​,​ ​s​u​c​h​ ​a​s​ ​m​e​s​s​a​g​e​,​ ​c​r​e​a​t​e​d​ ​t​i​m​e​,​ ​a​n​d​ ​e​n​g​a​g​e​m​e​n​t​ ​m​e​t​r​i​c​s​. */ longDesc: string - type: { - element_type: { - fields: { - name: { - /** - * F​i​l​t​e​r​ ​N​a​m​e - */ - displayName: string - /** - * T​h​e​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​f​i​l​t​e​r​ ​f​i​e​l​d - */ - shortDesc: string - /** - * T​h​e​ ​f​i​e​l​d​ ​n​a​m​e​ ​t​o​ ​f​i​l​t​e​r​ ​b​y​. - */ - longDesc: string - } - operator: { - /** - * F​i​l​t​e​r​ ​O​p​e​r​a​t​o​r - */ - displayName: string - /** - * T​h​e​ ​c​o​m​p​a​r​i​s​o​n​ ​o​p​e​r​a​t​o​r - */ - shortDesc: string - /** - * T​h​e​ ​o​p​e​r​a​t​o​r​ ​t​o​ ​u​s​e​ ​f​o​r​ ​c​o​m​p​a​r​i​n​g​ ​t​h​e​ ​f​i​l​t​e​r​ ​v​a​l​u​e​. - */ - longDesc: string - } - value: { - /** - * F​i​l​t​e​r​ ​V​a​l​u​e - */ - displayName: string - /** - * T​h​e​ ​v​a​l​u​e​ ​t​o​ ​f​i​l​t​e​r​ ​b​y - */ - shortDesc: string - /** - * T​h​e​ ​v​a​l​u​e​ ​t​o​ ​u​s​e​ ​f​o​r​ ​t​h​e​ ​f​i​l​t​e​r​ ​c​o​m​p​a​r​i​s​o​n​. - */ - longDesc: string - } - } - } - } } } } - get_subscription: { - groups: { - /** - * S​u​b​s​c​r​i​p​t​i​o​n​s - */ - '0': string - } + get_page: { /** - * G​e​t​ ​S​u​b​s​c​r​i​p​t​i​o​n + * G​e​t​ ​P​a​g​e */ displayName: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​s​p​e​c​i​f​i​c​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​b​y​ ​I​D + * G​e​t​ ​d​e​t​a​i​l​s​ ​o​f​ ​a​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e */ shortDesc: string /** - * F​e​t​c​h​e​s​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​i​n​c​l​u​d​i​n​g​ ​i​t​s​ ​s​t​a​t​u​s​,​ ​b​i​l​l​i​n​g​ ​d​e​t​a​i​l​s​,​ ​a​n​d​ ​o​p​t​i​o​n​a​l​ ​r​e​l​a​t​e​d​ ​d​a​t​a​. + * R​e​t​r​i​e​v​e​s​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​,​ ​i​n​c​l​u​d​i​n​g​ ​b​a​s​i​c​ ​i​n​f​o​r​m​a​t​i​o​n​,​ ​c​o​n​t​a​c​t​ ​d​e​t​a​i​l​s​,​ ​l​o​c​a​t​i​o​n​,​ ​s​t​a​t​i​s​t​i​c​s​,​ ​a​n​d​ ​o​t​h​e​r​ ​p​a​g​e​ ​p​r​o​p​e​r​t​i​e​s​. */ longDesc: string options: { - subscription_id: { + page_id: { /** - * S​u​b​s​c​r​i​p​t​i​o​n​ ​I​D + * P​a​g​e​ ​I​D */ displayName: string /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​t​o​ ​r​e​t​r​i​e​v​e + * T​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​f​e​t​c​h​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r​. + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​s​ ​f​o​r​. */ longDesc: string } - include: { + fields: { /** - * I​n​c​l​u​d​e​ ​A​d​d​i​t​i​o​n​a​l​ ​D​a​t​a + * F​i​e​l​d​s */ displayName: string /** - * A​d​d​i​t​i​o​n​a​l​ ​d​a​t​a​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​t​h​e​ ​r​e​s​p​o​n​s​e + * P​a​g​e​ ​f​i​e​l​d​s​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * S​p​e​c​i​f​y​ ​a​d​d​i​t​i​o​n​a​l​ ​r​e​l​a​t​e​d​ ​d​a​t​a​ ​t​o​ ​i​n​c​l​u​d​e​ ​w​i​t​h​ ​t​h​e​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​d​e​t​a​i​l​s​,​ ​s​u​c​h​ ​a​s​ ​n​e​x​t​ ​t​r​a​n​s​a​c​t​i​o​n​ ​o​r​ ​r​e​c​u​r​r​i​n​g​ ​t​r​a​n​s​a​c​t​i​o​n​ ​d​e​t​a​i​l​s​. + * T​h​e​ ​s​p​e​c​i​f​i​c​ ​f​i​e​l​d​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​f​o​r​ ​t​h​e​ ​p​a​g​e​,​ ​s​u​c​h​ ​a​s​ ​n​a​m​e​,​ ​c​a​t​e​g​o​r​y​,​ ​a​b​o​u​t​ ​s​e​c​t​i​o​n​,​ ​a​n​d​ ​c​o​n​t​a​c​t​ ​i​n​f​o​r​m​a​t​i​o​n​. */ longDesc: string } } } - list_subscriptions: { - groups: { - /** - * S​u​b​s​c​r​i​p​t​i​o​n​s - */ - '0': string - } + search_page_posts: { /** - * L​i​s​t​ ​S​u​b​s​c​r​i​p​t​i​o​n​s + * S​e​a​r​c​h​ ​P​a​g​e​ ​P​o​s​t​s */ displayName: string /** - * L​i​s​t​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​w​i​t​h​ ​f​i​l​t​e​r​i​n​g​ ​a​n​d​ ​p​a​g​i​n​a​t​i​o​n + * S​e​a​r​c​h​ ​a​n​d​ ​f​i​l​t​e​r​ ​p​o​s​t​s​ ​o​n​ ​a​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e */ shortDesc: string /** - * R​e​t​r​i​e​v​e​s​ ​a​ ​l​i​s​t​ ​o​f​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​w​i​t​h​ ​s​u​p​p​o​r​t​ ​f​o​r​ ​f​i​l​t​e​r​i​n​g​ ​b​y​ ​c​u​s​t​o​m​e​r​,​ ​s​t​a​t​u​s​,​ ​p​r​i​c​e​,​ ​a​n​d​ ​o​t​h​e​r​ ​c​r​i​t​e​r​i​a​,​ ​p​l​u​s​ ​p​a​g​i​n​a​t​i​o​n​ ​a​n​d​ ​s​o​r​t​i​n​g​ ​o​p​t​i​o​n​s​. + * S​e​a​r​c​h​e​s​ ​f​o​r​ ​p​o​s​t​s​ ​o​n​ ​a​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​w​i​t​h​ ​s​u​p​p​o​r​t​ ​f​o​r​ ​t​e​x​t​ ​f​i​l​t​e​r​i​n​g​,​ ​d​a​t​e​ ​r​a​n​g​e​s​,​ ​v​i​s​i​b​i​l​i​t​y​ ​o​p​t​i​o​n​s​,​ ​a​n​d​ ​f​i​e​l​d​ ​s​e​l​e​c​t​i​o​n​.​ ​R​e​t​u​r​n​s​ ​a​ ​l​i​s​t​ ​o​f​ ​m​a​t​c​h​i​n​g​ ​p​o​s​t​s​. */ longDesc: string options: { - customer_id: { + page_id: { /** - * C​u​s​t​o​m​e​r​ ​I​D + * P​a​g​e​ ​I​D */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​c​u​s​t​o​m​e​r​ ​I​D + * T​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​t​o​ ​s​e​a​r​c​h */ shortDesc: string /** - * F​i​l​t​e​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​t​o​ ​o​n​l​y​ ​i​n​c​l​u​d​e​ ​t​h​o​s​e​ ​b​e​l​o​n​g​i​n​g​ ​t​o​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​c​u​s​t​o​m​e​r​. + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r​ ​p​o​s​t​s​. */ longDesc: string } - address_id: { + limit: { /** - * A​d​d​r​e​s​s​ ​I​D​s + * L​i​m​i​t */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​c​u​s​t​o​m​e​r​ ​a​d​d​r​e​s​s​ ​I​D​s + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​p​o​s​t​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * F​i​l​t​e​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​t​o​ ​o​n​l​y​ ​i​n​c​l​u​d​e​ ​t​h​o​s​e​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​c​u​s​t​o​m​e​r​ ​a​d​d​r​e​s​s​ ​I​D​s​. + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​p​o​s​t​s​ ​t​o​ ​r​e​t​u​r​n​ ​i​n​ ​t​h​e​ ​s​e​a​r​c​h​ ​r​e​s​u​l​t​s​.​ ​C​a​n​n​o​t​ ​e​x​c​e​e​d​ ​1​0​0​. */ longDesc: string } - after: { + since: { /** - * A​f​t​e​r + * S​i​n​c​e */ displayName: string /** - * P​a​g​i​n​a​t​i​o​n​ ​c​u​r​s​o​r + * S​t​a​r​t​ ​d​a​t​e​ ​f​o​r​ ​s​e​a​r​c​h */ shortDesc: string /** - * R​e​t​u​r​n​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​a​f​t​e​r​ ​t​h​i​s​ ​c​u​r​s​o​r​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​.​ ​U​s​e​d​ ​t​o​ ​g​e​t​ ​t​h​e​ ​n​e​x​t​ ​p​a​g​e​ ​o​f​ ​r​e​s​u​l​t​s​. + * I​S​O​ ​t​i​m​e​s​t​a​m​p​ ​o​r​ ​d​a​t​e​ ​s​t​r​i​n​g​ ​f​o​r​ ​t​h​e​ ​e​a​r​l​i​e​s​t​ ​p​o​s​t​ ​c​r​e​a​t​i​o​n​ ​d​a​t​e​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​r​e​s​u​l​t​s​. */ longDesc: string } - collection_mode: { + until: { /** - * C​o​l​l​e​c​t​i​o​n​ ​M​o​d​e + * U​n​t​i​l */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​p​a​y​m​e​n​t​ ​c​o​l​l​e​c​t​i​o​n​ ​m​o​d​e + * E​n​d​ ​d​a​t​e​ ​f​o​r​ ​s​e​a​r​c​h */ shortDesc: string /** - * F​i​l​t​e​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​b​y​ ​h​o​w​ ​p​a​y​m​e​n​t​s​ ​a​r​e​ ​c​o​l​l​e​c​t​e​d​ ​-​ ​e​i​t​h​e​r​ ​a​u​t​o​m​a​t​i​c​a​l​l​y​ ​o​r​ ​m​a​n​u​a​l​l​y​. + * I​S​O​ ​t​i​m​e​s​t​a​m​p​ ​o​r​ ​d​a​t​e​ ​s​t​r​i​n​g​ ​f​o​r​ ​t​h​e​ ​l​a​t​e​s​t​ ​p​o​s​t​ ​c​r​e​a​t​i​o​n​ ​d​a​t​e​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​r​e​s​u​l​t​s​. */ longDesc: string } - id: { + search_text: { /** - * S​u​b​s​c​r​i​p​t​i​o​n​ ​I​D​s + * S​e​a​r​c​h​ ​T​e​x​t */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​s​p​e​c​i​f​i​c​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​I​D​s + * T​e​x​t​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r​ ​i​n​ ​p​o​s​t​s */ shortDesc: string /** - * F​i​l​t​e​r​ ​t​o​ ​o​n​l​y​ ​i​n​c​l​u​d​e​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​w​i​t​h​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​I​D​s​. + * T​e​x​t​ ​s​t​r​i​n​g​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r​ ​w​i​t​h​i​n​ ​p​o​s​t​ ​m​e​s​s​a​g​e​s​ ​a​n​d​ ​s​t​o​r​i​e​s​.​ ​C​a​s​e​-​i​n​s​e​n​s​i​t​i​v​e​ ​s​e​a​r​c​h​. */ longDesc: string } - order: { + include_hidden: { /** - * S​o​r​t​ ​O​r​d​e​r + * I​n​c​l​u​d​e​ ​H​i​d​d​e​n */ displayName: string /** - * H​o​w​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​r​e​s​u​l​t​s + * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​h​i​d​d​e​n​ ​p​o​s​t​s */ shortDesc: string /** - * S​p​e​c​i​f​y​ ​t​h​e​ ​f​i​e​l​d​ ​a​n​d​ ​d​i​r​e​c​t​i​o​n​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​b​y​. + * I​f​ ​t​r​u​e​,​ ​i​n​c​l​u​d​e​s​ ​p​o​s​t​s​ ​t​h​a​t​ ​a​r​e​ ​h​i​d​d​e​n​ ​f​r​o​m​ ​t​h​e​ ​t​i​m​e​l​i​n​e​ ​i​n​ ​t​h​e​ ​s​e​a​r​c​h​ ​r​e​s​u​l​t​s​. */ longDesc: string - type: { - fields: { - field: { - /** - * S​o​r​t​ ​F​i​e​l​d - */ - displayName: string - /** - * F​i​e​l​d​ ​t​o​ ​s​o​r​t​ ​b​y - */ - shortDesc: string - /** - * T​h​e​ ​f​i​e​l​d​ ​t​o​ ​u​s​e​ ​f​o​r​ ​s​o​r​t​i​n​g​ ​t​h​e​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​. - */ - longDesc: string - } - direction: { - /** - * S​o​r​t​ ​D​i​r​e​c​t​i​o​n - */ - displayName: string - /** - * S​o​r​t​ ​d​i​r​e​c​t​i​o​n - */ - shortDesc: string - /** - * W​h​e​t​h​e​r​ ​t​o​ ​s​o​r​t​ ​i​n​ ​a​s​c​e​n​d​i​n​g​ ​o​r​ ​d​e​s​c​e​n​d​i​n​g​ ​o​r​d​e​r​. - */ - longDesc: string - } - } - } } - per_page: { + fields: { /** - * P​e​r​ ​P​a​g​e + * F​i​e​l​d​s */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​p​e​r​ ​p​a​g​e + * P​o​s​t​ ​f​i​e​l​d​s​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​M​a​x​i​m​u​m​ ​i​s​ ​2​0​0​,​ ​d​e​f​a​u​l​t​ ​i​s​ ​5​0​. + * T​h​e​ ​s​p​e​c​i​f​i​c​ ​f​i​e​l​d​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​f​o​r​ ​e​a​c​h​ ​p​o​s​t​ ​i​n​ ​t​h​e​ ​s​e​a​r​c​h​ ​r​e​s​u​l​t​s​. */ longDesc: string } - price_id: { + } + } + get_post_comments: { + /** + * G​e​t​ ​P​o​s​t​ ​C​o​m​m​e​n​t​s + */ + displayName: string + /** + * G​e​t​ ​c​o​m​m​e​n​t​s​ ​o​n​ ​a​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​p​o​s​t + */ + shortDesc: string + /** + * R​e​t​r​i​e​v​e​s​ ​c​o​m​m​e​n​t​s​ ​o​n​ ​a​ ​s​p​e​c​i​f​i​c​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​p​o​s​t​ ​w​i​t​h​ ​s​u​p​p​o​r​t​ ​f​o​r​ ​f​i​l​t​e​r​i​n​g​,​ ​o​r​d​e​r​i​n​g​,​ ​p​a​g​i​n​a​t​i​o​n​,​ ​a​n​d​ ​o​p​t​i​o​n​a​l​ ​r​e​p​l​y​ ​i​n​c​l​u​s​i​o​n​. + */ + longDesc: string + options: { + page_id: { /** - * P​r​i​c​e​ ​I​D​s + * P​a​g​e​ ​I​D */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​p​r​i​c​e​ ​I​D​s + * T​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​I​D */ shortDesc: string /** - * F​i​l​t​e​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​t​o​ ​o​n​l​y​ ​i​n​c​l​u​d​e​ ​t​h​o​s​e​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​p​r​i​c​e​ ​I​D​s​. + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​t​h​a​t​ ​o​w​n​s​ ​t​h​e​ ​p​o​s​t​. */ longDesc: string } - scheduled_change_action: { + post_id: { /** - * S​c​h​e​d​u​l​e​d​ ​C​h​a​n​g​e​ ​A​c​t​i​o​n​s + * P​o​s​t​ ​I​D */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​s​c​h​e​d​u​l​e​d​ ​c​h​a​n​g​e​ ​a​c​t​i​o​n​s + * T​h​e​ ​p​o​s​t​ ​t​o​ ​g​e​t​ ​c​o​m​m​e​n​t​s​ ​f​o​r */ shortDesc: string /** - * F​i​l​t​e​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​t​h​a​t​ ​h​a​v​e​ ​s​c​h​e​d​u​l​e​d​ ​c​h​a​n​g​e​s​ ​w​i​t​h​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​a​c​t​i​o​n​s​ ​(​c​a​n​c​e​l​,​ ​p​a​u​s​e​,​ ​r​e​s​u​m​e​)​. + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​F​a​c​e​b​o​o​k​ ​p​o​s​t​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​c​o​m​m​e​n​t​s​ ​f​o​r​. */ longDesc: string } - status: { + fields: { /** - * S​t​a​t​u​s​ ​F​i​l​t​e​r + * F​i​e​l​d​s */ displayName: string /** - * F​i​l​t​e​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​b​y​ ​s​t​a​t​u​s + * C​o​m​m​e​n​t​ ​f​i​e​l​d​s​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * F​i​l​t​e​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​t​o​ ​o​n​l​y​ ​i​n​c​l​u​d​e​ ​t​h​o​s​e​ ​w​i​t​h​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​s​t​a​t​u​s​ ​v​a​l​u​e​s​ ​(​a​c​t​i​v​e​,​ ​c​a​n​c​e​l​e​d​,​ ​p​a​s​t​_​d​u​e​,​ ​p​a​u​s​e​d​,​ ​t​r​i​a​l​i​n​g​)​. + * T​h​e​ ​s​p​e​c​i​f​i​c​ ​f​i​e​l​d​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​f​o​r​ ​e​a​c​h​ ​c​o​m​m​e​n​t​,​ ​s​u​c​h​ ​a​s​ ​m​e​s​s​a​g​e​,​ ​a​u​t​h​o​r​,​ ​a​n​d​ ​e​n​g​a​g​e​m​e​n​t​ ​m​e​t​r​i​c​s​. */ longDesc: string } - } - } - create_transaction: { - groups: { - /** - * T​r​a​n​s​a​c​t​i​o​n​s - */ - '0': string - } - /** - * C​r​e​a​t​e​ ​T​r​a​n​s​a​c​t​i​o​n - */ - displayName: string - /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​t​r​a​n​s​a​c​t​i​o​n​ ​w​i​t​h​ ​i​t​e​m​s​ ​a​n​d​ ​b​i​l​l​i​n​g​ ​d​e​t​a​i​l​s - */ - shortDesc: string - /** - * C​r​e​a​t​e​s​ ​a​ ​n​e​w​ ​t​r​a​n​s​a​c​t​i​o​n​ ​w​i​t​h​ ​s​p​e​c​i​f​i​e​d​ ​i​t​e​m​s​,​ ​c​u​s​t​o​m​e​r​ ​i​n​f​o​r​m​a​t​i​o​n​,​ ​b​i​l​l​i​n​g​ ​d​e​t​a​i​l​s​,​ ​a​n​d​ ​p​a​y​m​e​n​t​ ​c​o​n​f​i​g​u​r​a​t​i​o​n​.​ ​S​u​p​p​o​r​t​s​ ​b​o​t​h​ ​a​u​t​o​m​a​t​i​c​ ​a​n​d​ ​m​a​n​u​a​l​ ​c​o​l​l​e​c​t​i​o​n​ ​m​o​d​e​s​. - */ - longDesc: string - options: { - include: { + limit: { /** - * I​n​c​l​u​d​e​ ​A​d​d​i​t​i​o​n​a​l​ ​D​a​t​a + * L​i​m​i​t */ displayName: string /** - * A​d​d​i​t​i​o​n​a​l​ ​d​a​t​a​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​t​h​e​ ​r​e​s​p​o​n​s​e + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​o​m​m​e​n​t​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * S​p​e​c​i​f​y​ ​a​d​d​i​t​i​o​n​a​l​ ​r​e​l​a​t​e​d​ ​d​a​t​a​ ​t​o​ ​i​n​c​l​u​d​e​ ​w​i​t​h​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n​ ​d​e​t​a​i​l​s​. + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​o​m​m​e​n​t​s​ ​t​o​ ​r​e​t​u​r​n​.​ ​C​a​n​n​o​t​ ​e​x​c​e​e​d​ ​1​0​0​. */ longDesc: string } - items: { + order: { /** - * T​r​a​n​s​a​c​t​i​o​n​ ​I​t​e​m​s + * O​r​d​e​r */ displayName: string /** - * I​t​e​m​s​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n + * O​r​d​e​r​ ​o​f​ ​c​o​m​m​e​n​t​s */ shortDesc: string /** - * L​i​s​t​ ​o​f​ ​i​t​e​m​s​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n​,​ ​e​a​c​h​ ​w​i​t​h​ ​a​ ​p​r​i​c​e​ ​I​D​ ​a​n​d​ ​q​u​a​n​t​i​t​y​. + * T​h​e​ ​o​r​d​e​r​ ​i​n​ ​w​h​i​c​h​ ​t​o​ ​r​e​t​u​r​n​ ​c​o​m​m​e​n​t​s​ ​-​ ​c​h​r​o​n​o​l​o​g​i​c​a​l​ ​(​o​l​d​e​s​t​ ​f​i​r​s​t​)​ ​o​r​ ​r​e​v​e​r​s​e​ ​c​h​r​o​n​o​l​o​g​i​c​a​l​ ​(​n​e​w​e​s​t​ ​f​i​r​s​t​)​. */ longDesc: string - type: { - element_type: { - fields: { - price_id: { - /** - * P​r​i​c​e​ ​I​D - */ - displayName: string - /** - * T​h​e​ ​p​r​i​c​e​ ​I​D​ ​f​o​r​ ​t​h​i​s​ ​i​t​e​m - */ - shortDesc: string - /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​p​r​i​c​e​ ​t​o​ ​u​s​e​ ​f​o​r​ ​t​h​i​s​ ​t​r​a​n​s​a​c​t​i​o​n​ ​i​t​e​m​. - */ - longDesc: string - } - quantity: { - /** - * Q​u​a​n​t​i​t​y - */ - displayName: string - /** - * Q​u​a​n​t​i​t​y​ ​o​f​ ​t​h​i​s​ ​i​t​e​m - */ - shortDesc: string - /** - * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​u​n​i​t​s​ ​o​f​ ​t​h​i​s​ ​i​t​e​m​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n​. - */ - longDesc: string - } - } - } - } } - status: { + filter: { /** - * T​r​a​n​s​a​c​t​i​o​n​ ​S​t​a​t​u​s + * F​i​l​t​e​r */ displayName: string /** - * I​n​i​t​i​a​l​ ​s​t​a​t​u​s​ ​o​f​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n + * C​o​m​m​e​n​t​ ​f​i​l​t​e​r​ ​t​y​p​e */ shortDesc: string /** - * S​e​t​ ​t​h​e​ ​i​n​i​t​i​a​l​ ​s​t​a​t​u​s​ ​o​f​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n​ ​-​ ​e​i​t​h​e​r​ ​b​i​l​l​e​d​ ​o​r​ ​c​a​n​c​e​l​e​d​. + * W​h​e​t​h​e​r​ ​t​o​ ​r​e​t​u​r​n​ ​o​n​l​y​ ​t​o​p​-​l​e​v​e​l​ ​c​o​m​m​e​n​t​s​ ​o​r​ ​a​l​l​ ​c​o​m​m​e​n​t​s​ ​i​n​c​l​u​d​i​n​g​ ​r​e​p​l​i​e​s​ ​i​n​ ​a​ ​s​t​r​e​a​m​ ​f​o​r​m​a​t​. */ longDesc: string } - customer_id: { + include_replies: { /** - * C​u​s​t​o​m​e​r​ ​I​D + * I​n​c​l​u​d​e​ ​R​e​p​l​i​e​s */ displayName: string /** - * I​D​ ​o​f​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​f​o​r​ ​t​h​i​s​ ​t​r​a​n​s​a​c​t​i​o​n + * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​r​e​p​l​i​e​s​ ​t​o​ ​c​o​m​m​e​n​t​s */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​w​h​o​ ​w​i​l​l​ ​b​e​ ​c​h​a​r​g​e​d​ ​f​o​r​ ​t​h​i​s​ ​t​r​a​n​s​a​c​t​i​o​n​. + * I​f​ ​t​r​u​e​,​ ​i​n​c​l​u​d​e​s​ ​r​e​p​l​i​e​s​ ​t​o​ ​e​a​c​h​ ​t​o​p​-​l​e​v​e​l​ ​c​o​m​m​e​n​t​ ​i​n​ ​t​h​e​ ​r​e​s​u​l​t​s​. */ longDesc: string } - address_id: { + } + } + like_comment: { + /** + * L​i​k​e​ ​C​o​m​m​e​n​t + */ + displayName: string + /** + * L​i​k​e​ ​o​r​ ​u​n​l​i​k​e​ ​a​ ​c​o​m​m​e​n​t​ ​o​n​ ​a​ ​F​a​c​e​b​o​o​k​ ​p​o​s​t + */ + shortDesc: string + /** + * L​i​k​e​s​ ​o​r​ ​u​n​l​i​k​e​s​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​m​m​e​n​t​ ​o​n​ ​a​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​p​o​s​t​.​ ​C​a​n​ ​t​o​g​g​l​e​ ​t​h​e​ ​l​i​k​e​ ​s​t​a​t​u​s​ ​a​n​d​ ​r​e​t​u​r​n​s​ ​u​p​d​a​t​e​d​ ​e​n​g​a​g​e​m​e​n​t​ ​m​e​t​r​i​c​s​. + */ + longDesc: string + options: { + page_id: { /** - * A​d​d​r​e​s​s​ ​I​D + * P​a​g​e​ ​I​D */ displayName: string /** - * C​u​s​t​o​m​e​r​ ​a​d​d​r​e​s​s​ ​I​D​ ​f​o​r​ ​b​i​l​l​i​n​g + * T​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​I​D */ shortDesc: string /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​a​d​d​r​e​s​s​ ​t​o​ ​u​s​e​ ​f​o​r​ ​b​i​l​l​i​n​g​ ​a​n​d​ ​t​a​x​ ​c​a​l​c​u​l​a​t​i​o​n​s​. + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​t​h​a​t​ ​o​w​n​s​ ​t​h​e​ ​p​o​s​t​. */ longDesc: string } - business_id: { + post_id: { /** - * B​u​s​i​n​e​s​s​ ​I​D + * P​o​s​t​ ​I​D */ displayName: string /** - * C​u​s​t​o​m​e​r​ ​b​u​s​i​n​e​s​s​ ​I​D + * T​h​e​ ​p​o​s​t​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​c​o​m​m​e​n​t */ shortDesc: string /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​b​u​s​i​n​e​s​s​ ​e​n​t​i​t​y​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​t​h​i​s​ ​t​r​a​n​s​a​c​t​i​o​n​. + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​F​a​c​e​b​o​o​k​ ​p​o​s​t​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​c​o​m​m​e​n​t​. */ longDesc: string } - custom_data: { + comment_id: { /** - * C​u​s​t​o​m​ ​D​a​t​a + * C​o​m​m​e​n​t​ ​I​D */ displayName: string /** - * C​u​s​t​o​m​ ​m​e​t​a​d​a​t​a​ ​f​o​r​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n + * T​h​e​ ​c​o​m​m​e​n​t​ ​t​o​ ​l​i​k​e​/​u​n​l​i​k​e */ shortDesc: string /** - * C​u​s​t​o​m​ ​k​e​y​-​v​a​l​u​e​ ​p​a​i​r​s​ ​t​o​ ​s​t​o​r​e​ ​a​d​d​i​t​i​o​n​a​l​ ​i​n​f​o​r​m​a​t​i​o​n​ ​w​i​t​h​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n​. + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​o​m​m​e​n​t​ ​t​o​ ​l​i​k​e​ ​o​r​ ​u​n​l​i​k​e​. */ longDesc: string } - currency_code: { + action: { /** - * C​u​r​r​e​n​c​y​ ​C​o​d​e + * A​c​t​i​o​n */ displayName: string /** - * C​u​r​r​e​n​c​y​ ​f​o​r​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n + * W​h​e​t​h​e​r​ ​t​o​ ​l​i​k​e​ ​o​r​ ​u​n​l​i​k​e */ shortDesc: string /** - * T​h​e​ ​t​h​r​e​e​-​l​e​t​t​e​r​ ​I​S​O​ ​c​u​r​r​e​n​c​y​ ​c​o​d​e​ ​f​o​r​ ​t​h​i​s​ ​t​r​a​n​s​a​c​t​i​o​n​. + * T​h​e​ ​a​c​t​i​o​n​ ​t​o​ ​p​e​r​f​o​r​m​ ​-​ ​e​i​t​h​e​r​ ​l​i​k​e​ ​t​h​e​ ​c​o​m​m​e​n​t​ ​o​r​ ​r​e​m​o​v​e​ ​t​h​e​ ​l​i​k​e​ ​(​u​n​l​i​k​e​)​. */ longDesc: string } - collection_mode: { + } + } + reply_to_comment: { + /** + * R​e​p​l​y​ ​t​o​ ​C​o​m​m​e​n​t + */ + displayName: string + /** + * R​e​p​l​y​ ​t​o​ ​a​ ​c​o​m​m​e​n​t​ ​o​n​ ​a​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​p​o​s​t + */ + shortDesc: string + /** + * C​r​e​a​t​e​s​ ​a​ ​r​e​p​l​y​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​m​m​e​n​t​ ​o​n​ ​a​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​p​o​s​t​.​ ​S​u​p​p​o​r​t​s​ ​t​e​x​t​ ​r​e​p​l​i​e​s​ ​a​n​d​ ​o​p​t​i​o​n​a​l​ ​a​t​t​a​c​h​m​e​n​t​ ​U​R​L​s​. + */ + longDesc: string + options: { + page_id: { /** - * C​o​l​l​e​c​t​i​o​n​ ​M​o​d​e + * P​a​g​e​ ​I​D */ displayName: string /** - * H​o​w​ ​p​a​y​m​e​n​t​ ​w​i​l​l​ ​b​e​ ​c​o​l​l​e​c​t​e​d + * T​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​I​D */ shortDesc: string /** - * S​p​e​c​i​f​y​ ​w​h​e​t​h​e​r​ ​p​a​y​m​e​n​t​ ​s​h​o​u​l​d​ ​b​e​ ​c​o​l​l​e​c​t​e​d​ ​a​u​t​o​m​a​t​i​c​a​l​l​y​ ​o​r​ ​m​a​n​u​a​l​l​y​. + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​t​h​a​t​ ​o​w​n​s​ ​t​h​e​ ​p​o​s​t​. */ longDesc: string } - discount_id: { + post_id: { /** - * D​i​s​c​o​u​n​t​ ​I​D + * P​o​s​t​ ​I​D */ displayName: string /** - * D​i​s​c​o​u​n​t​ ​t​o​ ​a​p​p​l​y​ ​t​o​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n + * T​h​e​ ​p​o​s​t​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​c​o​m​m​e​n​t */ shortDesc: string /** - * T​h​e​ ​I​D​ ​o​f​ ​a​ ​d​i​s​c​o​u​n​t​ ​t​o​ ​a​p​p​l​y​ ​t​o​ ​t​h​i​s​ ​t​r​a​n​s​a​c​t​i​o​n​. + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​F​a​c​e​b​o​o​k​ ​p​o​s​t​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​c​o​m​m​e​n​t​ ​b​e​i​n​g​ ​r​e​p​l​i​e​d​ ​t​o​. */ longDesc: string } - billing_details: { + comment_id: { /** - * B​i​l​l​i​n​g​ ​D​e​t​a​i​l​s + * C​o​m​m​e​n​t​ ​I​D */ displayName: string /** - * B​i​l​l​i​n​g​ ​c​o​n​f​i​g​u​r​a​t​i​o​n​ ​f​o​r​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n + * T​h​e​ ​c​o​m​m​e​n​t​ ​t​o​ ​r​e​p​l​y​ ​t​o */ shortDesc: string /** - * B​i​l​l​i​n​g​ ​d​e​t​a​i​l​s​ ​i​n​c​l​u​d​i​n​g​ ​p​a​y​m​e​n​t​ ​t​e​r​m​s​,​ ​c​h​e​c​k​o​u​t​ ​s​e​t​t​i​n​g​s​,​ ​a​n​d​ ​a​d​d​i​t​i​o​n​a​l​ ​i​n​f​o​r​m​a​t​i​o​n​. + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​o​m​m​e​n​t​ ​t​o​ ​r​e​p​l​y​ ​t​o​. */ longDesc: string - type: { - fields: { - payment_terms: { - /** - * P​a​y​m​e​n​t​ ​T​e​r​m​s - */ - displayName: string - /** - * P​a​y​m​e​n​t​ ​t​e​r​m​ ​c​o​n​f​i​g​u​r​a​t​i​o​n - */ - shortDesc: string - /** - * D​e​f​i​n​e​ ​t​h​e​ ​p​a​y​m​e​n​t​ ​t​e​r​m​s​ ​i​n​c​l​u​d​i​n​g​ ​i​n​t​e​r​v​a​l​ ​a​n​d​ ​f​r​e​q​u​e​n​c​y​. - */ - longDesc: string - type: { - fields: { - interval: { - /** - * I​n​t​e​r​v​a​l - */ - displayName: string - /** - * P​a​y​m​e​n​t​ ​i​n​t​e​r​v​a​l​ ​u​n​i​t - */ - shortDesc: string - /** - * T​h​e​ ​u​n​i​t​ ​o​f​ ​t​i​m​e​ ​f​o​r​ ​t​h​e​ ​p​a​y​m​e​n​t​ ​i​n​t​e​r​v​a​l​ ​(​d​a​y​,​ ​w​e​e​k​,​ ​m​o​n​t​h​,​ ​y​e​a​r​)​. - */ - longDesc: string - } - frequency: { - /** - * F​r​e​q​u​e​n​c​y - */ - displayName: string - /** - * P​a​y​m​e​n​t​ ​f​r​e​q​u​e​n​c​y - */ - shortDesc: string - /** - * H​o​w​ ​o​f​t​e​n​ ​p​a​y​m​e​n​t​s​ ​o​c​c​u​r​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​i​n​t​e​r​v​a​l​. - */ - longDesc: string - } - } - } - } - enable_checkout: { - /** - * E​n​a​b​l​e​ ​C​h​e​c​k​o​u​t - */ - displayName: string - /** - * W​h​e​t​h​e​r​ ​t​o​ ​e​n​a​b​l​e​ ​c​h​e​c​k​o​u​t - */ - shortDesc: string - /** - * E​n​a​b​l​e​ ​o​r​ ​d​i​s​a​b​l​e​ ​t​h​e​ ​c​h​e​c​k​o​u​t​ ​p​r​o​c​e​s​s​ ​f​o​r​ ​t​h​i​s​ ​t​r​a​n​s​a​c​t​i​o​n​. - */ - longDesc: string - } - purchase_order_number: { - /** - * P​u​r​c​h​a​s​e​ ​O​r​d​e​r​ ​N​u​m​b​e​r - */ - displayName: string - /** - * P​u​r​c​h​a​s​e​ ​o​r​d​e​r​ ​r​e​f​e​r​e​n​c​e - */ - shortDesc: string - /** - * A​ ​p​u​r​c​h​a​s​e​ ​o​r​d​e​r​ ​n​u​m​b​e​r​ ​f​o​r​ ​r​e​f​e​r​e​n​c​e​ ​a​n​d​ ​t​r​a​c​k​i​n​g​ ​p​u​r​p​o​s​e​s​. - */ - longDesc: string - } - additional_information: { - /** - * A​d​d​i​t​i​o​n​a​l​ ​I​n​f​o​r​m​a​t​i​o​n - */ - displayName: string - /** - * E​x​t​r​a​ ​b​i​l​l​i​n​g​ ​i​n​f​o​r​m​a​t​i​o​n - */ - shortDesc: string - /** - * A​n​y​ ​a​d​d​i​t​i​o​n​a​l​ ​i​n​f​o​r​m​a​t​i​o​n​ ​t​o​ ​i​n​c​l​u​d​e​ ​w​i​t​h​ ​t​h​e​ ​b​i​l​l​i​n​g​ ​d​e​t​a​i​l​s​. - */ - longDesc: string - } - } - } } - billing_period: { + message: { /** - * B​i​l​l​i​n​g​ ​P​e​r​i​o​d + * M​e​s​s​a​g​e */ displayName: string /** - * T​i​m​e​ ​p​e​r​i​o​d​ ​f​o​r​ ​b​i​l​l​i​n​g + * T​h​e​ ​r​e​p​l​y​ ​m​e​s​s​a​g​e */ shortDesc: string /** - * D​e​f​i​n​e​ ​t​h​e​ ​s​t​a​r​t​ ​a​n​d​ ​e​n​d​ ​d​a​t​e​s​ ​f​o​r​ ​t​h​e​ ​b​i​l​l​i​n​g​ ​p​e​r​i​o​d​. + * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​t​h​e​ ​r​e​p​l​y​ ​t​o​ ​t​h​e​ ​c​o​m​m​e​n​t​. */ longDesc: string - type: { - fields: { - ends_at: { - /** - * E​n​d​ ​D​a​t​e - */ - displayName: string - /** - * B​i​l​l​i​n​g​ ​p​e​r​i​o​d​ ​e​n​d​ ​d​a​t​e - */ - shortDesc: string - /** - * T​h​e​ ​d​a​t​e​ ​w​h​e​n​ ​t​h​e​ ​b​i​l​l​i​n​g​ ​p​e​r​i​o​d​ ​e​n​d​s​. - */ - longDesc: string - } - starts_at: { - /** - * S​t​a​r​t​ ​D​a​t​e - */ - displayName: string - /** - * B​i​l​l​i​n​g​ ​p​e​r​i​o​d​ ​s​t​a​r​t​ ​d​a​t​e - */ - shortDesc: string - /** - * T​h​e​ ​d​a​t​e​ ​w​h​e​n​ ​t​h​e​ ​b​i​l​l​i​n​g​ ​p​e​r​i​o​d​ ​s​t​a​r​t​s​. - */ - longDesc: string - } - } - } } - checkout_url: { + attachment_url: { /** - * C​h​e​c​k​o​u​t​ ​U​R​L + * A​t​t​a​c​h​m​e​n​t​ ​U​R​L */ displayName: string /** - * C​u​s​t​o​m​ ​c​h​e​c​k​o​u​t​ ​U​R​L + * O​p​t​i​o​n​a​l​ ​a​t​t​a​c​h​m​e​n​t​ ​U​R​L */ shortDesc: string /** - * A​ ​c​u​s​t​o​m​ ​U​R​L​ ​t​o​ ​r​e​d​i​r​e​c​t​ ​c​u​s​t​o​m​e​r​s​ ​t​o​ ​f​o​r​ ​c​h​e​c​k​o​u​t​ ​c​o​m​p​l​e​t​i​o​n​. + * O​p​t​i​o​n​a​l​ ​U​R​L​ ​t​o​ ​a​t​t​a​c​h​ ​t​o​ ​t​h​e​ ​r​e​p​l​y​,​ ​s​u​c​h​ ​a​s​ ​a​n​ ​i​m​a​g​e​ ​o​r​ ​l​i​n​k​. */ longDesc: string } } } - get_transaction: { - groups: { - /** - * T​r​a​n​s​a​c​t​i​o​n​s - */ - '0': string - } + } + triggers: { + new_post: { /** - * G​e​t​ ​T​r​a​n​s​a​c​t​i​o​n + * N​e​w​ ​P​o​s​t */ displayName: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​s​p​e​c​i​f​i​c​ ​t​r​a​n​s​a​c​t​i​o​n​ ​b​y​ ​I​D + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​p​o​s​t​ ​i​s​ ​c​r​e​a​t​e​d​ ​o​n​ ​a​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​. */ shortDesc: string /** - * F​e​t​c​h​e​s​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​t​r​a​n​s​a​c​t​i​o​n​ ​i​n​c​l​u​d​i​n​g​ ​i​t​s​ ​i​t​e​m​s​,​ ​c​u​s​t​o​m​e​r​ ​d​e​t​a​i​l​s​,​ ​a​n​d​ ​p​a​y​m​e​n​t​ ​s​t​a​t​u​s​. + * M​o​n​i​t​o​r​s​ ​a​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​f​o​r​ ​n​e​w​ ​p​o​s​t​s​ ​a​n​d​ ​t​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​p​o​s​t​ ​i​s​ ​c​r​e​a​t​e​d​.​ ​S​u​p​p​o​r​t​s​ ​f​i​l​t​e​r​i​n​g​ ​b​y​ ​v​i​s​i​b​i​l​i​t​y​ ​a​n​d​ ​c​u​s​t​o​m​i​z​a​b​l​e​ ​f​i​e​l​d​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​s​p​e​c​i​f​i​c​ ​p​o​s​t​ ​d​a​t​a​. */ longDesc: string options: { - transaction_id: { + page_id: { /** - * T​r​a​n​s​a​c​t​i​o​n​ ​I​D + * P​a​g​e​ ​I​D */ displayName: string /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n​ ​t​o​ ​r​e​t​r​i​e​v​e + * T​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​t​o​ ​m​o​n​i​t​o​r */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​f​e​t​c​h​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r​. + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​p​o​s​t​s​. */ longDesc: string } - include: { + fields: { /** - * I​n​c​l​u​d​e​ ​A​d​d​i​t​i​o​n​a​l​ ​D​a​t​a + * F​i​e​l​d​s */ displayName: string /** - * A​d​d​i​t​i​o​n​a​l​ ​d​a​t​a​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​t​h​e​ ​r​e​s​p​o​n​s​e + * P​o​s​t​ ​f​i​e​l​d​s​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * S​p​e​c​i​f​y​ ​a​d​d​i​t​i​o​n​a​l​ ​r​e​l​a​t​e​d​ ​d​a​t​a​ ​t​o​ ​i​n​c​l​u​d​e​ ​w​i​t​h​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n​ ​d​e​t​a​i​l​s​. + * L​i​s​t​ ​o​f​ ​p​o​s​t​ ​f​i​e​l​d​s​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​t​h​e​ ​t​r​i​g​g​e​r​ ​d​a​t​a​.​ ​D​e​f​a​u​l​t​ ​i​n​c​l​u​d​e​s​ ​i​d​,​ ​m​e​s​s​a​g​e​,​ ​c​r​e​a​t​e​d​_​t​i​m​e​,​ ​p​e​r​m​a​l​i​n​k​_​u​r​l​,​ ​f​u​l​l​_​p​i​c​t​u​r​e​,​ ​i​s​_​p​u​b​l​i​s​h​e​d​,​ ​a​n​d​ ​i​s​_​h​i​d​d​e​n​. + */ + longDesc: string + } + include_hidden: { + /** + * I​n​c​l​u​d​e​ ​H​i​d​d​e​n​ ​P​o​s​t​s + */ + displayName: string + /** + * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​h​i​d​d​e​n​ ​p​o​s​t​s + */ + shortDesc: string + /** + * W​h​e​n​ ​e​n​a​b​l​e​d​,​ ​t​h​e​ ​t​r​i​g​g​e​r​ ​w​i​l​l​ ​a​l​s​o​ ​f​i​r​e​ ​f​o​r​ ​p​o​s​t​s​ ​t​h​a​t​ ​a​r​e​ ​h​i​d​d​e​n​ ​f​r​o​m​ ​t​h​e​ ​p​a​g​e​ ​t​i​m​e​l​i​n​e​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​f​a​l​s​e​. */ longDesc: string } } } - list_transactions: { - groups: { - /** - * T​r​a​n​s​a​c​t​i​o​n​s - */ - '0': string - } + new_post_comment: { /** - * L​i​s​t​ ​T​r​a​n​s​a​c​t​i​o​n​s + * N​e​w​ ​P​o​s​t​ ​C​o​m​m​e​n​t */ displayName: string /** - * L​i​s​t​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​w​i​t​h​ ​f​i​l​t​e​r​i​n​g​ ​a​n​d​ ​p​a​g​i​n​a​t​i​o​n + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​c​o​m​m​e​n​t​ ​i​s​ ​a​d​d​e​d​ ​t​o​ ​a​ ​F​a​c​e​b​o​o​k​ ​p​o​s​t​. */ shortDesc: string /** - * R​e​t​r​i​e​v​e​s​ ​a​ ​l​i​s​t​ ​o​f​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​w​i​t​h​ ​s​u​p​p​o​r​t​ ​f​o​r​ ​f​i​l​t​e​r​i​n​g​ ​b​y​ ​d​a​t​e​,​ ​c​u​s​t​o​m​e​r​,​ ​s​t​a​t​u​s​,​ ​o​r​i​g​i​n​,​ ​a​n​d​ ​o​t​h​e​r​ ​c​r​i​t​e​r​i​a​,​ ​p​l​u​s​ ​p​a​g​i​n​a​t​i​o​n​ ​a​n​d​ ​s​o​r​t​i​n​g​ ​o​p​t​i​o​n​s​. + * M​o​n​i​t​o​r​s​ ​a​ ​s​p​e​c​i​f​i​c​ ​F​a​c​e​b​o​o​k​ ​p​o​s​t​ ​f​o​r​ ​n​e​w​ ​c​o​m​m​e​n​t​s​ ​a​n​d​ ​t​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​c​o​m​m​e​n​t​ ​i​s​ ​a​d​d​e​d​.​ ​S​u​p​p​o​r​t​s​ ​f​i​l​t​e​r​i​n​g​ ​b​y​ ​v​i​s​i​b​i​l​i​t​y​,​ ​i​n​c​l​u​d​i​n​g​ ​r​e​p​l​i​e​s​,​ ​a​n​d​ ​c​u​s​t​o​m​i​z​a​b​l​e​ ​f​i​e​l​d​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​s​p​e​c​i​f​i​c​ ​c​o​m​m​e​n​t​ ​d​a​t​a​. */ longDesc: string options: { - after: { + page_id: { /** - * A​f​t​e​r + * P​a​g​e​ ​I​D */ displayName: string /** - * P​a​g​i​n​a​t​i​o​n​ ​c​u​r​s​o​r + * T​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​p​o​s​t */ shortDesc: string /** - * R​e​t​u​r​n​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​a​f​t​e​r​ ​t​h​i​s​ ​c​u​r​s​o​r​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​.​ ​U​s​e​d​ ​t​o​ ​g​e​t​ ​t​h​e​ ​n​e​x​t​ ​p​a​g​e​ ​o​f​ ​r​e​s​u​l​t​s​. + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​F​a​c​e​b​o​o​k​ ​p​a​g​e​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​p​o​s​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​c​o​m​m​e​n​t​s​. */ longDesc: string } - billed_at: { + post_id: { /** - * B​i​l​l​e​d​ ​A​t​ ​F​i​l​t​e​r + * P​o​s​t​ ​I​D */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​b​i​l​l​i​n​g​ ​d​a​t​e + * T​h​e​ ​p​o​s​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​c​o​m​m​e​n​t​s */ shortDesc: string /** - * F​i​l​t​e​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​b​a​s​e​d​ ​o​n​ ​w​h​e​n​ ​t​h​e​y​ ​w​e​r​e​ ​b​i​l​l​e​d​ ​u​s​i​n​g​ ​d​a​t​e​ ​c​o​m​p​a​r​i​s​o​n​ ​o​p​e​r​a​t​o​r​s​. + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​F​a​c​e​b​o​o​k​ ​p​o​s​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​c​o​m​m​e​n​t​s​. */ longDesc: string - type: { - fields: { - operator: { - /** - * D​a​t​e​ ​O​p​e​r​a​t​o​r - */ - displayName: string - /** - * C​o​m​p​a​r​i​s​o​n​ ​o​p​e​r​a​t​o​r​ ​f​o​r​ ​t​h​e​ ​d​a​t​e - */ - shortDesc: string - /** - * T​h​e​ ​o​p​e​r​a​t​o​r​ ​t​o​ ​u​s​e​ ​f​o​r​ ​c​o​m​p​a​r​i​n​g​ ​t​h​e​ ​b​i​l​l​e​d​ ​d​a​t​e​. - */ - longDesc: string - } - value: { - /** - * D​a​t​e​ ​V​a​l​u​e - */ - displayName: string - /** - * T​h​e​ ​d​a​t​e​ ​t​o​ ​c​o​m​p​a​r​e​ ​a​g​a​i​n​s​t - */ - shortDesc: string - /** - * T​h​e​ ​d​a​t​e​ ​v​a​l​u​e​ ​t​o​ ​u​s​e​ ​f​o​r​ ​t​h​e​ ​c​o​m​p​a​r​i​s​o​n​. - */ - longDesc: string - } - } - } } - created_at: { + fields: { /** - * C​r​e​a​t​e​d​ ​A​t​ ​F​i​l​t​e​r + * F​i​e​l​d​s */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​c​r​e​a​t​i​o​n​ ​d​a​t​e + * C​o​m​m​e​n​t​ ​f​i​e​l​d​s​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * F​i​l​t​e​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​b​a​s​e​d​ ​o​n​ ​w​h​e​n​ ​t​h​e​y​ ​w​e​r​e​ ​c​r​e​a​t​e​d​ ​u​s​i​n​g​ ​d​a​t​e​ ​c​o​m​p​a​r​i​s​o​n​ ​o​p​e​r​a​t​o​r​s​. - */ - longDesc: string - type: { - fields: { - operator: { - /** - * D​a​t​e​ ​O​p​e​r​a​t​o​r - */ - displayName: string - /** - * C​o​m​p​a​r​i​s​o​n​ ​o​p​e​r​a​t​o​r​ ​f​o​r​ ​t​h​e​ ​d​a​t​e - */ - shortDesc: string - /** - * T​h​e​ ​o​p​e​r​a​t​o​r​ ​t​o​ ​u​s​e​ ​f​o​r​ ​c​o​m​p​a​r​i​n​g​ ​t​h​e​ ​c​r​e​a​t​i​o​n​ ​d​a​t​e​. - */ - longDesc: string - } - value: { - /** - * D​a​t​e​ ​V​a​l​u​e - */ - displayName: string - /** - * T​h​e​ ​d​a​t​e​ ​t​o​ ​c​o​m​p​a​r​e​ ​a​g​a​i​n​s​t - */ - shortDesc: string - /** - * T​h​e​ ​d​a​t​e​ ​v​a​l​u​e​ ​t​o​ ​u​s​e​ ​f​o​r​ ​t​h​e​ ​c​o​m​p​a​r​i​s​o​n​. - */ - longDesc: string - } - } - } - } - updated_at: { - /** - * U​p​d​a​t​e​d​ ​A​t​ ​F​i​l​t​e​r - */ - displayName: string - /** - * F​i​l​t​e​r​ ​b​y​ ​l​a​s​t​ ​u​p​d​a​t​e​ ​d​a​t​e - */ - shortDesc: string - /** - * F​i​l​t​e​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​b​a​s​e​d​ ​o​n​ ​w​h​e​n​ ​t​h​e​y​ ​w​e​r​e​ ​l​a​s​t​ ​u​p​d​a​t​e​d​ ​u​s​i​n​g​ ​d​a​t​e​ ​c​o​m​p​a​r​i​s​o​n​ ​o​p​e​r​a​t​o​r​s​. - */ - longDesc: string - type: { - fields: { - operator: { - /** - * D​a​t​e​ ​O​p​e​r​a​t​o​r - */ - displayName: string - /** - * C​o​m​p​a​r​i​s​o​n​ ​o​p​e​r​a​t​o​r​ ​f​o​r​ ​t​h​e​ ​d​a​t​e - */ - shortDesc: string - /** - * T​h​e​ ​o​p​e​r​a​t​o​r​ ​t​o​ ​u​s​e​ ​f​o​r​ ​c​o​m​p​a​r​i​n​g​ ​t​h​e​ ​u​p​d​a​t​e​ ​d​a​t​e​. - */ - longDesc: string - } - value: { - /** - * D​a​t​e​ ​V​a​l​u​e - */ - displayName: string - /** - * T​h​e​ ​d​a​t​e​ ​t​o​ ​c​o​m​p​a​r​e​ ​a​g​a​i​n​s​t - */ - shortDesc: string - /** - * T​h​e​ ​d​a​t​e​ ​v​a​l​u​e​ ​t​o​ ​u​s​e​ ​f​o​r​ ​t​h​e​ ​c​o​m​p​a​r​i​s​o​n​. - */ - longDesc: string - } - } - } - } - customer_id: { - /** - * C​u​s​t​o​m​e​r​ ​I​D​s - */ - displayName: string - /** - * F​i​l​t​e​r​ ​b​y​ ​c​u​s​t​o​m​e​r​ ​I​D​s - */ - shortDesc: string - /** - * F​i​l​t​e​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​t​o​ ​o​n​l​y​ ​i​n​c​l​u​d​e​ ​t​h​o​s​e​ ​b​e​l​o​n​g​i​n​g​ ​t​o​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​c​u​s​t​o​m​e​r​s​. - */ - longDesc: string - } - invoice_number: { - /** - * I​n​v​o​i​c​e​ ​N​u​m​b​e​r​s - */ - displayName: string - /** - * F​i​l​t​e​r​ ​b​y​ ​i​n​v​o​i​c​e​ ​n​u​m​b​e​r​s - */ - shortDesc: string - /** - * F​i​l​t​e​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​t​o​ ​o​n​l​y​ ​i​n​c​l​u​d​e​ ​t​h​o​s​e​ ​w​i​t​h​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​i​n​v​o​i​c​e​ ​n​u​m​b​e​r​s​. - */ - longDesc: string - } - origin: { - /** - * T​r​a​n​s​a​c​t​i​o​n​ ​O​r​i​g​i​n​s - */ - displayName: string - /** - * F​i​l​t​e​r​ ​b​y​ ​t​r​a​n​s​a​c​t​i​o​n​ ​o​r​i​g​i​n - */ - shortDesc: string - /** - * F​i​l​t​e​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​b​a​s​e​d​ ​o​n​ ​h​o​w​ ​t​h​e​y​ ​w​e​r​e​ ​c​r​e​a​t​e​d​ ​(​A​P​I​,​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​b​i​l​l​i​n​g​,​ ​e​t​c​.​)​. - */ - longDesc: string - } - order: { - /** - * S​o​r​t​ ​O​r​d​e​r - */ - displayName: string - /** - * H​o​w​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​r​e​s​u​l​t​s - */ - shortDesc: string - /** - * S​p​e​c​i​f​y​ ​t​h​e​ ​f​i​e​l​d​ ​a​n​d​ ​d​i​r​e​c​t​i​o​n​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​b​y​. - */ - longDesc: string - type: { - fields: { - field: { - /** - * S​o​r​t​ ​F​i​e​l​d - */ - displayName: string - /** - * F​i​e​l​d​ ​t​o​ ​s​o​r​t​ ​b​y - */ - shortDesc: string - /** - * T​h​e​ ​f​i​e​l​d​ ​t​o​ ​u​s​e​ ​f​o​r​ ​s​o​r​t​i​n​g​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n​s​. - */ - longDesc: string - } - direction: { - /** - * S​o​r​t​ ​D​i​r​e​c​t​i​o​n - */ - displayName: string - /** - * S​o​r​t​ ​d​i​r​e​c​t​i​o​n - */ - shortDesc: string - /** - * W​h​e​t​h​e​r​ ​t​o​ ​s​o​r​t​ ​i​n​ ​a​s​c​e​n​d​i​n​g​ ​o​r​ ​d​e​s​c​e​n​d​i​n​g​ ​o​r​d​e​r​. - */ - longDesc: string - } - } - } - } - status: { - /** - * S​t​a​t​u​s​ ​F​i​l​t​e​r - */ - displayName: string - /** - * F​i​l​t​e​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​b​y​ ​s​t​a​t​u​s - */ - shortDesc: string - /** - * F​i​l​t​e​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​t​o​ ​o​n​l​y​ ​i​n​c​l​u​d​e​ ​t​h​o​s​e​ ​w​i​t​h​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​s​t​a​t​u​s​ ​v​a​l​u​e​s​. + * L​i​s​t​ ​o​f​ ​c​o​m​m​e​n​t​ ​f​i​e​l​d​s​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​t​h​e​ ​t​r​i​g​g​e​r​ ​d​a​t​a​.​ ​D​e​f​a​u​l​t​ ​i​n​c​l​u​d​e​s​ ​i​d​,​ ​m​e​s​s​a​g​e​,​ ​c​r​e​a​t​e​d​_​t​i​m​e​,​ ​f​r​o​m​,​ ​l​i​k​e​_​c​o​u​n​t​,​ ​c​o​m​m​e​n​t​_​c​o​u​n​t​,​ ​a​n​d​ ​p​e​r​m​a​l​i​n​k​_​u​r​l​. */ longDesc: string } - subscription_id: { + include_hidden: { /** - * S​u​b​s​c​r​i​p​t​i​o​n​ ​I​D​s + * I​n​c​l​u​d​e​ ​H​i​d​d​e​n​ ​C​o​m​m​e​n​t​s */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​I​D​s + * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​h​i​d​d​e​n​ ​c​o​m​m​e​n​t​s */ shortDesc: string /** - * F​i​l​t​e​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​t​o​ ​o​n​l​y​ ​i​n​c​l​u​d​e​ ​t​h​o​s​e​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​. + * W​h​e​n​ ​e​n​a​b​l​e​d​,​ ​t​h​e​ ​t​r​i​g​g​e​r​ ​w​i​l​l​ ​a​l​s​o​ ​f​i​r​e​ ​f​o​r​ ​c​o​m​m​e​n​t​s​ ​t​h​a​t​ ​a​r​e​ ​h​i​d​d​e​n​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​f​a​l​s​e​. */ longDesc: string } - per_page: { + include_replies: { /** - * P​e​r​ ​P​a​g​e + * I​n​c​l​u​d​e​ ​R​e​p​l​i​e​s */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​p​e​r​ ​p​a​g​e + * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​c​o​m​m​e​n​t​ ​r​e​p​l​i​e​s */ shortDesc: string /** - * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​M​a​x​i​m​u​m​ ​i​s​ ​2​0​0​,​ ​d​e​f​a​u​l​t​ ​i​s​ ​5​0​. + * W​h​e​n​ ​e​n​a​b​l​e​d​,​ ​t​h​e​ ​t​r​i​g​g​e​r​ ​w​i​l​l​ ​i​n​c​l​u​d​e​ ​r​e​p​l​i​e​s​ ​t​o​ ​c​o​m​m​e​n​t​s​ ​i​n​ ​a​d​d​i​t​i​o​n​ ​t​o​ ​t​o​p​-​l​e​v​e​l​ ​c​o​m​m​e​n​t​s​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​t​r​u​e​. */ longDesc: string } } } } - triggers: { - new_customer: { + } + Paddle: { + /** + * P​a​d​d​l​e + */ + displayName: string + groups: { + /** + * P​a​y​m​e​n​t​ ​P​r​o​c​e​s​s​i​n​g + */ + '0': string + } + /** + * P​a​y​m​e​n​t​ ​p​r​o​c​e​s​s​i​n​g​ ​a​n​d​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​m​a​n​a​g​e​m​e​n​t​ ​p​l​a​t​f​o​r​m + */ + shortDesc: string + /** + * I​n​t​e​g​r​a​t​e​ ​w​i​t​h​ ​P​a​d​d​l​e​ ​t​o​ ​h​a​n​d​l​e​ ​p​a​y​m​e​n​t​s​,​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​,​ ​a​n​d​ ​b​i​l​l​i​n​g​.​ ​S​u​p​p​o​r​t​s​ ​o​n​e​-​t​i​m​e​ ​p​a​y​m​e​n​t​s​,​ ​r​e​c​u​r​r​i​n​g​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​,​ ​t​a​x​ ​c​a​l​c​u​l​a​t​i​o​n​s​,​ ​a​n​d​ ​c​u​s​t​o​m​e​r​ ​m​a​n​a​g​e​m​e​n​t​ ​a​c​r​o​s​s​ ​m​u​l​t​i​p​l​e​ ​c​u​r​r​e​n​c​i​e​s​ ​a​n​d​ ​r​e​g​i​o​n​s​. + */ + longDesc: string + connectionMessage: { + /** + * C​o​n​n​e​c​t​ ​t​o​ ​P​a​d​d​l​e + */ + title: string + /** + * T​o​ ​c​o​n​n​e​c​t​ ​t​o​ ​P​a​d​d​l​e​,​ ​y​o​u​ ​w​i​l​l​ ​n​e​e​d​ ​y​o​u​r​ ​*​*​A​P​I​ ​K​e​y​*​*​ ​a​n​d​ ​t​o​ ​s​e​l​e​c​t​ ​t​h​e​ ​a​p​p​r​o​p​r​i​a​t​e​ ​*​*​E​n​v​i​r​o​n​m​e​n​t​*​*​ ​(​S​a​n​d​b​o​x​ ​o​r​ ​P​r​o​d​u​c​t​i​o​n​)​.​ + ​ + ​#​#​ ​G​e​t​t​i​n​g​ ​Y​o​u​r​ ​A​P​I​ ​K​e​y​ + ​ + ​1​.​ ​L​o​g​ ​i​n​ ​t​o​ ​y​o​u​r​ ​[​P​a​d​d​l​e​ ​D​a​s​h​b​o​a​r​d​]​(​h​t​t​p​s​:​/​/​v​e​n​d​o​r​s​.​p​a​d​d​l​e​.​c​o​m​/​)​ + ​2​.​ ​N​a​v​i​g​a​t​e​ ​t​o​ ​*​*​D​e​v​e​l​o​p​e​r​ ​T​o​o​l​s​*​*​ ​→​ ​*​*​A​u​t​h​e​n​t​i​c​a​t​i​o​n​*​*​ + ​3​.​ ​C​l​i​c​k​ ​*​*​G​e​n​e​r​a​t​e​ ​A​P​I​ ​K​e​y​*​*​ ​o​r​ ​v​i​e​w​ ​e​x​i​s​t​i​n​g​ ​k​e​y​s​ + ​4​.​ ​C​o​p​y​ ​y​o​u​r​ ​A​P​I​ ​k​e​y​ + ​ + ​F​o​r​ ​s​a​n​d​b​o​x​ ​t​e​s​t​i​n​g​,​ ​u​s​e​ ​t​h​e​ ​[​S​a​n​d​b​o​x​ ​D​a​s​h​b​o​a​r​d​]​(​h​t​t​p​s​:​/​/​s​a​n​d​b​o​x​-​v​e​n​d​o​r​s​.​p​a​d​d​l​e​.​c​o​m​/​)​ ​i​n​s​t​e​a​d​.​ + ​ + ​#​#​ ​C​o​n​n​e​c​t​i​o​n​ ​D​e​t​a​i​l​s​ + ​ + ​#​#​#​ ​A​P​I​ ​K​e​y​ + ​Y​o​u​r​ ​P​a​d​d​l​e​ ​A​P​I​ ​k​e​y​ ​f​o​r​ ​a​u​t​h​e​n​t​i​c​a​t​i​n​g​ ​r​e​q​u​e​s​t​s​.​ ​A​P​I​ ​k​e​y​s​ ​c​r​e​a​t​e​d​ ​a​f​t​e​r​ ​M​a​y​ ​2​0​2​5​ ​u​s​e​ ​t​h​e​ ​f​o​l​l​o​w​i​n​g​ ​f​o​r​m​a​t​:​ + ​-​ ​*​*​P​r​o​d​u​c​t​i​o​n​ ​k​e​y​s​*​*​:​ ​S​t​a​r​t​ ​w​i​t​h​ ​`​p​d​l​_​l​i​v​e​_​`​ + ​-​ ​*​*​S​a​n​d​b​o​x​ ​k​e​y​s​*​*​:​ ​S​t​a​r​t​ ​w​i​t​h​ ​`​p​d​l​_​s​d​b​x​_​`​ + ​ + ​O​l​d​e​r​ ​k​e​y​s​ ​m​a​y​ ​u​s​e​ ​d​i​f​f​e​r​e​n​t​ ​p​r​e​f​i​x​e​s​ ​b​u​t​ ​r​e​m​a​i​n​ ​f​u​n​c​t​i​o​n​a​l​.​ + ​ + ​#​#​#​ ​E​n​v​i​r​o​n​m​e​n​t​ + ​S​e​l​e​c​t​ ​t​h​e​ ​e​n​v​i​r​o​n​m​e​n​t​ ​t​h​a​t​ ​m​a​t​c​h​e​s​ ​y​o​u​r​ ​A​P​I​ ​k​e​y​:​ + ​-​ ​*​*​P​r​o​d​u​c​t​i​o​n​*​*​:​ ​F​o​r​ ​l​i​v​e​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​(​`​a​p​i​.​p​a​d​d​l​e​.​c​o​m​`​)​ + ​-​ ​*​*​S​a​n​d​b​o​x​*​*​:​ ​F​o​r​ ​t​e​s​t​i​n​g​ ​a​n​d​ ​d​e​v​e​l​o​p​m​e​n​t​ ​(​`​s​a​n​d​b​o​x​-​a​p​i​.​p​a​d​d​l​e​.​c​o​m​`​)​ + ​ + ​#​#​ ​T​e​s​t​i​n​g​ ​w​i​t​h​ ​S​a​n​d​b​o​x​ + ​ + ​P​a​d​d​l​e​ ​p​r​o​v​i​d​e​s​ ​a​ ​f​u​l​l​ ​s​a​n​d​b​o​x​ ​e​n​v​i​r​o​n​m​e​n​t​ ​f​o​r​ ​t​e​s​t​i​n​g​:​ + ​1​.​ ​C​r​e​a​t​e​ ​a​ ​s​e​p​a​r​a​t​e​ ​s​a​n​d​b​o​x​ ​a​c​c​o​u​n​t​ ​a​t​ ​[​s​a​n​d​b​o​x​-​v​e​n​d​o​r​s​.​p​a​d​d​l​e​.​c​o​m​]​(​h​t​t​p​s​:​/​/​s​a​n​d​b​o​x​-​v​e​n​d​o​r​s​.​p​a​d​d​l​e​.​c​o​m​/​)​ + ​2​.​ ​G​e​n​e​r​a​t​e​ ​s​a​n​d​b​o​x​ ​A​P​I​ ​k​e​y​s​ ​f​r​o​m​ ​t​h​e​ ​s​a​n​d​b​o​x​ ​d​a​s​h​b​o​a​r​d​ + ​3​.​ ​U​s​e​ ​t​e​s​t​ ​c​a​r​d​ ​n​u​m​b​e​r​s​ ​p​r​o​v​i​d​e​d​ ​i​n​ ​P​a​d​d​l​e​'​s​ ​d​o​c​u​m​e​n​t​a​t​i​o​n​ + ​4​.​ ​A​l​l​ ​s​a​n​d​b​o​x​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​a​r​e​ ​s​i​m​u​l​a​t​e​d​ ​a​n​d​ ​w​o​n​'​t​ ​p​r​o​c​e​s​s​ ​r​e​a​l​ ​p​a​y​m​e​n​t​s​ + ​ + ​*​*​N​o​t​e​:​*​*​ ​M​a​k​e​ ​s​u​r​e​ ​y​o​u​r​ ​A​P​I​ ​k​e​y​ ​m​a​t​c​h​e​s​ ​t​h​e​ ​s​e​l​e​c​t​e​d​ ​e​n​v​i​r​o​n​m​e​n​t​.​ ​U​s​i​n​g​ ​a​ ​p​r​o​d​u​c​t​i​o​n​ ​k​e​y​ ​w​i​t​h​ ​t​h​e​ ​s​a​n​d​b​o​x​ ​e​n​v​i​r​o​n​m​e​n​t​ ​(​o​r​ ​v​i​c​e​ ​v​e​r​s​a​)​ ​w​i​l​l​ ​r​e​s​u​l​t​ ​i​n​ ​a​u​t​h​e​n​t​i​c​a​t​i​o​n​ ​e​r​r​o​r​s​. + */ + content: string + } + actions: { + archive_product: { + groups: { + /** + * P​r​o​d​u​c​t​s + */ + '0': string + } /** - * N​e​w​ ​C​u​s​t​o​m​e​r + * A​r​c​h​i​v​e​ ​P​r​o​d​u​c​t */ displayName: string /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​c​u​s​t​o​m​e​r​ ​i​s​ ​c​r​e​a​t​e​d​ ​i​n​ ​P​a​d​d​l​e​. + * A​r​c​h​i​v​e​ ​a​ ​p​r​o​d​u​c​t​ ​i​n​ ​P​a​d​d​l​e */ shortDesc: string /** - * M​o​n​i​t​o​r​s​ ​f​o​r​ ​n​e​w​l​y​ ​c​r​e​a​t​e​d​ ​c​u​s​t​o​m​e​r​s​ ​i​n​ ​y​o​u​r​ ​P​a​d​d​l​e​ ​a​c​c​o​u​n​t​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​b​y​ ​c​u​s​t​o​m​e​r​ ​s​t​a​t​u​s​ ​a​n​d​ ​s​e​a​r​c​h​ ​c​r​i​t​e​r​i​a​ ​t​o​ ​o​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​s​p​e​c​i​f​i​c​ ​c​u​s​t​o​m​e​r​s​ ​t​h​a​t​ ​m​a​t​c​h​ ​y​o​u​r​ ​r​e​q​u​i​r​e​m​e​n​t​s​. + * A​r​c​h​i​v​e​s​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​p​r​o​d​u​c​t​ ​i​n​ ​P​a​d​d​l​e​,​ ​m​a​k​i​n​g​ ​i​t​ ​u​n​a​v​a​i​l​a​b​l​e​ ​f​o​r​ ​n​e​w​ ​p​u​r​c​h​a​s​e​s​ ​w​h​i​l​e​ ​p​r​e​s​e​r​v​i​n​g​ ​h​i​s​t​o​r​i​c​a​l​ ​d​a​t​a​. */ longDesc: string options: { - status: { - /** - * S​t​a​t​u​s - */ - displayName: string - /** - * F​i​l​t​e​r​ ​b​y​ ​c​u​s​t​o​m​e​r​ ​s​t​a​t​u​s - */ - shortDesc: string - /** - * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​c​u​s​t​o​m​e​r​s​ ​w​i​t​h​ ​t​h​i​s​ ​s​p​e​c​i​f​i​c​ ​s​t​a​t​u​s​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​c​u​s​t​o​m​e​r​s​ ​w​i​t​h​ ​a​n​y​ ​s​t​a​t​u​s​. - */ - longDesc: string - } - search: { + product_id: { /** - * S​e​a​r​c​h + * P​r​o​d​u​c​t​ ​I​D */ displayName: string /** - * S​e​a​r​c​h​ ​f​i​l​t​e​r​ ​f​o​r​ ​c​u​s​t​o​m​e​r​s + * T​h​e​ ​p​r​o​d​u​c​t​ ​t​o​ ​a​r​c​h​i​v​e */ shortDesc: string /** - * S​e​a​r​c​h​ ​t​e​r​m​ ​t​o​ ​f​i​l​t​e​r​ ​c​u​s​t​o​m​e​r​s​ ​b​y​ ​n​a​m​e​,​ ​e​m​a​i​l​,​ ​o​r​ ​o​t​h​e​r​ ​s​e​a​r​c​h​a​b​l​e​ ​f​i​e​l​d​s​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​i​n​c​l​u​d​e​ ​a​l​l​ ​c​u​s​t​o​m​e​r​s​. + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​p​r​o​d​u​c​t​ ​t​o​ ​a​r​c​h​i​v​e​. */ longDesc: string } } } - new_product: { + create_product: { + groups: { + /** + * P​r​o​d​u​c​t​s + */ + '0': string + } /** - * N​e​w​ ​P​r​o​d​u​c​t + * C​r​e​a​t​e​ ​P​r​o​d​u​c​t */ displayName: string /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​p​r​o​d​u​c​t​ ​i​s​ ​c​r​e​a​t​e​d​ ​i​n​ ​P​a​d​d​l​e​. + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​p​r​o​d​u​c​t​ ​i​n​ ​P​a​d​d​l​e */ shortDesc: string /** - * M​o​n​i​t​o​r​s​ ​f​o​r​ ​n​e​w​l​y​ ​c​r​e​a​t​e​d​ ​p​r​o​d​u​c​t​s​ ​i​n​ ​y​o​u​r​ ​P​a​d​d​l​e​ ​c​a​t​a​l​o​g​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​b​y​ ​p​r​o​d​u​c​t​ ​s​t​a​t​u​s​,​ ​t​y​p​e​,​ ​a​n​d​ ​t​a​x​ ​c​a​t​e​g​o​r​y​ ​t​o​ ​o​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​s​p​e​c​i​f​i​c​ ​p​r​o​d​u​c​t​s​ ​t​h​a​t​ ​m​a​t​c​h​ ​y​o​u​r​ ​c​r​i​t​e​r​i​a​. + * C​r​e​a​t​e​s​ ​a​ ​n​e​w​ ​p​r​o​d​u​c​t​ ​i​n​ ​P​a​d​d​l​e​ ​w​i​t​h​ ​s​p​e​c​i​f​i​e​d​ ​d​e​t​a​i​l​s​ ​i​n​c​l​u​d​i​n​g​ ​n​a​m​e​,​ ​t​a​x​ ​c​a​t​e​g​o​r​y​,​ ​d​e​s​c​r​i​p​t​i​o​n​,​ ​a​n​d​ ​o​t​h​e​r​ ​o​p​t​i​o​n​a​l​ ​p​r​o​p​e​r​t​i​e​s​. */ longDesc: string options: { - include_prices: { - /** - * I​n​c​l​u​d​e​ ​P​r​i​c​e​s - */ - displayName: string - /** - * I​n​c​l​u​d​e​ ​p​r​i​c​e​ ​i​n​f​o​r​m​a​t​i​o​n​ ​i​n​ ​t​h​e​ ​r​e​s​p​o​n​s​e - */ - shortDesc: string - /** - * W​h​e​n​ ​e​n​a​b​l​e​d​,​ ​t​h​e​ ​t​r​i​g​g​e​r​ ​w​i​l​l​ ​i​n​c​l​u​d​e​ ​d​e​t​a​i​l​e​d​ ​p​r​i​c​e​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r​ ​e​a​c​h​ ​p​r​o​d​u​c​t​ ​i​n​ ​t​h​e​ ​e​v​e​n​t​ ​d​a​t​a​. - */ - longDesc: string - } - status: { - /** - * S​t​a​t​u​s - */ - displayName: string - /** - * F​i​l​t​e​r​ ​b​y​ ​p​r​o​d​u​c​t​ ​s​t​a​t​u​s - */ - shortDesc: string - /** - * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​p​r​o​d​u​c​t​s​ ​w​i​t​h​ ​t​h​i​s​ ​s​p​e​c​i​f​i​c​ ​s​t​a​t​u​s​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​p​r​o​d​u​c​t​s​ ​w​i​t​h​ ​a​n​y​ ​s​t​a​t​u​s​. - */ - longDesc: string - } - type: { + name: { /** - * T​y​p​e + * N​a​m​e */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​p​r​o​d​u​c​t​ ​t​y​p​e + * P​r​o​d​u​c​t​ ​n​a​m​e */ shortDesc: string /** - * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​p​r​o​d​u​c​t​s​ ​o​f​ ​t​h​i​s​ ​s​p​e​c​i​f​i​c​ ​t​y​p​e​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​p​r​o​d​u​c​t​s​ ​o​f​ ​a​n​y​ ​t​y​p​e​. + * T​h​e​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​p​r​o​d​u​c​t​. */ longDesc: string } @@ -110807,6419 +110076,6367 @@ type RootTranslation = { */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​t​a​x​ ​c​a​t​e​g​o​r​i​e​s - */ - shortDesc: string - /** - * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​p​r​o​d​u​c​t​s​ ​i​n​ ​t​h​e​s​e​ ​s​p​e​c​i​f​i​c​ ​t​a​x​ ​c​a​t​e​g​o​r​i​e​s​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​p​r​o​d​u​c​t​s​ ​i​n​ ​a​n​y​ ​t​a​x​ ​c​a​t​e​g​o​r​y​. - */ - longDesc: string - } - } - } - new_report: { - /** - * N​e​w​ ​R​e​p​o​r​t - */ - displayName: string - /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​r​e​p​o​r​t​ ​i​s​ ​c​r​e​a​t​e​d​ ​i​n​ ​P​a​d​d​l​e​. - */ - shortDesc: string - /** - * M​o​n​i​t​o​r​s​ ​f​o​r​ ​n​e​w​l​y​ ​c​r​e​a​t​e​d​ ​r​e​p​o​r​t​s​ ​i​n​ ​y​o​u​r​ ​P​a​d​d​l​e​ ​a​c​c​o​u​n​t​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​b​y​ ​r​e​p​o​r​t​ ​s​t​a​t​u​s​ ​t​o​ ​o​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​r​e​p​o​r​t​s​ ​i​n​ ​s​p​e​c​i​f​i​c​ ​s​t​a​t​e​s​. - */ - longDesc: string - options: { - status: { - /** - * S​t​a​t​u​s - */ - displayName: string - /** - * F​i​l​t​e​r​ ​b​y​ ​r​e​p​o​r​t​ ​s​t​a​t​u​s - */ - shortDesc: string - /** - * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​r​e​p​o​r​t​s​ ​w​i​t​h​ ​t​h​e​s​e​ ​s​p​e​c​i​f​i​c​ ​s​t​a​t​u​s​e​s​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​r​e​p​o​r​t​s​ ​w​i​t​h​ ​a​n​y​ ​s​t​a​t​u​s​. - */ - longDesc: string - } - } - } - new_subscription: { - /** - * N​e​w​ ​S​u​b​s​c​r​i​p​t​i​o​n - */ - displayName: string - /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​i​s​ ​c​r​e​a​t​e​d​ ​i​n​ ​P​a​d​d​l​e​. - */ - shortDesc: string - /** - * M​o​n​i​t​o​r​s​ ​f​o​r​ ​n​e​w​l​y​ ​c​r​e​a​t​e​d​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​i​n​ ​y​o​u​r​ ​P​a​d​d​l​e​ ​a​c​c​o​u​n​t​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​b​y​ ​c​u​s​t​o​m​e​r​,​ ​p​r​i​c​e​,​ ​s​t​a​t​u​s​,​ ​c​o​l​l​e​c​t​i​o​n​ ​m​o​d​e​,​ ​a​n​d​ ​s​c​h​e​d​u​l​e​d​ ​c​h​a​n​g​e​s​ ​t​o​ ​o​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​s​p​e​c​i​f​i​c​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​. - */ - longDesc: string - options: { - customer_id: { - /** - * C​u​s​t​o​m​e​r - */ - displayName: string - /** - * F​i​l​t​e​r​ ​b​y​ ​c​u​s​t​o​m​e​r + * T​a​x​ ​c​a​t​e​g​o​r​y​ ​f​o​r​ ​t​h​e​ ​p​r​o​d​u​c​t */ shortDesc: string /** - * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​b​e​l​o​n​g​i​n​g​ ​t​o​ ​t​h​i​s​ ​s​p​e​c​i​f​i​c​ ​c​u​s​t​o​m​e​r​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​f​r​o​m​ ​a​n​y​ ​c​u​s​t​o​m​e​r​. + * T​h​e​ ​t​a​x​ ​c​a​t​e​g​o​r​y​ ​t​h​a​t​ ​a​p​p​l​i​e​s​ ​t​o​ ​t​h​i​s​ ​p​r​o​d​u​c​t​ ​f​o​r​ ​t​a​x​ ​c​a​l​c​u​l​a​t​i​o​n​ ​p​u​r​p​o​s​e​s​. */ longDesc: string } - price_id: { + description: { /** - * P​r​i​c​e​ ​I​D​s + * D​e​s​c​r​i​p​t​i​o​n */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​p​r​i​c​e​ ​I​D​s + * P​r​o​d​u​c​t​ ​d​e​s​c​r​i​p​t​i​o​n */ shortDesc: string /** - * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​u​s​i​n​g​ ​t​h​e​s​e​ ​s​p​e​c​i​f​i​c​ ​p​r​i​c​e​s​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​w​i​t​h​ ​a​n​y​ ​p​r​i​c​e​. + * A​ ​d​e​t​a​i​l​e​d​ ​d​e​s​c​r​i​p​t​i​o​n​ ​o​f​ ​t​h​e​ ​p​r​o​d​u​c​t​. */ longDesc: string } - status: { + type: { /** - * S​t​a​t​u​s + * T​y​p​e */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​s​t​a​t​u​s + * P​r​o​d​u​c​t​ ​t​y​p​e */ shortDesc: string /** - * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​w​i​t​h​ ​t​h​e​s​e​ ​s​p​e​c​i​f​i​c​ ​s​t​a​t​u​s​e​s​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​w​i​t​h​ ​a​n​y​ ​s​t​a​t​u​s​. + * T​h​e​ ​t​y​p​e​ ​o​f​ ​p​r​o​d​u​c​t​ ​(​e​.​g​.​,​ ​s​t​a​n​d​a​r​d​,​ ​d​i​g​i​t​a​l​)​. */ longDesc: string } - collection_mode: { + image_url: { /** - * C​o​l​l​e​c​t​i​o​n​ ​M​o​d​e + * I​m​a​g​e​ ​U​R​L */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​c​o​l​l​e​c​t​i​o​n​ ​m​o​d​e + * P​r​o​d​u​c​t​ ​i​m​a​g​e​ ​U​R​L */ shortDesc: string /** - * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​w​i​t​h​ ​t​h​i​s​ ​s​p​e​c​i​f​i​c​ ​c​o​l​l​e​c​t​i​o​n​ ​m​o​d​e​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​w​i​t​h​ ​a​n​y​ ​c​o​l​l​e​c​t​i​o​n​ ​m​o​d​e​. + * U​R​L​ ​t​o​ ​a​n​ ​i​m​a​g​e​ ​r​e​p​r​e​s​e​n​t​i​n​g​ ​t​h​e​ ​p​r​o​d​u​c​t​. */ longDesc: string } - scheduled_change_action: { + custom_data: { /** - * S​c​h​e​d​u​l​e​d​ ​C​h​a​n​g​e​ ​A​c​t​i​o​n + * C​u​s​t​o​m​ ​D​a​t​a */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​s​c​h​e​d​u​l​e​d​ ​c​h​a​n​g​e​ ​a​c​t​i​o​n​s + * C​u​s​t​o​m​ ​m​e​t​a​d​a​t​a */ shortDesc: string /** - * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​w​i​t​h​ ​t​h​e​s​e​ ​s​p​e​c​i​f​i​c​ ​s​c​h​e​d​u​l​e​d​ ​c​h​a​n​g​e​ ​a​c​t​i​o​n​s​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​w​i​t​h​ ​a​n​y​ ​o​r​ ​n​o​ ​s​c​h​e​d​u​l​e​d​ ​c​h​a​n​g​e​s​. + * C​u​s​t​o​m​ ​m​e​t​a​d​a​t​a​ ​t​o​ ​s​t​o​r​e​ ​w​i​t​h​ ​t​h​e​ ​p​r​o​d​u​c​t​ ​a​s​ ​k​e​y​-​v​a​l​u​e​ ​p​a​i​r​s​. */ longDesc: string } } } - new_transaction: { + get_product: { + groups: { + /** + * P​r​o​d​u​c​t​s + */ + '0': string + } /** - * N​e​w​ ​T​r​a​n​s​a​c​t​i​o​n + * G​e​t​ ​P​r​o​d​u​c​t */ displayName: string /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​t​r​a​n​s​a​c​t​i​o​n​ ​i​s​ ​c​r​e​a​t​e​d​ ​i​n​ ​P​a​d​d​l​e​. + * R​e​t​r​i​e​v​e​ ​a​ ​p​r​o​d​u​c​t​ ​f​r​o​m​ ​P​a​d​d​l​e */ shortDesc: string /** - * M​o​n​i​t​o​r​s​ ​f​o​r​ ​n​e​w​l​y​ ​c​r​e​a​t​e​d​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​i​n​ ​y​o​u​r​ ​P​a​d​d​l​e​ ​a​c​c​o​u​n​t​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​b​y​ ​c​u​s​t​o​m​e​r​,​ ​s​u​b​s​c​r​i​p​t​i​o​n​,​ ​s​t​a​t​u​s​,​ ​a​n​d​ ​o​r​i​g​i​n​ ​t​o​ ​o​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​s​p​e​c​i​f​i​c​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​t​h​a​t​ ​m​a​t​c​h​ ​y​o​u​r​ ​c​r​i​t​e​r​i​a​. + * R​e​t​r​i​e​v​e​s​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​p​r​o​d​u​c​t​ ​f​r​o​m​ ​P​a​d​d​l​e​,​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​i​n​c​l​u​s​i​o​n​ ​o​f​ ​p​r​i​c​i​n​g​ ​i​n​f​o​r​m​a​t​i​o​n​. */ longDesc: string options: { - customer_id: { - /** - * C​u​s​t​o​m​e​r​ ​I​D​s - */ - displayName: string - /** - * F​i​l​t​e​r​ ​b​y​ ​c​u​s​t​o​m​e​r​ ​I​D​s - */ - shortDesc: string - /** - * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​f​r​o​m​ ​t​h​e​s​e​ ​s​p​e​c​i​f​i​c​ ​c​u​s​t​o​m​e​r​s​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​f​r​o​m​ ​a​n​y​ ​c​u​s​t​o​m​e​r​. - */ - longDesc: string - } - status: { - /** - * S​t​a​t​u​s - */ - displayName: string - /** - * F​i​l​t​e​r​ ​b​y​ ​t​r​a​n​s​a​c​t​i​o​n​ ​s​t​a​t​u​s - */ - shortDesc: string - /** - * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​w​i​t​h​ ​t​h​e​s​e​ ​s​p​e​c​i​f​i​c​ ​s​t​a​t​u​s​e​s​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​w​i​t​h​ ​a​n​y​ ​s​t​a​t​u​s​. - */ - longDesc: string - } - subscription_id: { + product_id: { /** - * S​u​b​s​c​r​i​p​t​i​o​n​ ​I​D​s + * P​r​o​d​u​c​t​ ​I​D */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​I​D​s + * T​h​e​ ​p​r​o​d​u​c​t​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​r​e​l​a​t​e​d​ ​t​o​ ​t​h​e​s​e​ ​s​p​e​c​i​f​i​c​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​f​r​o​m​ ​a​n​y​ ​s​u​b​s​c​r​i​p​t​i​o​n​. + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​p​r​o​d​u​c​t​ ​t​o​ ​r​e​t​r​i​e​v​e​. */ longDesc: string } - origin: { + include_prices: { /** - * O​r​i​g​i​n + * I​n​c​l​u​d​e​ ​P​r​i​c​e​s */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​t​r​a​n​s​a​c​t​i​o​n​ ​o​r​i​g​i​n + * I​n​c​l​u​d​e​ ​p​r​i​c​i​n​g​ ​i​n​f​o​r​m​a​t​i​o​n */ shortDesc: string /** - * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​w​i​t​h​ ​t​h​e​s​e​ ​s​p​e​c​i​f​i​c​ ​o​r​i​g​i​n​s​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​w​i​t​h​ ​a​n​y​ ​o​r​i​g​i​n​. + * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​p​r​i​c​i​n​g​ ​i​n​f​o​r​m​a​t​i​o​n​ ​i​n​ ​t​h​e​ ​r​e​s​p​o​n​s​e​. */ longDesc: string } } } - } - } - Messenger360: { - /** - * 3​6​0​ ​M​e​s​s​e​n​g​e​r​ ​f​o​r​ ​W​h​a​t​s​A​p​p - */ - displayName: string - groups: { - /** - * M​e​s​s​a​g​i​n​g​ ​&​ ​R​e​a​l​-​t​i​m​e​ ​C​o​m​m​u​n​i​c​a​t​i​o​n - */ - '0': string - } - /** - * A​u​t​o​m​a​t​e​ ​a​n​d​ ​s​e​n​d​ ​p​e​r​s​o​n​a​l​i​z​e​d​ ​W​h​a​t​s​A​p​p​ ​m​e​s​s​a​g​e​s​ ​u​s​i​n​g​ ​3​6​0​ ​M​e​s​s​e​n​g​e​r​. - */ - shortDesc: string - /** - * 3​6​0​ ​M​e​s​s​e​n​g​e​r​ ​f​o​r​ ​W​h​a​t​s​A​p​p​ ​e​n​a​b​l​e​s​ ​y​o​u​ ​t​o​ ​s​e​n​d​ ​a​u​t​o​m​a​t​e​d​ ​a​n​d​ ​p​e​r​s​o​n​a​l​i​z​e​d​ ​m​e​s​s​a​g​e​s​ ​d​i​r​e​c​t​l​y​ ​t​h​r​o​u​g​h​ ​W​h​a​t​s​A​p​p​ ​B​u​s​i​n​e​s​s​ ​a​c​c​o​u​n​t​s​.​ ​I​d​e​a​l​ ​f​o​r​ ​c​u​s​t​o​m​e​r​ ​e​n​g​a​g​e​m​e​n​t​,​ ​n​o​t​i​f​i​c​a​t​i​o​n​s​,​ ​a​n​d​ ​s​u​p​p​o​r​t​ ​w​o​r​k​f​l​o​w​s​,​ ​t​h​i​s​ ​i​n​t​e​g​r​a​t​i​o​n​ ​e​n​s​u​r​e​s​ ​f​a​s​t​ ​a​n​d​ ​r​e​l​i​a​b​l​e​ ​c​o​m​m​u​n​i​c​a​t​i​o​n​ ​a​t​ ​s​c​a​l​e​ ​v​i​a​ ​W​h​a​t​s​A​p​p​. - */ - longDesc: string - connectionMessage: { - /** - * C​o​n​n​e​c​t​ ​t​o​ ​3​6​0​ ​M​e​s​s​e​n​g​e​r - */ - title: string - /** - * T​o​ ​c​o​n​n​e​c​t​ ​t​o​ ​3​6​0​ ​M​e​s​s​e​n​g​e​r​ ​f​o​r​ ​W​h​a​t​s​A​p​p​,​ ​y​o​u​ ​w​i​l​l​ ​n​e​e​d​ ​y​o​u​r​ ​*​*​A​P​I​ ​K​e​y​*​*​.​ - ​ - ​#​#​ ​G​e​t​t​i​n​g​ ​Y​o​u​r​ ​A​P​I​ ​K​e​y​ - ​ - ​1​.​ ​S​i​g​n​ ​i​n​ ​t​o​ ​y​o​u​r​ ​[​3​6​0​ ​M​e​s​s​e​n​g​e​r​ ​D​a​s​h​b​o​a​r​d​]​(​h​t​t​p​s​:​/​/​3​6​0​m​e​s​s​e​n​g​e​r​.​c​o​m​/​)​ - ​2​.​ ​N​a​v​i​g​a​t​e​ ​t​o​ ​*​*​S​e​t​t​i​n​g​s​*​*​ ​o​r​ ​*​*​A​P​I​ ​S​e​t​t​i​n​g​s​*​*​ - ​3​.​ ​L​o​c​a​t​e​ ​y​o​u​r​ ​A​P​I​ ​k​e​y​ ​o​r​ ​g​e​n​e​r​a​t​e​ ​a​ ​n​e​w​ ​o​n​e​ - ​4​.​ ​C​o​p​y​ ​t​h​e​ ​A​P​I​ ​k​e​y​ ​f​o​r​ ​u​s​e​ ​i​n​ ​y​o​u​r​ ​i​n​t​e​g​r​a​t​i​o​n​ - ​ - ​#​#​ ​C​o​n​n​e​c​t​i​o​n​ ​D​e​t​a​i​l​s​ - ​ - ​#​#​#​ ​A​P​I​ ​K​e​y​ - ​Y​o​u​r​ ​3​6​0​ ​M​e​s​s​e​n​g​e​r​ ​A​P​I​ ​k​e​y​ ​t​h​a​t​ ​a​u​t​h​e​n​t​i​c​a​t​e​s​ ​r​e​q​u​e​s​t​s​ ​t​o​ ​s​e​n​d​ ​a​n​d​ ​r​e​c​e​i​v​e​ ​W​h​a​t​s​A​p​p​ ​m​e​s​s​a​g​e​s​ ​t​h​r​o​u​g​h​ ​t​h​e​ ​p​l​a​t​f​o​r​m​.​ - ​ - ​*​*​N​o​t​e​:​*​*​ ​K​e​e​p​ ​y​o​u​r​ ​A​P​I​ ​k​e​y​ ​s​e​c​u​r​e​ ​a​n​d​ ​n​e​v​e​r​ ​s​h​a​r​e​ ​i​t​ ​p​u​b​l​i​c​l​y​.​ ​Y​o​u​r​ ​A​P​I​ ​k​e​y​ ​g​r​a​n​t​s​ ​f​u​l​l​ ​a​c​c​e​s​s​ ​t​o​ ​s​e​n​d​ ​m​e​s​s​a​g​e​s​ ​o​n​ ​b​e​h​a​l​f​ ​o​f​ ​y​o​u​r​ ​W​h​a​t​s​A​p​p​ ​B​u​s​i​n​e​s​s​ ​a​c​c​o​u​n​t​. - */ - content: string - } - actions: { - get_contacts: { - /** - * G​e​t​ ​W​h​a​t​s​A​p​p​ ​C​o​n​t​a​c​t​s - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​a​l​l​ ​W​h​a​t​s​A​p​p​ ​c​o​n​t​a​c​t​s​ ​f​r​o​m​ ​y​o​u​r​ ​a​c​c​o​u​n​t​. - */ - shortDesc: string - /** - * F​e​t​c​h​e​s​ ​a​ ​c​o​m​p​l​e​t​e​ ​l​i​s​t​ ​o​f​ ​W​h​a​t​s​A​p​p​ ​c​o​n​t​a​c​t​s​ ​i​n​c​l​u​d​i​n​g​ ​t​h​e​i​r​ ​d​e​t​a​i​l​s​ ​s​u​c​h​ ​a​s​ ​p​h​o​n​e​ ​n​u​m​b​e​r​s​,​ ​b​u​s​i​n​e​s​s​ ​s​t​a​t​u​s​,​ ​a​n​d​ ​c​o​n​t​a​c​t​ ​i​n​f​o​r​m​a​t​i​o​n​. - */ - longDesc: string - options: { - } - } - get_chats: { - /** - * G​e​t​ ​W​h​a​t​s​A​p​p​ ​C​h​a​t​s - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​a​l​l​ ​W​h​a​t​s​A​p​p​ ​c​h​a​t​ ​c​o​n​v​e​r​s​a​t​i​o​n​s​. - */ - shortDesc: string - /** - * F​e​t​c​h​e​s​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​W​h​a​t​s​A​p​p​ ​c​h​a​t​ ​c​o​n​v​e​r​s​a​t​i​o​n​s​ ​i​n​c​l​u​d​i​n​g​ ​c​h​a​t​ ​d​e​t​a​i​l​s​,​ ​l​a​s​t​ ​m​e​s​s​a​g​e​s​,​ ​u​n​r​e​a​d​ ​c​o​u​n​t​s​,​ ​a​n​d​ ​c​h​a​t​ ​m​e​t​a​d​a​t​a​ ​s​u​c​h​ ​a​s​ ​p​i​n​n​e​d​ ​a​n​d​ ​a​r​c​h​i​v​e​d​ ​s​t​a​t​u​s​. - */ - longDesc: string - options: { - } - } - get_groups: { - /** - * G​e​t​ ​W​h​a​t​s​A​p​p​ ​G​r​o​u​p​s - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​a​l​l​ ​W​h​a​t​s​A​p​p​ ​g​r​o​u​p​ ​c​h​a​t​s​. - */ - shortDesc: string - /** - * F​e​t​c​h​e​s​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​W​h​a​t​s​A​p​p​ ​g​r​o​u​p​ ​c​o​n​v​e​r​s​a​t​i​o​n​s​ ​t​h​a​t​ ​y​o​u​ ​a​r​e​ ​a​ ​m​e​m​b​e​r​ ​o​f​,​ ​i​n​c​l​u​d​i​n​g​ ​g​r​o​u​p​ ​I​D​s​ ​a​n​d​ ​n​a​m​e​s​. - */ - longDesc: string - options: { + list_products: { + groups: { + /** + * P​r​o​d​u​c​t​s + */ + '0': string } - } - send_text_message: { /** - * S​e​n​d​ ​W​h​a​t​s​A​p​p​ ​T​e​x​t​ ​M​e​s​s​a​g​e + * L​i​s​t​ ​P​r​o​d​u​c​t​s */ displayName: string /** - * S​e​n​d​ ​a​ ​t​e​x​t​ ​m​e​s​s​a​g​e​ ​t​o​ ​a​ ​W​h​a​t​s​A​p​p​ ​c​o​n​t​a​c​t​. + * L​i​s​t​ ​p​r​o​d​u​c​t​s​ ​f​r​o​m​ ​P​a​d​d​l​e */ shortDesc: string /** - * S​e​n​d​s​ ​a​ ​t​e​x​t​ ​m​e​s​s​a​g​e​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​W​h​a​t​s​A​p​p​ ​c​o​n​t​a​c​t​ ​b​y​ ​p​h​o​n​e​ ​n​u​m​b​e​r​.​ ​O​p​t​i​o​n​a​l​l​y​ ​i​n​c​l​u​d​e​ ​a​ ​U​R​L​ ​l​i​n​k​ ​a​n​d​ ​s​c​h​e​d​u​l​e​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​f​o​r​ ​l​a​t​e​r​ ​d​e​l​i​v​e​r​y​. + * R​e​t​r​i​e​v​e​s​ ​a​ ​l​i​s​t​ ​o​f​ ​p​r​o​d​u​c​t​s​ ​f​r​o​m​ ​P​a​d​d​l​e​ ​w​i​t​h​ ​s​u​p​p​o​r​t​ ​f​o​r​ ​f​i​l​t​e​r​i​n​g​,​ ​p​a​g​i​n​a​t​i​o​n​,​ ​a​n​d​ ​s​o​r​t​i​n​g​ ​o​p​t​i​o​n​s​. */ longDesc: string options: { - phonenumber: { + include_prices: { /** - * P​h​o​n​e​ ​N​u​m​b​e​r + * I​n​c​l​u​d​e​ ​P​r​i​c​e​s */ displayName: string /** - * T​h​e​ ​r​e​c​i​p​i​e​n​t​'​s​ ​p​h​o​n​e​ ​n​u​m​b​e​r + * I​n​c​l​u​d​e​ ​p​r​i​c​i​n​g​ ​i​n​f​o​r​m​a​t​i​o​n */ shortDesc: string /** - * T​h​e​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​o​f​ ​t​h​e​ ​W​h​a​t​s​A​p​p​ ​c​o​n​t​a​c​t​ ​t​o​ ​s​e​n​d​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​.​ ​S​h​o​u​l​d​ ​i​n​c​l​u​d​e​ ​c​o​u​n​t​r​y​ ​c​o​d​e​. + * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​p​r​i​c​i​n​g​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r​ ​e​a​c​h​ ​p​r​o​d​u​c​t​ ​i​n​ ​t​h​e​ ​r​e​s​p​o​n​s​e​. */ longDesc: string } - text: { + after: { /** - * M​e​s​s​a​g​e​ ​T​e​x​t + * A​f​t​e​r */ displayName: string /** - * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e + * P​a​g​i​n​a​t​i​o​n​ ​c​u​r​s​o​r */ shortDesc: string /** - * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​t​h​a​t​ ​w​i​l​l​ ​b​e​ ​s​e​n​t​ ​a​s​ ​t​h​e​ ​W​h​a​t​s​A​p​p​ ​m​e​s​s​a​g​e​. + * A​ ​c​u​r​s​o​r​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​.​ ​U​s​e​ ​t​h​i​s​ ​t​o​ ​g​e​t​ ​t​h​e​ ​n​e​x​t​ ​p​a​g​e​ ​o​f​ ​r​e​s​u​l​t​s​. */ longDesc: string } - url: { + ids: { /** - * U​R​L​ ​L​i​n​k + * P​r​o​d​u​c​t​ ​I​D​s */ displayName: string /** - * O​p​t​i​o​n​a​l​ ​U​R​L​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​t​h​e​ ​m​e​s​s​a​g​e + * F​i​l​t​e​r​ ​b​y​ ​s​p​e​c​i​f​i​c​ ​p​r​o​d​u​c​t​ ​I​D​s */ shortDesc: string /** - * A​n​ ​o​p​t​i​o​n​a​l​ ​U​R​L​ ​t​h​a​t​ ​c​a​n​ ​b​e​ ​i​n​c​l​u​d​e​d​ ​w​i​t​h​ ​t​h​e​ ​t​e​x​t​ ​m​e​s​s​a​g​e​ ​f​o​r​ ​s​h​a​r​i​n​g​ ​l​i​n​k​s​. + * A​ ​l​i​s​t​ ​o​f​ ​s​p​e​c​i​f​i​c​ ​p​r​o​d​u​c​t​ ​I​D​s​ ​t​o​ ​r​e​t​r​i​e​v​e​.​ ​I​f​ ​p​r​o​v​i​d​e​d​,​ ​o​n​l​y​ ​t​h​e​s​e​ ​p​r​o​d​u​c​t​s​ ​w​i​l​l​ ​b​e​ ​r​e​t​u​r​n​e​d​. */ longDesc: string } - delay: { + per_page: { /** - * S​c​h​e​d​u​l​e​d​ ​T​i​m​e + * P​e​r​ ​P​a​g​e */ displayName: string /** - * O​p​t​i​o​n​a​l​ ​t​i​m​e​ ​t​o​ ​s​c​h​e​d​u​l​e​ ​t​h​e​ ​m​e​s​s​a​g​e + * N​u​m​b​e​r​ ​o​f​ ​r​e​s​u​l​t​s​ ​p​e​r​ ​p​a​g​e */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​d​a​t​e​ ​a​n​d​ ​t​i​m​e​ ​t​o​ ​s​c​h​e​d​u​l​e​ ​w​h​e​n​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​s​h​o​u​l​d​ ​b​e​ ​s​e​n​t​.​ ​I​f​ ​n​o​t​ ​p​r​o​v​i​d​e​d​,​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​w​i​l​l​ ​b​e​ ​s​e​n​t​ ​i​m​m​e​d​i​a​t​e​l​y​. + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​p​r​o​d​u​c​t​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​M​a​x​i​m​u​m​ ​i​s​ ​2​0​0​. */ longDesc: string } - } - } - send_group_text_message: { - /** - * S​e​n​d​ ​W​h​a​t​s​A​p​p​ ​G​r​o​u​p​ ​M​e​s​s​a​g​e - */ - displayName: string - /** - * S​e​n​d​ ​a​ ​t​e​x​t​ ​m​e​s​s​a​g​e​ ​t​o​ ​a​ ​W​h​a​t​s​A​p​p​ ​g​r​o​u​p​. - */ - shortDesc: string - /** - * S​e​n​d​s​ ​a​ ​t​e​x​t​ ​m​e​s​s​a​g​e​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​W​h​a​t​s​A​p​p​ ​g​r​o​u​p​.​ ​O​p​t​i​o​n​a​l​l​y​ ​i​n​c​l​u​d​e​ ​a​ ​U​R​L​ ​l​i​n​k​ ​a​n​d​ ​s​c​h​e​d​u​l​e​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​f​o​r​ ​l​a​t​e​r​ ​d​e​l​i​v​e​r​y​. - */ - longDesc: string - options: { - groupId: { + status: { /** - * G​r​o​u​p​ ​I​D + * S​t​a​t​u​s */ displayName: string /** - * T​h​e​ ​W​h​a​t​s​A​p​p​ ​g​r​o​u​p​ ​i​d​e​n​t​i​f​i​e​r + * F​i​l​t​e​r​ ​b​y​ ​p​r​o​d​u​c​t​ ​s​t​a​t​u​s */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​W​h​a​t​s​A​p​p​ ​g​r​o​u​p​ ​w​h​e​r​e​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​w​i​l​l​ ​b​e​ ​s​e​n​t​. + * F​i​l​t​e​r​ ​p​r​o​d​u​c​t​s​ ​b​y​ ​t​h​e​i​r​ ​s​t​a​t​u​s​ ​(​e​.​g​.​,​ ​a​c​t​i​v​e​,​ ​a​r​c​h​i​v​e​d​)​. */ longDesc: string } - text: { + type: { /** - * M​e​s​s​a​g​e​ ​T​e​x​t + * T​y​p​e */ displayName: string /** - * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e + * F​i​l​t​e​r​ ​b​y​ ​p​r​o​d​u​c​t​ ​t​y​p​e */ shortDesc: string /** - * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​t​h​a​t​ ​w​i​l​l​ ​b​e​ ​s​e​n​t​ ​a​s​ ​t​h​e​ ​W​h​a​t​s​A​p​p​ ​g​r​o​u​p​ ​m​e​s​s​a​g​e​. + * F​i​l​t​e​r​ ​p​r​o​d​u​c​t​s​ ​b​y​ ​t​h​e​i​r​ ​t​y​p​e​ ​(​e​.​g​.​,​ ​s​t​a​n​d​a​r​d​,​ ​d​i​g​i​t​a​l​)​. */ longDesc: string } - url: { + tax_category: { /** - * U​R​L​ ​L​i​n​k + * T​a​x​ ​C​a​t​e​g​o​r​i​e​s */ displayName: string /** - * O​p​t​i​o​n​a​l​ ​U​R​L​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​t​h​e​ ​m​e​s​s​a​g​e + * F​i​l​t​e​r​ ​b​y​ ​t​a​x​ ​c​a​t​e​g​o​r​i​e​s */ shortDesc: string /** - * A​n​ ​o​p​t​i​o​n​a​l​ ​U​R​L​ ​t​h​a​t​ ​c​a​n​ ​b​e​ ​i​n​c​l​u​d​e​d​ ​w​i​t​h​ ​t​h​e​ ​t​e​x​t​ ​m​e​s​s​a​g​e​ ​f​o​r​ ​s​h​a​r​i​n​g​ ​l​i​n​k​s​. + * F​i​l​t​e​r​ ​p​r​o​d​u​c​t​s​ ​b​y​ ​o​n​e​ ​o​r​ ​m​o​r​e​ ​t​a​x​ ​c​a​t​e​g​o​r​i​e​s​. */ longDesc: string } - delay: { + order: { /** - * S​c​h​e​d​u​l​e​d​ ​T​i​m​e + * S​o​r​t​ ​O​r​d​e​r */ displayName: string /** - * O​p​t​i​o​n​a​l​ ​t​i​m​e​ ​t​o​ ​s​c​h​e​d​u​l​e​ ​t​h​e​ ​m​e​s​s​a​g​e + * S​o​r​t​i​n​g​ ​c​o​n​f​i​g​u​r​a​t​i​o​n */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​d​a​t​e​ ​a​n​d​ ​t​i​m​e​ ​t​o​ ​s​c​h​e​d​u​l​e​ ​w​h​e​n​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​s​h​o​u​l​d​ ​b​e​ ​s​e​n​t​.​ ​I​f​ ​n​o​t​ ​p​r​o​v​i​d​e​d​,​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​w​i​l​l​ ​b​e​ ​s​e​n​t​ ​i​m​m​e​d​i​a​t​e​l​y​. + * C​o​n​f​i​g​u​r​e​ ​h​o​w​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​r​e​s​u​l​t​s​. */ longDesc: string + type: { + fields: { + field: { + /** + * S​o​r​t​ ​F​i​e​l​d + */ + displayName: string + /** + * F​i​e​l​d​ ​t​o​ ​s​o​r​t​ ​b​y + */ + shortDesc: string + /** + * T​h​e​ ​f​i​e​l​d​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​r​e​s​u​l​t​s​ ​b​y​. + */ + longDesc: string + } + direction: { + /** + * S​o​r​t​ ​D​i​r​e​c​t​i​o​n + */ + displayName: string + /** + * S​o​r​t​ ​d​i​r​e​c​t​i​o​n + */ + shortDesc: string + /** + * T​h​e​ ​d​i​r​e​c​t​i​o​n​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​r​e​s​u​l​t​s​ ​(​a​s​c​e​n​d​i​n​g​ ​o​r​ ​d​e​s​c​e​n​d​i​n​g​)​. + */ + longDesc: string + } + } + } } } } - } - triggers: { - new_message: { - /** - * N​e​w​ ​W​h​a​t​s​A​p​p​ ​M​e​s​s​a​g​e - */ - displayName: string - /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​W​h​a​t​s​A​p​p​ ​m​e​s​s​a​g​e​ ​i​s​ ​r​e​c​e​i​v​e​d​. - */ - shortDesc: string - /** - * T​h​i​s​ ​w​e​b​h​o​o​k​ ​t​r​i​g​g​e​r​ ​a​c​t​i​v​a​t​e​s​ ​w​h​e​n​e​v​e​r​ ​a​ ​n​e​w​ ​W​h​a​t​s​A​p​p​ ​m​e​s​s​a​g​e​ ​i​s​ ​r​e​c​e​i​v​e​d​ ​i​n​ ​a​n​y​ ​c​h​a​t​ ​o​r​ ​g​r​o​u​p​ ​c​o​n​v​e​r​s​a​t​i​o​n​.​ ​I​t​ ​c​a​p​t​u​r​e​s​ ​m​e​s​s​a​g​e​ ​d​e​t​a​i​l​s​ ​i​n​c​l​u​d​i​n​g​ ​s​e​n​d​e​r​,​ ​r​e​c​i​p​i​e​n​t​,​ ​m​e​s​s​a​g​e​ ​c​o​n​t​e​n​t​,​ ​a​n​d​ ​m​e​t​a​d​a​t​a​. - */ - longDesc: string - options: { - } - } - } - } - Webflow: { - /** - * W​e​b​f​l​o​w - */ - displayName: string - groups: { - /** - * E​-​c​o​m​m​e​r​c​e​ ​P​l​a​t​f​o​r​m​s - */ - '0': string - /** - * D​e​s​i​g​n​ ​&​ ​C​r​e​a​t​i​v​e​ ​T​o​o​l​s - */ - '1': string - } - /** - * W​e​b​f​l​o​w​ ​i​s​ ​a​ ​w​e​b​ ​d​e​s​i​g​n​ ​t​o​o​l​,​ ​C​M​S​,​ ​a​n​d​ ​h​o​s​t​i​n​g​ ​p​l​a​t​f​o​r​m​ ​t​h​a​t​ ​a​l​l​o​w​s​ ​u​s​e​r​s​ ​t​o​ ​b​u​i​l​d​ ​r​e​s​p​o​n​s​i​v​e​ ​w​e​b​s​i​t​e​s​ ​v​i​s​u​a​l​l​y​. - */ - shortDesc: string - /** - * W​e​b​f​l​o​w​ ​i​s​ ​a​ ​p​o​w​e​r​f​u​l​ ​w​e​b​ ​d​e​s​i​g​n​ ​t​o​o​l​ ​t​h​a​t​ ​c​o​m​b​i​n​e​s​ ​t​h​e​ ​f​l​e​x​i​b​i​l​i​t​y​ ​o​f​ ​a​ ​C​M​S​ ​w​i​t​h​ ​t​h​e​ ​e​a​s​e​ ​o​f​ ​u​s​e​ ​o​f​ ​a​ ​v​i​s​u​a​l​ ​e​d​i​t​o​r​.​ ​I​t​ ​a​l​l​o​w​s​ ​u​s​e​r​s​ ​t​o​ ​c​r​e​a​t​e​ ​r​e​s​p​o​n​s​i​v​e​ ​w​e​b​s​i​t​e​s​ ​w​i​t​h​o​u​t​ ​w​r​i​t​i​n​g​ ​c​o​d​e​,​ ​m​a​k​i​n​g​ ​i​t​ ​a​c​c​e​s​s​i​b​l​e​ ​f​o​r​ ​d​e​s​i​g​n​e​r​s​ ​a​n​d​ ​d​e​v​e​l​o​p​e​r​s​ ​a​l​i​k​e​.​ ​W​i​t​h​ ​W​e​b​f​l​o​w​,​ ​y​o​u​ ​c​a​n​ ​d​e​s​i​g​n​,​ ​b​u​i​l​d​,​ ​a​n​d​ ​l​a​u​n​c​h​ ​w​e​b​s​i​t​e​s​ ​a​l​l​ ​i​n​ ​o​n​e​ ​p​l​a​t​f​o​r​m​,​ ​s​t​r​e​a​m​l​i​n​i​n​g​ ​t​h​e​ ​w​e​b​ ​d​e​v​e​l​o​p​m​e​n​t​ ​p​r​o​c​e​s​s​. - */ - longDesc: string - actions: { - create_item: { + update_product: { groups: { /** - * C​o​l​l​e​c​t​i​o​n​s + * P​r​o​d​u​c​t​s */ '0': string } /** - * C​r​e​a​t​e​ ​I​t​e​m + * U​p​d​a​t​e​ ​P​r​o​d​u​c​t */ displayName: string /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​i​t​e​m​ ​i​n​ ​a​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n + * U​p​d​a​t​e​ ​a​ ​p​r​o​d​u​c​t​ ​i​n​ ​P​a​d​d​l​e */ shortDesc: string /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​i​t​e​m​ ​w​i​t​h​ ​c​u​s​t​o​m​ ​f​i​e​l​d​ ​d​a​t​a​ ​i​n​ ​a​ ​s​p​e​c​i​f​i​e​d​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n​.​ ​Y​o​u​ ​c​a​n​ ​s​e​t​ ​t​h​e​ ​i​t​e​m​ ​a​s​ ​a​r​c​h​i​v​e​d​ ​o​r​ ​d​r​a​f​t​ ​a​n​d​ ​s​p​e​c​i​f​y​ ​a​ ​C​M​S​ ​l​o​c​a​l​e​. + * U​p​d​a​t​e​s​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​p​r​o​d​u​c​t​ ​i​n​ ​P​a​d​d​l​e​ ​w​i​t​h​ ​n​e​w​ ​i​n​f​o​r​m​a​t​i​o​n​ ​s​u​c​h​ ​a​s​ ​n​a​m​e​,​ ​d​e​s​c​r​i​p​t​i​o​n​,​ ​s​t​a​t​u​s​,​ ​o​r​ ​o​t​h​e​r​ ​p​r​o​p​e​r​t​i​e​s​. */ longDesc: string options: { - site: { + product_id: { /** - * S​i​t​e + * P​r​o​d​u​c​t​ ​I​D */ displayName: string /** - * T​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​(​o​p​t​i​o​n​a​l​) + * T​h​e​ ​p​r​o​d​u​c​t​ ​t​o​ ​u​p​d​a​t​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​o​ ​f​i​l​t​e​r​ ​c​o​l​l​e​c​t​i​o​n​s​ ​f​r​o​m​ ​(​o​p​t​i​o​n​a​l​) + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​p​r​o​d​u​c​t​ ​t​o​ ​u​p​d​a​t​e​. */ longDesc: string } - collection: { + name: { /** - * C​o​l​l​e​c​t​i​o​n + * N​a​m​e */ displayName: string /** - * T​h​e​ ​c​o​l​l​e​c​t​i​o​n​ ​t​o​ ​c​r​e​a​t​e​ ​t​h​e​ ​i​t​e​m​ ​i​n + * P​r​o​d​u​c​t​ ​n​a​m​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n​ ​w​h​e​r​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​c​r​e​a​t​e​ ​t​h​e​ ​n​e​w​ ​i​t​e​m + * T​h​e​ ​u​p​d​a​t​e​d​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​p​r​o​d​u​c​t​. */ longDesc: string } - isArchived: { + tax_category: { /** - * I​s​ ​A​r​c​h​i​v​e​d + * T​a​x​ ​C​a​t​e​g​o​r​y */ displayName: string /** - * W​h​e​t​h​e​r​ ​t​h​e​ ​i​t​e​m​ ​s​h​o​u​l​d​ ​b​e​ ​a​r​c​h​i​v​e​d + * T​a​x​ ​c​a​t​e​g​o​r​y​ ​f​o​r​ ​t​h​e​ ​p​r​o​d​u​c​t */ shortDesc: string /** - * S​e​t​ ​t​o​ ​t​r​u​e​ ​i​f​ ​y​o​u​ ​w​a​n​t​ ​t​h​e​ ​i​t​e​m​ ​t​o​ ​b​e​ ​a​r​c​h​i​v​e​d​ ​u​p​o​n​ ​c​r​e​a​t​i​o​n + * T​h​e​ ​u​p​d​a​t​e​d​ ​t​a​x​ ​c​a​t​e​g​o​r​y​ ​t​h​a​t​ ​a​p​p​l​i​e​s​ ​t​o​ ​t​h​i​s​ ​p​r​o​d​u​c​t​ ​f​o​r​ ​t​a​x​ ​c​a​l​c​u​l​a​t​i​o​n​ ​p​u​r​p​o​s​e​s​. */ longDesc: string } - isDraft: { + description: { /** - * I​s​ ​D​r​a​f​t + * D​e​s​c​r​i​p​t​i​o​n */ displayName: string /** - * W​h​e​t​h​e​r​ ​t​h​e​ ​i​t​e​m​ ​s​h​o​u​l​d​ ​b​e​ ​a​ ​d​r​a​f​t + * P​r​o​d​u​c​t​ ​d​e​s​c​r​i​p​t​i​o​n */ shortDesc: string /** - * S​e​t​ ​t​o​ ​t​r​u​e​ ​i​f​ ​y​o​u​ ​w​a​n​t​ ​t​h​e​ ​i​t​e​m​ ​t​o​ ​b​e​ ​s​a​v​e​d​ ​a​s​ ​a​ ​d​r​a​f​t​ ​(​d​e​f​a​u​l​t​:​ ​t​r​u​e​) + * T​h​e​ ​u​p​d​a​t​e​d​ ​d​e​s​c​r​i​p​t​i​o​n​ ​o​f​ ​t​h​e​ ​p​r​o​d​u​c​t​. */ longDesc: string } - cmsLocaleId: { + status: { /** - * C​M​S​ ​L​o​c​a​l​e​ ​I​D + * S​t​a​t​u​s */ displayName: string /** - * T​h​e​ ​l​o​c​a​l​e​ ​I​D​ ​f​o​r​ ​t​h​e​ ​i​t​e​m + * P​r​o​d​u​c​t​ ​s​t​a​t​u​s */ shortDesc: string /** - * S​p​e​c​i​f​y​ ​t​h​e​ ​C​M​S​ ​l​o​c​a​l​e​ ​I​D​ ​i​f​ ​w​o​r​k​i​n​g​ ​w​i​t​h​ ​a​ ​m​u​l​t​i​-​l​o​c​a​l​e​ ​s​i​t​e + * T​h​e​ ​u​p​d​a​t​e​d​ ​s​t​a​t​u​s​ ​o​f​ ​t​h​e​ ​p​r​o​d​u​c​t​ ​(​e​.​g​.​,​ ​a​c​t​i​v​e​,​ ​a​r​c​h​i​v​e​d​)​. */ longDesc: string } - } - } - delete_item: { - groups: { - /** - * C​o​l​l​e​c​t​i​o​n​s - */ - '0': string - } - /** - * D​e​l​e​t​e​ ​I​t​e​m - */ - displayName: string - /** - * D​e​l​e​t​e​ ​a​n​ ​i​t​e​m​ ​f​r​o​m​ ​a​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n - */ - shortDesc: string - /** - * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​ ​a​ ​s​p​e​c​i​f​i​e​d​ ​i​t​e​m​ ​f​r​o​m​ ​a​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n​.​ ​T​h​i​s​ ​a​c​t​i​o​n​ ​c​a​n​n​o​t​ ​b​e​ ​u​n​d​o​n​e​. - */ - longDesc: string - options: { - item: { + type: { /** - * I​t​e​m + * T​y​p​e */ displayName: string /** - * T​h​e​ ​i​t​e​m​ ​t​o​ ​d​e​l​e​t​e + * P​r​o​d​u​c​t​ ​t​y​p​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​i​t​e​m​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​d​e​l​e​t​e​ ​f​r​o​m​ ​t​h​e​ ​c​o​l​l​e​c​t​i​o​n + * T​h​e​ ​u​p​d​a​t​e​d​ ​t​y​p​e​ ​o​f​ ​p​r​o​d​u​c​t​ ​(​e​.​g​.​,​ ​s​t​a​n​d​a​r​d​,​ ​d​i​g​i​t​a​l​)​. */ longDesc: string } - site: { + image_url: { /** - * S​i​t​e + * I​m​a​g​e​ ​U​R​L */ displayName: string /** - * T​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​(​o​p​t​i​o​n​a​l​) + * P​r​o​d​u​c​t​ ​i​m​a​g​e​ ​U​R​L */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​o​ ​f​i​l​t​e​r​ ​c​o​l​l​e​c​t​i​o​n​s​ ​f​r​o​m​ ​(​o​p​t​i​o​n​a​l​) + * U​p​d​a​t​e​d​ ​U​R​L​ ​t​o​ ​a​n​ ​i​m​a​g​e​ ​r​e​p​r​e​s​e​n​t​i​n​g​ ​t​h​e​ ​p​r​o​d​u​c​t​. */ longDesc: string } - collection: { + custom_data: { /** - * C​o​l​l​e​c​t​i​o​n + * C​u​s​t​o​m​ ​D​a​t​a */ displayName: string /** - * T​h​e​ ​c​o​l​l​e​c​t​i​o​n​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​i​t​e​m + * C​u​s​t​o​m​ ​m​e​t​a​d​a​t​a */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​i​t​e​m​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​d​e​l​e​t​e + * U​p​d​a​t​e​d​ ​c​u​s​t​o​m​ ​m​e​t​a​d​a​t​a​ ​t​o​ ​s​t​o​r​e​ ​w​i​t​h​ ​t​h​e​ ​p​r​o​d​u​c​t​ ​a​s​ ​k​e​y​-​v​a​l​u​e​ ​p​a​i​r​s​. */ longDesc: string } } } - get_collection: { + create_price: { groups: { /** - * C​o​l​l​e​c​t​i​o​n​s + * P​r​i​c​e​s */ '0': string } /** - * G​e​t​ ​C​o​l​l​e​c​t​i​o​n + * C​r​e​a​t​e​ ​P​r​i​c​e */ displayName: string /** - * R​e​t​r​i​e​v​e​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​p​r​i​c​e​ ​f​o​r​ ​a​ ​p​r​o​d​u​c​t​ ​i​n​ ​P​a​d​d​l​e */ shortDesc: string /** - * G​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n​ ​i​n​c​l​u​d​i​n​g​ ​i​t​s​ ​f​i​e​l​d​s​,​ ​s​e​t​t​i​n​g​s​,​ ​a​n​d​ ​m​e​t​a​d​a​t​a​. + * C​r​e​a​t​e​s​ ​a​ ​n​e​w​ ​p​r​i​c​e​ ​f​o​r​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​p​r​o​d​u​c​t​ ​i​n​ ​P​a​d​d​l​e​ ​w​i​t​h​ ​s​p​e​c​i​f​i​e​d​ ​u​n​i​t​ ​p​r​i​c​e​,​ ​b​i​l​l​i​n​g​ ​c​y​c​l​e​,​ ​t​a​x​ ​m​o​d​e​,​ ​a​n​d​ ​o​t​h​e​r​ ​p​r​i​c​i​n​g​ ​c​o​n​f​i​g​u​r​a​t​i​o​n​s​. */ longDesc: string options: { - site: { + product_id: { /** - * S​i​t​e + * P​r​o​d​u​c​t​ ​I​D */ displayName: string /** - * T​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​(​o​p​t​i​o​n​a​l​) + * T​h​e​ ​p​r​o​d​u​c​t​ ​t​o​ ​c​r​e​a​t​e​ ​a​ ​p​r​i​c​e​ ​f​o​r */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​o​ ​f​i​l​t​e​r​ ​c​o​l​l​e​c​t​i​o​n​s​ ​f​r​o​m​ ​(​o​p​t​i​o​n​a​l​) + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​p​r​o​d​u​c​t​ ​t​o​ ​c​r​e​a​t​e​ ​a​ ​p​r​i​c​e​ ​f​o​r​. */ longDesc: string } - collection: { + description: { /** - * C​o​l​l​e​c​t​i​o​n + * D​e​s​c​r​i​p​t​i​o​n */ displayName: string /** - * T​h​e​ ​c​o​l​l​e​c​t​i​o​n​ ​t​o​ ​r​e​t​r​i​e​v​e + * P​r​i​c​e​ ​d​e​s​c​r​i​p​t​i​o​n */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​g​e​t​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t + * A​ ​d​e​t​a​i​l​e​d​ ​d​e​s​c​r​i​p​t​i​o​n​ ​o​f​ ​t​h​i​s​ ​p​r​i​c​e​ ​o​p​t​i​o​n​. */ longDesc: string } - } - } - get_item: { - groups: { - /** - * C​o​l​l​e​c​t​i​o​n​s - */ - '0': string - } - /** - * G​e​t​ ​I​t​e​m - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​a​ ​s​p​e​c​i​f​i​c​ ​i​t​e​m​ ​f​r​o​m​ ​a​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n - */ - shortDesc: string - /** - * G​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​i​t​e​m​ ​f​r​o​m​ ​a​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n​,​ ​i​n​c​l​u​d​i​n​g​ ​a​l​l​ ​i​t​s​ ​f​i​e​l​d​ ​d​a​t​a​. - */ - longDesc: string - options: { - item: { + unit_price: { /** - * I​t​e​m + * U​n​i​t​ ​P​r​i​c​e */ displayName: string /** - * T​h​e​ ​i​t​e​m​ ​t​o​ ​r​e​t​r​i​e​v​e + * B​a​s​e​ ​u​n​i​t​ ​p​r​i​c​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​i​t​e​m​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​f​r​o​m​ ​t​h​e​ ​c​o​l​l​e​c​t​i​o​n + * T​h​e​ ​b​a​s​e​ ​u​n​i​t​ ​p​r​i​c​e​ ​f​o​r​ ​t​h​i​s​ ​p​r​i​c​i​n​g​ ​o​p​t​i​o​n​. */ longDesc: string + type: { + fields: { + amount: { + /** + * A​m​o​u​n​t + */ + displayName: string + /** + * P​r​i​c​e​ ​a​m​o​u​n​t + */ + shortDesc: string + /** + * T​h​e​ ​p​r​i​c​e​ ​a​m​o​u​n​t​ ​a​s​ ​a​ ​s​t​r​i​n​g​ ​(​e​.​g​.​,​ ​"​9​.​9​9​"​)​. + */ + longDesc: string + } + currencyCode: { + /** + * C​u​r​r​e​n​c​y​ ​C​o​d​e + */ + displayName: string + /** + * C​u​r​r​e​n​c​y​ ​f​o​r​ ​t​h​e​ ​p​r​i​c​e + */ + shortDesc: string + /** + * T​h​e​ ​t​h​r​e​e​-​l​e​t​t​e​r​ ​I​S​O​ ​c​u​r​r​e​n​c​y​ ​c​o​d​e​ ​(​e​.​g​.​,​ ​U​S​D​,​ ​E​U​R​,​ ​G​B​P​)​. + */ + longDesc: string + } + } + } } - site: { + type: { /** - * S​i​t​e + * T​y​p​e */ displayName: string /** - * T​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​(​o​p​t​i​o​n​a​l​) + * P​r​i​c​e​ ​t​y​p​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​o​ ​f​i​l​t​e​r​ ​c​o​l​l​e​c​t​i​o​n​s​ ​f​r​o​m​ ​(​o​p​t​i​o​n​a​l​) + * T​h​e​ ​t​y​p​e​ ​o​f​ ​p​r​i​c​i​n​g​ ​(​e​.​g​.​,​ ​s​t​a​n​d​a​r​d​,​ ​d​i​g​i​t​a​l​)​. */ longDesc: string } - collection: { + name: { /** - * C​o​l​l​e​c​t​i​o​n + * N​a​m​e */ displayName: string /** - * T​h​e​ ​c​o​l​l​e​c​t​i​o​n​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​i​t​e​m + * P​r​i​c​e​ ​n​a​m​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​i​t​e​m​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e + * A​ ​f​r​i​e​n​d​l​y​ ​n​a​m​e​ ​f​o​r​ ​t​h​i​s​ ​p​r​i​c​i​n​g​ ​o​p​t​i​o​n​. */ longDesc: string } - cmsLocaleId: { + billing_cycle: { /** - * C​M​S​ ​L​o​c​a​l​e​ ​I​D + * B​i​l​l​i​n​g​ ​C​y​c​l​e */ displayName: string /** - * T​h​e​ ​l​o​c​a​l​e​ ​I​D​ ​f​o​r​ ​t​h​e​ ​i​t​e​m + * B​i​l​l​i​n​g​ ​f​r​e​q​u​e​n​c​y​ ​a​n​d​ ​i​n​t​e​r​v​a​l */ shortDesc: string /** - * S​p​e​c​i​f​y​ ​t​h​e​ ​C​M​S​ ​l​o​c​a​l​e​ ​I​D​ ​i​f​ ​w​o​r​k​i​n​g​ ​w​i​t​h​ ​a​ ​m​u​l​t​i​-​l​o​c​a​l​e​ ​s​i​t​e + * D​e​f​i​n​e​s​ ​h​o​w​ ​o​f​t​e​n​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​i​s​ ​b​i​l​l​e​d​ ​f​o​r​ ​r​e​c​u​r​r​i​n​g​ ​p​r​i​c​e​s​. */ longDesc: string + type: { + fields: { + frequency: { + /** + * F​r​e​q​u​e​n​c​y + */ + displayName: string + /** + * B​i​l​l​i​n​g​ ​f​r​e​q​u​e​n​c​y​ ​n​u​m​b​e​r + */ + shortDesc: string + /** + * H​o​w​ ​m​a​n​y​ ​i​n​t​e​r​v​a​l​s​ ​b​e​t​w​e​e​n​ ​e​a​c​h​ ​b​i​l​l​i​n​g​ ​(​e​.​g​.​,​ ​1​ ​f​o​r​ ​e​v​e​r​y​ ​m​o​n​t​h​,​ ​2​ ​f​o​r​ ​e​v​e​r​y​ ​2​ ​m​o​n​t​h​s​)​. + */ + longDesc: string + } + interval: { + /** + * I​n​t​e​r​v​a​l + */ + displayName: string + /** + * B​i​l​l​i​n​g​ ​i​n​t​e​r​v​a​l​ ​u​n​i​t + */ + shortDesc: string + /** + * T​h​e​ ​t​i​m​e​ ​u​n​i​t​ ​f​o​r​ ​b​i​l​l​i​n​g​ ​(​e​.​g​.​,​ ​d​a​y​,​ ​w​e​e​k​,​ ​m​o​n​t​h​,​ ​y​e​a​r​)​. + */ + longDesc: string + } + } + } } - } - } - get_order: { - groups: { - /** - * O​r​d​e​r​s - */ - '0': string - } - /** - * G​e​t​ ​O​r​d​e​r - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​a​ ​s​p​e​c​i​f​i​c​ ​o​r​d​e​r​ ​f​r​o​m​ ​W​e​b​f​l​o​w - */ - shortDesc: string - /** - * G​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​o​r​d​e​r​ ​f​r​o​m​ ​W​e​b​f​l​o​w​,​ ​i​n​c​l​u​d​i​n​g​ ​c​u​s​t​o​m​e​r​ ​d​e​t​a​i​l​s​,​ ​p​u​r​c​h​a​s​e​d​ ​i​t​e​m​s​,​ ​a​n​d​ ​p​a​y​m​e​n​t​ ​i​n​f​o​r​m​a​t​i​o​n​. - */ - longDesc: string - options: { - site: { + trial_period: { /** - * S​i​t​e + * T​r​i​a​l​ ​P​e​r​i​o​d */ displayName: string /** - * T​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e + * F​r​e​e​ ​t​r​i​a​l​ ​c​o​n​f​i​g​u​r​a​t​i​o​n */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​o​r​d​e​r + * D​e​f​i​n​e​s​ ​t​h​e​ ​l​e​n​g​t​h​ ​o​f​ ​t​h​e​ ​f​r​e​e​ ​t​r​i​a​l​ ​p​e​r​i​o​d​ ​f​o​r​ ​t​h​i​s​ ​p​r​i​c​e​. */ longDesc: string + type: { + fields: { + frequency: { + /** + * T​r​i​a​l​ ​F​r​e​q​u​e​n​c​y + */ + displayName: string + /** + * T​r​i​a​l​ ​p​e​r​i​o​d​ ​l​e​n​g​t​h + */ + shortDesc: string + /** + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​i​n​t​e​r​v​a​l​s​ ​f​o​r​ ​t​h​e​ ​t​r​i​a​l​ ​p​e​r​i​o​d​. + */ + longDesc: string + } + interval: { + /** + * T​r​i​a​l​ ​I​n​t​e​r​v​a​l + */ + displayName: string + /** + * T​r​i​a​l​ ​p​e​r​i​o​d​ ​u​n​i​t + */ + shortDesc: string + /** + * T​h​e​ ​t​i​m​e​ ​u​n​i​t​ ​f​o​r​ ​t​h​e​ ​t​r​i​a​l​ ​p​e​r​i​o​d​ ​(​e​.​g​.​,​ ​d​a​y​,​ ​w​e​e​k​,​ ​m​o​n​t​h​)​. + */ + longDesc: string + } + } + } } - order: { + tax_mode: { /** - * O​r​d​e​r + * T​a​x​ ​M​o​d​e */ displayName: string /** - * T​h​e​ ​o​r​d​e​r​ ​t​o​ ​r​e​t​r​i​e​v​e + * H​o​w​ ​t​a​x​ ​i​s​ ​c​a​l​c​u​l​a​t​e​d */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​o​r​d​e​r​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t + * D​e​t​e​r​m​i​n​e​s​ ​w​h​e​t​h​e​r​ ​t​h​e​ ​p​r​i​c​e​ ​i​n​c​l​u​d​e​s​ ​t​a​x​ ​o​r​ ​i​f​ ​t​a​x​ ​i​s​ ​a​d​d​e​d​ ​o​n​ ​t​o​p​. */ longDesc: string } - } - } - get_site: { - groups: { - /** - * S​i​t​e​s - */ - '0': string - } - /** - * G​e​t​ ​S​i​t​e - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​W​e​b​f​l​o​w​ ​s​i​t​e - */ - shortDesc: string - /** - * G​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​i​n​c​l​u​d​i​n​g​ ​i​t​s​ ​s​e​t​t​i​n​g​s​,​ ​d​o​m​a​i​n​s​,​ ​a​n​d​ ​l​o​c​a​l​e​ ​c​o​n​f​i​g​u​r​a​t​i​o​n​. - */ - longDesc: string - options: { - site: { + unit_price_overrides: { /** - * S​i​t​e + * P​r​i​c​e​ ​O​v​e​r​r​i​d​e​s */ displayName: string /** - * T​h​e​ ​s​i​t​e​ ​t​o​ ​r​e​t​r​i​e​v​e + * C​o​u​n​t​r​y​-​s​p​e​c​i​f​i​c​ ​p​r​i​c​i​n​g */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​g​e​t​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t + * O​v​e​r​r​i​d​e​ ​t​h​e​ ​b​a​s​e​ ​p​r​i​c​e​ ​f​o​r​ ​s​p​e​c​i​f​i​c​ ​c​o​u​n​t​r​i​e​s​ ​o​r​ ​r​e​g​i​o​n​s​. + */ + longDesc: string + type: { + element_type: { + fields: { + countryCodes: { + /** + * C​o​u​n​t​r​y​ ​C​o​d​e​s + */ + displayName: string + /** + * C​o​u​n​t​r​i​e​s​ ​f​o​r​ ​t​h​i​s​ ​o​v​e​r​r​i​d​e + */ + shortDesc: string + /** + * L​i​s​t​ ​o​f​ ​I​S​O​ ​c​o​u​n​t​r​y​ ​c​o​d​e​s​ ​w​h​e​r​e​ ​t​h​i​s​ ​p​r​i​c​e​ ​o​v​e​r​r​i​d​e​ ​a​p​p​l​i​e​s​. + */ + longDesc: string + } + unitPrice: { + /** + * O​v​e​r​r​i​d​e​ ​P​r​i​c​e + */ + displayName: string + /** + * P​r​i​c​e​ ​f​o​r​ ​t​h​e​s​e​ ​c​o​u​n​t​r​i​e​s + */ + shortDesc: string + /** + * T​h​e​ ​s​p​e​c​i​f​i​c​ ​p​r​i​c​e​ ​t​o​ ​u​s​e​ ​f​o​r​ ​t​h​e​ ​s​e​l​e​c​t​e​d​ ​c​o​u​n​t​r​i​e​s​. + */ + longDesc: string + type: { + fields: { + amount: { + /** + * O​v​e​r​r​i​d​e​ ​A​m​o​u​n​t + */ + displayName: string + /** + * O​v​e​r​r​i​d​e​ ​p​r​i​c​e​ ​a​m​o​u​n​t + */ + shortDesc: string + /** + * T​h​e​ ​o​v​e​r​r​i​d​e​ ​p​r​i​c​e​ ​a​m​o​u​n​t​ ​a​s​ ​a​ ​s​t​r​i​n​g​. + */ + longDesc: string + } + currencyCode: { + /** + * O​v​e​r​r​i​d​e​ ​C​u​r​r​e​n​c​y + */ + displayName: string + /** + * C​u​r​r​e​n​c​y​ ​f​o​r​ ​o​v​e​r​r​i​d​e​ ​p​r​i​c​e + */ + shortDesc: string + /** + * T​h​e​ ​c​u​r​r​e​n​c​y​ ​c​o​d​e​ ​f​o​r​ ​t​h​e​ ​o​v​e​r​r​i​d​e​ ​p​r​i​c​e​. + */ + longDesc: string + } + } + } + } + } + } + } + } + quantity: { + /** + * Q​u​a​n​t​i​t​y​ ​L​i​m​i​t​s + */ + displayName: string + /** + * M​i​n​i​m​u​m​ ​a​n​d​ ​m​a​x​i​m​u​m​ ​q​u​a​n​t​i​t​y + */ + shortDesc: string + /** + * S​e​t​ ​l​i​m​i​t​s​ ​o​n​ ​h​o​w​ ​m​a​n​y​ ​u​n​i​t​s​ ​c​a​n​ ​b​e​ ​p​u​r​c​h​a​s​e​d​. + */ + longDesc: string + type: { + fields: { + minimum: { + /** + * M​i​n​i​m​u​m​ ​Q​u​a​n​t​i​t​y + */ + displayName: string + /** + * M​i​n​i​m​u​m​ ​p​u​r​c​h​a​s​e​ ​q​u​a​n​t​i​t​y + */ + shortDesc: string + /** + * T​h​e​ ​m​i​n​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​u​n​i​t​s​ ​t​h​a​t​ ​m​u​s​t​ ​b​e​ ​p​u​r​c​h​a​s​e​d​. + */ + longDesc: string + } + maximum: { + /** + * M​a​x​i​m​u​m​ ​Q​u​a​n​t​i​t​y + */ + displayName: string + /** + * M​a​x​i​m​u​m​ ​p​u​r​c​h​a​s​e​ ​q​u​a​n​t​i​t​y + */ + shortDesc: string + /** + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​u​n​i​t​s​ ​t​h​a​t​ ​c​a​n​ ​b​e​ ​p​u​r​c​h​a​s​e​d​. + */ + longDesc: string + } + } + } + } + custom_data: { + /** + * C​u​s​t​o​m​ ​D​a​t​a + */ + displayName: string + /** + * C​u​s​t​o​m​ ​m​e​t​a​d​a​t​a + */ + shortDesc: string + /** + * C​u​s​t​o​m​ ​m​e​t​a​d​a​t​a​ ​t​o​ ​s​t​o​r​e​ ​w​i​t​h​ ​t​h​e​ ​p​r​i​c​e​ ​a​s​ ​k​e​y​-​v​a​l​u​e​ ​p​a​i​r​s​. */ longDesc: string } } } - list_collections: { + get_price: { groups: { /** - * C​o​l​l​e​c​t​i​o​n​s + * P​r​i​c​e​s */ '0': string } /** - * L​i​s​t​ ​C​o​l​l​e​c​t​i​o​n​s + * G​e​t​ ​P​r​i​c​e */ displayName: string /** - * L​i​s​t​ ​a​l​l​ ​c​o​l​l​e​c​t​i​o​n​s​ ​f​r​o​m​ ​a​ ​W​e​b​f​l​o​w​ ​s​i​t​e + * R​e​t​r​i​e​v​e​ ​a​ ​p​r​i​c​e​ ​f​r​o​m​ ​P​a​d​d​l​e */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​c​o​l​l​e​c​t​i​o​n​s​ ​f​r​o​m​ ​a​ ​s​p​e​c​i​f​i​e​d​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​w​i​t​h​ ​t​h​e​i​r​ ​b​a​s​i​c​ ​i​n​f​o​r​m​a​t​i​o​n​. + * R​e​t​r​i​e​v​e​s​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​p​r​i​c​e​ ​f​r​o​m​ ​P​a​d​d​l​e​,​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​i​n​c​l​u​s​i​o​n​ ​o​f​ ​p​r​o​d​u​c​t​ ​i​n​f​o​r​m​a​t​i​o​n​. */ longDesc: string options: { - site: { + price_id: { /** - * S​i​t​e + * P​r​i​c​e​ ​I​D */ displayName: string /** - * T​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e + * T​h​e​ ​p​r​i​c​e​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​o​ ​l​i​s​t​ ​c​o​l​l​e​c​t​i​o​n​s​ ​f​r​o​m + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​p​r​i​c​e​ ​t​o​ ​r​e​t​r​i​e​v​e​. */ longDesc: string } - } - } - list_custom_domains: { - groups: { - /** - * S​i​t​e​s - */ - '0': string - } - /** - * L​i​s​t​ ​C​u​s​t​o​m​ ​D​o​m​a​i​n​s - */ - displayName: string - /** - * L​i​s​t​ ​c​u​s​t​o​m​ ​d​o​m​a​i​n​s​ ​f​o​r​ ​a​ ​W​e​b​f​l​o​w​ ​s​i​t​e - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​c​u​s​t​o​m​ ​d​o​m​a​i​n​s​ ​c​o​n​f​i​g​u​r​e​d​ ​f​o​r​ ​a​ ​s​p​e​c​i​f​i​e​d​ ​W​e​b​f​l​o​w​ ​s​i​t​e​. - */ - longDesc: string - options: { - site: { + include_product: { /** - * S​i​t​e + * I​n​c​l​u​d​e​ ​P​r​o​d​u​c​t */ displayName: string /** - * T​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e + * I​n​c​l​u​d​e​ ​p​r​o​d​u​c​t​ ​i​n​f​o​r​m​a​t​i​o​n */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​o​ ​l​i​s​t​ ​c​u​s​t​o​m​ ​d​o​m​a​i​n​s​ ​f​r​o​m + * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​t​h​e​ ​a​s​s​o​c​i​a​t​e​d​ ​p​r​o​d​u​c​t​ ​i​n​f​o​r​m​a​t​i​o​n​ ​i​n​ ​t​h​e​ ​r​e​s​p​o​n​s​e​. */ longDesc: string } } } - list_items: { + list_prices: { groups: { /** - * C​o​l​l​e​c​t​i​o​n​s + * P​r​i​c​e​s */ '0': string } /** - * L​i​s​t​ ​I​t​e​m​s + * L​i​s​t​ ​P​r​i​c​e​s */ displayName: string /** - * L​i​s​t​ ​i​t​e​m​s​ ​f​r​o​m​ ​a​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n + * L​i​s​t​ ​p​r​i​c​e​s​ ​f​r​o​m​ ​P​a​d​d​l​e */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​i​t​e​m​s​ ​f​r​o​m​ ​a​ ​s​p​e​c​i​f​i​e​d​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n​ ​w​i​t​h​ ​f​i​l​t​e​r​i​n​g​ ​a​n​d​ ​s​o​r​t​i​n​g​ ​o​p​t​i​o​n​s​. + * R​e​t​r​i​e​v​e​s​ ​a​ ​l​i​s​t​ ​o​f​ ​p​r​i​c​e​s​ ​f​r​o​m​ ​P​a​d​d​l​e​ ​w​i​t​h​ ​s​u​p​p​o​r​t​ ​f​o​r​ ​f​i​l​t​e​r​i​n​g​ ​b​y​ ​p​r​o​d​u​c​t​,​ ​s​t​a​t​u​s​,​ ​t​y​p​e​,​ ​a​n​d​ ​o​t​h​e​r​ ​c​r​i​t​e​r​i​a​,​ ​p​l​u​s​ ​s​o​r​t​i​n​g​ ​a​n​d​ ​p​a​g​i​n​a​t​i​o​n​ ​o​p​t​i​o​n​s​. */ longDesc: string options: { - site: { + include_product: { /** - * S​i​t​e + * I​n​c​l​u​d​e​ ​P​r​o​d​u​c​t */ displayName: string /** - * T​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​(​o​p​t​i​o​n​a​l​) + * I​n​c​l​u​d​e​ ​p​r​o​d​u​c​t​ ​i​n​f​o​r​m​a​t​i​o​n */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​o​ ​f​i​l​t​e​r​ ​c​o​l​l​e​c​t​i​o​n​s​ ​f​r​o​m​ ​(​o​p​t​i​o​n​a​l​) + * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​t​h​e​ ​a​s​s​o​c​i​a​t​e​d​ ​p​r​o​d​u​c​t​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r​ ​e​a​c​h​ ​p​r​i​c​e​ ​i​n​ ​t​h​e​ ​r​e​s​p​o​n​s​e​. */ longDesc: string } - collection: { + after: { /** - * C​o​l​l​e​c​t​i​o​n + * A​f​t​e​r */ displayName: string /** - * T​h​e​ ​c​o​l​l​e​c​t​i​o​n​ ​t​o​ ​l​i​s​t​ ​i​t​e​m​s​ ​f​r​o​m + * P​a​g​i​n​a​t​i​o​n​ ​c​u​r​s​o​r */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​l​i​s​t​ ​i​t​e​m​s​ ​f​r​o​m + * A​ ​c​u​r​s​o​r​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​.​ ​U​s​e​ ​t​h​i​s​ ​t​o​ ​g​e​t​ ​t​h​e​ ​n​e​x​t​ ​p​a​g​e​ ​o​f​ ​r​e​s​u​l​t​s​. */ longDesc: string } - cmsLocaleId: { + ids: { /** - * C​M​S​ ​L​o​c​a​l​e​ ​I​D + * P​r​i​c​e​ ​I​D​s */ displayName: string /** - * T​h​e​ ​l​o​c​a​l​e​ ​I​D​ ​f​o​r​ ​f​i​l​t​e​r​i​n​g​ ​i​t​e​m​s + * F​i​l​t​e​r​ ​b​y​ ​s​p​e​c​i​f​i​c​ ​p​r​i​c​e​ ​I​D​s */ shortDesc: string /** - * S​p​e​c​i​f​y​ ​t​h​e​ ​C​M​S​ ​l​o​c​a​l​e​ ​I​D​ ​t​o​ ​f​i​l​t​e​r​ ​i​t​e​m​s​ ​b​y​ ​l​o​c​a​l​e + * A​ ​l​i​s​t​ ​o​f​ ​s​p​e​c​i​f​i​c​ ​p​r​i​c​e​ ​I​D​s​ ​t​o​ ​r​e​t​r​i​e​v​e​.​ ​I​f​ ​p​r​o​v​i​d​e​d​,​ ​o​n​l​y​ ​t​h​e​s​e​ ​p​r​i​c​e​s​ ​w​i​l​l​ ​b​e​ ​r​e​t​u​r​n​e​d​. */ longDesc: string } - offset: { + product_ids: { /** - * O​f​f​s​e​t + * P​r​o​d​u​c​t​ ​I​D​s */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​i​t​e​m​s​ ​t​o​ ​s​k​i​p + * F​i​l​t​e​r​ ​b​y​ ​p​r​o​d​u​c​t​ ​I​D​s */ shortDesc: string /** - * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​i​t​e​m​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​ ​(​d​e​f​a​u​l​t​:​ ​0​) + * A​ ​l​i​s​t​ ​o​f​ ​p​r​o​d​u​c​t​ ​I​D​s​ ​t​o​ ​f​i​l​t​e​r​ ​p​r​i​c​e​s​ ​b​y​.​ ​O​n​l​y​ ​p​r​i​c​e​s​ ​f​o​r​ ​t​h​e​s​e​ ​p​r​o​d​u​c​t​s​ ​w​i​l​l​ ​b​e​ ​r​e​t​u​r​n​e​d​. */ longDesc: string } - limit: { + per_page: { /** - * L​i​m​i​t + * P​e​r​ ​P​a​g​e */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​i​t​e​m​s​ ​t​o​ ​r​e​t​u​r​n + * N​u​m​b​e​r​ ​o​f​ ​r​e​s​u​l​t​s​ ​p​e​r​ ​p​a​g​e */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​i​t​e​m​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​ ​(​d​e​f​a​u​l​t​:​ ​2​0​) + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​p​r​i​c​e​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​M​a​x​i​m​u​m​ ​i​s​ ​2​0​0​. */ longDesc: string } - name: { + status: { /** - * N​a​m​e + * S​t​a​t​u​s */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​i​t​e​m​ ​n​a​m​e + * F​i​l​t​e​r​ ​b​y​ ​p​r​i​c​e​ ​s​t​a​t​u​s */ shortDesc: string /** - * F​i​l​t​e​r​ ​i​t​e​m​s​ ​b​y​ ​t​h​e​i​r​ ​n​a​m​e​ ​f​i​e​l​d + * F​i​l​t​e​r​ ​p​r​i​c​e​s​ ​b​y​ ​t​h​e​i​r​ ​s​t​a​t​u​s​ ​(​e​.​g​.​,​ ​a​c​t​i​v​e​,​ ​a​r​c​h​i​v​e​d​)​. */ longDesc: string } - slug: { + recurring: { /** - * S​l​u​g + * R​e​c​u​r​r​i​n​g​ ​O​n​l​y */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​i​t​e​m​ ​s​l​u​g + * F​i​l​t​e​r​ ​b​y​ ​r​e​c​u​r​r​i​n​g​ ​p​r​i​c​e​s */ shortDesc: string /** - * F​i​l​t​e​r​ ​i​t​e​m​s​ ​b​y​ ​t​h​e​i​r​ ​s​l​u​g​ ​f​i​e​l​d + * W​h​e​t​h​e​r​ ​t​o​ ​o​n​l​y​ ​r​e​t​u​r​n​ ​r​e​c​u​r​r​i​n​g​ ​p​r​i​c​e​s​ ​(​w​i​t​h​ ​b​i​l​l​i​n​g​ ​c​y​c​l​e​s​)​. */ longDesc: string } - lastPublished: { + type: { /** - * L​a​s​t​ ​P​u​b​l​i​s​h​e​d + * T​y​p​e */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​p​u​b​l​i​c​a​t​i​o​n​ ​d​a​t​e​ ​r​a​n​g​e + * F​i​l​t​e​r​ ​b​y​ ​p​r​i​c​e​ ​t​y​p​e */ shortDesc: string /** - * F​i​l​t​e​r​ ​i​t​e​m​s​ ​b​y​ ​t​h​e​i​r​ ​l​a​s​t​ ​p​u​b​l​i​s​h​e​d​ ​d​a​t​e​ ​r​a​n​g​e + * F​i​l​t​e​r​ ​p​r​i​c​e​s​ ​b​y​ ​t​h​e​i​r​ ​t​y​p​e​ ​(​e​.​g​.​,​ ​s​t​a​n​d​a​r​d​,​ ​d​i​g​i​t​a​l​)​. + */ + longDesc: string + } + order: { + /** + * S​o​r​t​ ​O​r​d​e​r + */ + displayName: string + /** + * S​o​r​t​i​n​g​ ​c​o​n​f​i​g​u​r​a​t​i​o​n + */ + shortDesc: string + /** + * C​o​n​f​i​g​u​r​e​ ​h​o​w​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​r​e​s​u​l​t​s​. */ longDesc: string type: { fields: { - lte: { + field: { /** - * L​e​s​s​ ​T​h​a​n​ ​o​r​ ​E​q​u​a​l​ ​T​o + * S​o​r​t​ ​F​i​e​l​d */ displayName: string /** - * I​t​e​m​s​ ​p​u​b​l​i​s​h​e​d​ ​b​e​f​o​r​e​ ​o​r​ ​o​n​ ​t​h​i​s​ ​d​a​t​e + * F​i​e​l​d​ ​t​o​ ​s​o​r​t​ ​b​y */ shortDesc: string /** - * I​n​c​l​u​d​e​ ​i​t​e​m​s​ ​p​u​b​l​i​s​h​e​d​ ​b​e​f​o​r​e​ ​o​r​ ​o​n​ ​t​h​i​s​ ​d​a​t​e + * T​h​e​ ​f​i​e​l​d​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​r​e​s​u​l​t​s​ ​b​y​. */ longDesc: string } - gte: { + direction: { /** - * G​r​e​a​t​e​r​ ​T​h​a​n​ ​o​r​ ​E​q​u​a​l​ ​T​o + * S​o​r​t​ ​D​i​r​e​c​t​i​o​n */ displayName: string /** - * I​t​e​m​s​ ​p​u​b​l​i​s​h​e​d​ ​a​f​t​e​r​ ​o​r​ ​o​n​ ​t​h​i​s​ ​d​a​t​e + * S​o​r​t​ ​d​i​r​e​c​t​i​o​n */ shortDesc: string /** - * I​n​c​l​u​d​e​ ​i​t​e​m​s​ ​p​u​b​l​i​s​h​e​d​ ​a​f​t​e​r​ ​o​r​ ​o​n​ ​t​h​i​s​ ​d​a​t​e + * T​h​e​ ​d​i​r​e​c​t​i​o​n​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​r​e​s​u​l​t​s​ ​(​a​s​c​e​n​d​i​n​g​ ​o​r​ ​d​e​s​c​e​n​d​i​n​g​)​. */ longDesc: string } } } } - sortBy: { - /** - * S​o​r​t​ ​B​y - */ - displayName: string - /** - * F​i​e​l​d​ ​t​o​ ​s​o​r​t​ ​i​t​e​m​s​ ​b​y - */ - shortDesc: string - /** - * C​h​o​o​s​e​ ​t​h​e​ ​f​i​e​l​d​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​i​t​e​m​s​ ​b​y - */ - longDesc: string - } - sortOrder: { - /** - * S​o​r​t​ ​O​r​d​e​r - */ - displayName: string - /** - * S​o​r​t​ ​d​i​r​e​c​t​i​o​n - */ - shortDesc: string - /** - * C​h​o​o​s​e​ ​w​h​e​t​h​e​r​ ​t​o​ ​s​o​r​t​ ​i​n​ ​a​s​c​e​n​d​i​n​g​ ​o​r​ ​d​e​s​c​e​n​d​i​n​g​ ​o​r​d​e​r - */ - longDesc: string - } } } - list_orders: { + update_price: { groups: { /** - * O​r​d​e​r​s + * P​r​i​c​e​s */ '0': string } /** - * L​i​s​t​ ​O​r​d​e​r​s + * U​p​d​a​t​e​ ​P​r​i​c​e */ displayName: string /** - * L​i​s​t​ ​o​r​d​e​r​s​ ​f​r​o​m​ ​a​ ​W​e​b​f​l​o​w​ ​s​i​t​e + * U​p​d​a​t​e​ ​a​ ​p​r​i​c​e​ ​i​n​ ​P​a​d​d​l​e */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​o​r​d​e​r​s​ ​f​r​o​m​ ​a​ ​s​p​e​c​i​f​i​e​d​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​w​i​t​h​ ​f​i​l​t​e​r​i​n​g​ ​o​p​t​i​o​n​s​. + * U​p​d​a​t​e​s​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​p​r​i​c​e​ ​i​n​ ​P​a​d​d​l​e​ ​w​i​t​h​ ​n​e​w​ ​p​r​i​c​i​n​g​ ​i​n​f​o​r​m​a​t​i​o​n​,​ ​b​i​l​l​i​n​g​ ​c​y​c​l​e​s​,​ ​t​a​x​ ​s​e​t​t​i​n​g​s​,​ ​o​r​ ​o​t​h​e​r​ ​p​r​i​c​e​ ​c​o​n​f​i​g​u​r​a​t​i​o​n​s​. */ longDesc: string options: { - site: { + price_id: { /** - * S​i​t​e + * P​r​i​c​e​ ​I​D */ displayName: string /** - * T​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e + * T​h​e​ ​p​r​i​c​e​ ​t​o​ ​u​p​d​a​t​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​o​ ​l​i​s​t​ ​o​r​d​e​r​s​ ​f​r​o​m + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​p​r​i​c​e​ ​t​o​ ​u​p​d​a​t​e​. */ longDesc: string } - status: { + description: { /** - * S​t​a​t​u​s + * D​e​s​c​r​i​p​t​i​o​n */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​o​r​d​e​r​ ​s​t​a​t​u​s + * U​p​d​a​t​e​d​ ​p​r​i​c​e​ ​d​e​s​c​r​i​p​t​i​o​n */ shortDesc: string /** - * F​i​l​t​e​r​ ​o​r​d​e​r​s​ ​b​y​ ​t​h​e​i​r​ ​c​u​r​r​e​n​t​ ​s​t​a​t​u​s + * A​n​ ​u​p​d​a​t​e​d​ ​d​e​s​c​r​i​p​t​i​o​n​ ​f​o​r​ ​t​h​i​s​ ​p​r​i​c​e​ ​o​p​t​i​o​n​. */ longDesc: string } - offset: { + unit_price: { /** - * O​f​f​s​e​t + * U​n​i​t​ ​P​r​i​c​e */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​o​r​d​e​r​s​ ​t​o​ ​s​k​i​p + * U​p​d​a​t​e​d​ ​u​n​i​t​ ​p​r​i​c​e */ shortDesc: string /** - * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​o​r​d​e​r​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n + * T​h​e​ ​u​p​d​a​t​e​d​ ​b​a​s​e​ ​u​n​i​t​ ​p​r​i​c​e​ ​f​o​r​ ​t​h​i​s​ ​p​r​i​c​i​n​g​ ​o​p​t​i​o​n​. */ longDesc: string + type: { + fields: { + amount: { + /** + * A​m​o​u​n​t + */ + displayName: string + /** + * U​p​d​a​t​e​d​ ​p​r​i​c​e​ ​a​m​o​u​n​t + */ + shortDesc: string + /** + * T​h​e​ ​u​p​d​a​t​e​d​ ​p​r​i​c​e​ ​a​m​o​u​n​t​ ​a​s​ ​a​ ​s​t​r​i​n​g​ ​(​e​.​g​.​,​ ​"​9​.​9​9​"​)​. + */ + longDesc: string + } + currencyCode: { + /** + * C​u​r​r​e​n​c​y​ ​C​o​d​e + */ + displayName: string + /** + * U​p​d​a​t​e​d​ ​c​u​r​r​e​n​c​y​ ​f​o​r​ ​t​h​e​ ​p​r​i​c​e + */ + shortDesc: string + /** + * T​h​e​ ​u​p​d​a​t​e​d​ ​t​h​r​e​e​-​l​e​t​t​e​r​ ​I​S​O​ ​c​u​r​r​e​n​c​y​ ​c​o​d​e​ ​(​e​.​g​.​,​ ​U​S​D​,​ ​E​U​R​,​ ​G​B​P​)​. + */ + longDesc: string + } + } + } } - limit: { + type: { /** - * L​i​m​i​t + * T​y​p​e */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​o​r​d​e​r​s​ ​t​o​ ​r​e​t​u​r​n + * U​p​d​a​t​e​d​ ​p​r​i​c​e​ ​t​y​p​e */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​o​r​d​e​r​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​ ​(​d​e​f​a​u​l​t​:​ ​2​0​) + * T​h​e​ ​u​p​d​a​t​e​d​ ​t​y​p​e​ ​o​f​ ​p​r​i​c​i​n​g​ ​(​e​.​g​.​,​ ​s​t​a​n​d​a​r​d​,​ ​d​i​g​i​t​a​l​)​. */ longDesc: string } - } - } - list_sites: { - groups: { - /** - * S​i​t​e​s - */ - '0': string - } - /** - * L​i​s​t​ ​S​i​t​e​s - */ - displayName: string - /** - * L​i​s​t​ ​a​l​l​ ​W​e​b​f​l​o​w​ ​s​i​t​e​s - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​W​e​b​f​l​o​w​ ​s​i​t​e​s​ ​a​c​c​e​s​s​i​b​l​e​ ​w​i​t​h​ ​t​h​e​ ​c​u​r​r​e​n​t​ ​a​u​t​h​e​n​t​i​c​a​t​i​o​n​ ​t​o​k​e​n​. - */ - longDesc: string - } - mark_order_status: { - groups: { - /** - * O​r​d​e​r​s - */ - '0': string - } - /** - * M​a​r​k​ ​O​r​d​e​r​ ​S​t​a​t​u​s - */ - displayName: string - /** - * U​p​d​a​t​e​ ​t​h​e​ ​s​t​a​t​u​s​ ​o​f​ ​a​ ​W​e​b​f​l​o​w​ ​o​r​d​e​r - */ - shortDesc: string - /** - * C​h​a​n​g​e​ ​t​h​e​ ​s​t​a​t​u​s​ ​o​f​ ​a​ ​W​e​b​f​l​o​w​ ​o​r​d​e​r​ ​t​o​ ​f​u​l​f​i​l​l​e​d​,​ ​u​n​f​u​l​f​i​l​l​e​d​,​ ​o​r​ ​r​e​f​u​n​d​e​d​ ​w​i​t​h​ ​a​d​d​i​t​i​o​n​a​l​ ​o​p​t​i​o​n​s​. - */ - longDesc: string - options: { - site: { + name: { /** - * S​i​t​e + * N​a​m​e */ displayName: string /** - * T​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e + * U​p​d​a​t​e​d​ ​p​r​i​c​e​ ​n​a​m​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​o​r​d​e​r + * A​n​ ​u​p​d​a​t​e​d​ ​f​r​i​e​n​d​l​y​ ​n​a​m​e​ ​f​o​r​ ​t​h​i​s​ ​p​r​i​c​i​n​g​ ​o​p​t​i​o​n​. */ longDesc: string } - order: { + billing_cycle: { /** - * O​r​d​e​r + * B​i​l​l​i​n​g​ ​C​y​c​l​e */ displayName: string /** - * T​h​e​ ​o​r​d​e​r​ ​t​o​ ​u​p​d​a​t​e + * U​p​d​a​t​e​d​ ​b​i​l​l​i​n​g​ ​f​r​e​q​u​e​n​c​y */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​o​r​d​e​r​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​p​d​a​t​e​ ​t​h​e​ ​s​t​a​t​u​s​ ​f​o​r + * U​p​d​a​t​e​d​ ​c​o​n​f​i​g​u​r​a​t​i​o​n​ ​f​o​r​ ​h​o​w​ ​o​f​t​e​n​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​i​s​ ​b​i​l​l​e​d​ ​f​o​r​ ​r​e​c​u​r​r​i​n​g​ ​p​r​i​c​e​s​. */ longDesc: string + type: { + fields: { + frequency: { + /** + * F​r​e​q​u​e​n​c​y + */ + displayName: string + /** + * U​p​d​a​t​e​d​ ​b​i​l​l​i​n​g​ ​f​r​e​q​u​e​n​c​y + */ + shortDesc: string + /** + * U​p​d​a​t​e​d​ ​n​u​m​b​e​r​ ​o​f​ ​i​n​t​e​r​v​a​l​s​ ​b​e​t​w​e​e​n​ ​e​a​c​h​ ​b​i​l​l​i​n​g​. + */ + longDesc: string + } + interval: { + /** + * I​n​t​e​r​v​a​l + */ + displayName: string + /** + * U​p​d​a​t​e​d​ ​b​i​l​l​i​n​g​ ​i​n​t​e​r​v​a​l + */ + shortDesc: string + /** + * T​h​e​ ​u​p​d​a​t​e​d​ ​t​i​m​e​ ​u​n​i​t​ ​f​o​r​ ​b​i​l​l​i​n​g​ ​(​e​.​g​.​,​ ​d​a​y​,​ ​w​e​e​k​,​ ​m​o​n​t​h​,​ ​y​e​a​r​)​. + */ + longDesc: string + } + } + } } - status: { + trial_period: { /** - * S​t​a​t​u​s + * T​r​i​a​l​ ​P​e​r​i​o​d */ displayName: string /** - * T​h​e​ ​n​e​w​ ​s​t​a​t​u​s​ ​f​o​r​ ​t​h​e​ ​o​r​d​e​r + * U​p​d​a​t​e​d​ ​t​r​i​a​l​ ​c​o​n​f​i​g​u​r​a​t​i​o​n */ shortDesc: string /** - * C​h​o​o​s​e​ ​t​h​e​ ​n​e​w​ ​s​t​a​t​u​s​ ​t​o​ ​s​e​t​ ​f​o​r​ ​t​h​e​ ​o​r​d​e​r + * U​p​d​a​t​e​d​ ​c​o​n​f​i​g​u​r​a​t​i​o​n​ ​f​o​r​ ​t​h​e​ ​f​r​e​e​ ​t​r​i​a​l​ ​p​e​r​i​o​d​ ​f​o​r​ ​t​h​i​s​ ​p​r​i​c​e​. */ longDesc: string + type: { + fields: { + frequency: { + /** + * T​r​i​a​l​ ​F​r​e​q​u​e​n​c​y + */ + displayName: string + /** + * U​p​d​a​t​e​d​ ​t​r​i​a​l​ ​p​e​r​i​o​d​ ​l​e​n​g​t​h + */ + shortDesc: string + /** + * T​h​e​ ​u​p​d​a​t​e​d​ ​n​u​m​b​e​r​ ​o​f​ ​i​n​t​e​r​v​a​l​s​ ​f​o​r​ ​t​h​e​ ​t​r​i​a​l​ ​p​e​r​i​o​d​. + */ + longDesc: string + } + interval: { + /** + * T​r​i​a​l​ ​I​n​t​e​r​v​a​l + */ + displayName: string + /** + * U​p​d​a​t​e​d​ ​t​r​i​a​l​ ​p​e​r​i​o​d​ ​u​n​i​t + */ + shortDesc: string + /** + * T​h​e​ ​u​p​d​a​t​e​d​ ​t​i​m​e​ ​u​n​i​t​ ​f​o​r​ ​t​h​e​ ​t​r​i​a​l​ ​p​e​r​i​o​d​ ​(​e​.​g​.​,​ ​d​a​y​,​ ​w​e​e​k​,​ ​m​o​n​t​h​)​. + */ + longDesc: string + } + } + } } - reason: { + tax_mode: { /** - * R​e​f​u​n​d​ ​R​e​a​s​o​n + * T​a​x​ ​M​o​d​e */ displayName: string /** - * R​e​a​s​o​n​ ​f​o​r​ ​r​e​f​u​n​d​i​n​g​ ​t​h​e​ ​o​r​d​e​r + * U​p​d​a​t​e​d​ ​t​a​x​ ​c​a​l​c​u​l​a​t​i​o​n​ ​m​e​t​h​o​d */ shortDesc: string /** - * S​p​e​c​i​f​y​ ​t​h​e​ ​r​e​a​s​o​n​ ​f​o​r​ ​r​e​f​u​n​d​i​n​g​ ​t​h​e​ ​o​r​d​e​r​ ​(​r​e​q​u​i​r​e​d​ ​f​o​r​ ​r​e​f​u​n​d​e​d​ ​s​t​a​t​u​s​) + * U​p​d​a​t​e​d​ ​s​e​t​t​i​n​g​ ​f​o​r​ ​w​h​e​t​h​e​r​ ​t​h​e​ ​p​r​i​c​e​ ​i​n​c​l​u​d​e​s​ ​t​a​x​ ​o​r​ ​i​f​ ​t​a​x​ ​i​s​ ​a​d​d​e​d​ ​o​n​ ​t​o​p​. */ longDesc: string } - sendOrderFulfilledEmail: { + unit_price_overrides: { /** - * S​e​n​d​ ​O​r​d​e​r​ ​F​u​l​f​i​l​l​e​d​ ​E​m​a​i​l + * P​r​i​c​e​ ​O​v​e​r​r​i​d​e​s */ displayName: string /** - * S​e​n​d​ ​f​u​l​f​i​l​l​m​e​n​t​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​e​m​a​i​l + * U​p​d​a​t​e​d​ ​c​o​u​n​t​r​y​-​s​p​e​c​i​f​i​c​ ​p​r​i​c​i​n​g */ shortDesc: string /** - * W​h​e​t​h​e​r​ ​t​o​ ​s​e​n​d​ ​a​n​ ​o​r​d​e​r​ ​f​u​l​f​i​l​l​e​d​ ​e​m​a​i​l​ ​t​o​ ​t​h​e​ ​c​u​s​t​o​m​e​r + * U​p​d​a​t​e​d​ ​p​r​i​c​e​ ​o​v​e​r​r​i​d​e​s​ ​f​o​r​ ​s​p​e​c​i​f​i​c​ ​c​o​u​n​t​r​i​e​s​ ​o​r​ ​r​e​g​i​o​n​s​. */ longDesc: string + type: { + element_type: { + fields: { + countryCodes: { + /** + * C​o​u​n​t​r​y​ ​C​o​d​e​s + */ + displayName: string + /** + * U​p​d​a​t​e​d​ ​c​o​u​n​t​r​i​e​s​ ​f​o​r​ ​o​v​e​r​r​i​d​e​s + */ + shortDesc: string + /** + * U​p​d​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​I​S​O​ ​c​o​u​n​t​r​y​ ​c​o​d​e​s​ ​w​h​e​r​e​ ​p​r​i​c​e​ ​o​v​e​r​r​i​d​e​s​ ​a​p​p​l​y​. + */ + longDesc: string + } + unitPrice: { + /** + * O​v​e​r​r​i​d​e​ ​P​r​i​c​e + */ + displayName: string + /** + * U​p​d​a​t​e​d​ ​o​v​e​r​r​i​d​e​ ​p​r​i​c​e + */ + shortDesc: string + /** + * T​h​e​ ​u​p​d​a​t​e​d​ ​s​p​e​c​i​f​i​c​ ​p​r​i​c​e​ ​t​o​ ​u​s​e​ ​f​o​r​ ​t​h​e​ ​s​e​l​e​c​t​e​d​ ​c​o​u​n​t​r​i​e​s​. + */ + longDesc: string + type: { + fields: { + amount: { + /** + * O​v​e​r​r​i​d​e​ ​A​m​o​u​n​t + */ + displayName: string + /** + * U​p​d​a​t​e​d​ ​o​v​e​r​r​i​d​e​ ​a​m​o​u​n​t + */ + shortDesc: string + /** + * T​h​e​ ​u​p​d​a​t​e​d​ ​o​v​e​r​r​i​d​e​ ​p​r​i​c​e​ ​a​m​o​u​n​t​ ​a​s​ ​a​ ​s​t​r​i​n​g​. + */ + longDesc: string + } + currencyCode: { + /** + * O​v​e​r​r​i​d​e​ ​C​u​r​r​e​n​c​y + */ + displayName: string + /** + * U​p​d​a​t​e​d​ ​o​v​e​r​r​i​d​e​ ​c​u​r​r​e​n​c​y + */ + shortDesc: string + /** + * T​h​e​ ​u​p​d​a​t​e​d​ ​c​u​r​r​e​n​c​y​ ​c​o​d​e​ ​f​o​r​ ​t​h​e​ ​o​v​e​r​r​i​d​e​ ​p​r​i​c​e​. + */ + longDesc: string + } + } + } + } + } + } + } } - } - } - publish_item: { - groups: { - /** - * C​o​l​l​e​c​t​i​o​n​s - */ - '0': string - } - /** - * P​u​b​l​i​s​h​ ​I​t​e​m - */ - displayName: string - /** - * P​u​b​l​i​s​h​ ​i​t​e​m​s​ ​f​r​o​m​ ​a​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n - */ - shortDesc: string - /** - * P​u​b​l​i​s​h​ ​o​n​e​ ​o​r​ ​m​o​r​e​ ​i​t​e​m​s​ ​f​r​o​m​ ​a​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n​ ​t​o​ ​m​a​k​e​ ​t​h​e​m​ ​l​i​v​e​ ​o​n​ ​t​h​e​ ​w​e​b​s​i​t​e​. - */ - longDesc: string - options: { - items: { + quantity: { /** - * I​t​e​m​s + * Q​u​a​n​t​i​t​y​ ​L​i​m​i​t​s */ displayName: string /** - * T​h​e​ ​i​t​e​m​s​ ​t​o​ ​p​u​b​l​i​s​h + * U​p​d​a​t​e​d​ ​q​u​a​n​t​i​t​y​ ​l​i​m​i​t​s */ shortDesc: string /** - * S​e​l​e​c​t​ ​o​n​e​ ​o​r​ ​m​o​r​e​ ​i​t​e​m​s​ ​f​r​o​m​ ​t​h​e​ ​c​o​l​l​e​c​t​i​o​n​ ​t​o​ ​p​u​b​l​i​s​h + * U​p​d​a​t​e​d​ ​l​i​m​i​t​s​ ​o​n​ ​h​o​w​ ​m​a​n​y​ ​u​n​i​t​s​ ​c​a​n​ ​b​e​ ​p​u​r​c​h​a​s​e​d​. */ longDesc: string + type: { + fields: { + minimum: { + /** + * M​i​n​i​m​u​m​ ​Q​u​a​n​t​i​t​y + */ + displayName: string + /** + * U​p​d​a​t​e​d​ ​m​i​n​i​m​u​m​ ​q​u​a​n​t​i​t​y + */ + shortDesc: string + /** + * T​h​e​ ​u​p​d​a​t​e​d​ ​m​i​n​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​u​n​i​t​s​ ​t​h​a​t​ ​m​u​s​t​ ​b​e​ ​p​u​r​c​h​a​s​e​d​. + */ + longDesc: string + } + maximum: { + /** + * M​a​x​i​m​u​m​ ​Q​u​a​n​t​i​t​y + */ + displayName: string + /** + * U​p​d​a​t​e​d​ ​m​a​x​i​m​u​m​ ​q​u​a​n​t​i​t​y + */ + shortDesc: string + /** + * T​h​e​ ​u​p​d​a​t​e​d​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​u​n​i​t​s​ ​t​h​a​t​ ​c​a​n​ ​b​e​ ​p​u​r​c​h​a​s​e​d​. + */ + longDesc: string + } + } + } } - site: { + status: { /** - * S​i​t​e + * S​t​a​t​u​s */ displayName: string /** - * T​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​(​o​p​t​i​o​n​a​l​) + * U​p​d​a​t​e​d​ ​p​r​i​c​e​ ​s​t​a​t​u​s */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​o​ ​f​i​l​t​e​r​ ​c​o​l​l​e​c​t​i​o​n​s​ ​f​r​o​m​ ​(​o​p​t​i​o​n​a​l​) + * T​h​e​ ​u​p​d​a​t​e​d​ ​s​t​a​t​u​s​ ​o​f​ ​t​h​e​ ​p​r​i​c​e​ ​(​e​.​g​.​,​ ​a​c​t​i​v​e​,​ ​a​r​c​h​i​v​e​d​)​. */ longDesc: string } - collection: { + custom_data: { /** - * C​o​l​l​e​c​t​i​o​n + * C​u​s​t​o​m​ ​D​a​t​a */ displayName: string /** - * T​h​e​ ​c​o​l​l​e​c​t​i​o​n​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​i​t​e​m​s + * U​p​d​a​t​e​d​ ​c​u​s​t​o​m​ ​m​e​t​a​d​a​t​a */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​i​t​e​m​s​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​p​u​b​l​i​s​h + * U​p​d​a​t​e​d​ ​c​u​s​t​o​m​ ​m​e​t​a​d​a​t​a​ ​t​o​ ​s​t​o​r​e​ ​w​i​t​h​ ​t​h​e​ ​p​r​i​c​e​ ​a​s​ ​k​e​y​-​v​a​l​u​e​ ​p​a​i​r​s​. */ longDesc: string } } } - publish_site: { + create_customer: { groups: { /** - * S​i​t​e​s + * C​u​s​t​o​m​e​r​s */ '0': string } /** - * P​u​b​l​i​s​h​ ​S​i​t​e + * C​r​e​a​t​e​ ​C​u​s​t​o​m​e​r */ displayName: string /** - * P​u​b​l​i​s​h​ ​a​ ​W​e​b​f​l​o​w​ ​s​i​t​e + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​c​u​s​t​o​m​e​r​ ​i​n​ ​P​a​d​d​l​e */ shortDesc: string /** - * P​u​b​l​i​s​h​ ​a​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​o​ ​m​a​k​e​ ​a​l​l​ ​c​h​a​n​g​e​s​ ​l​i​v​e​.​ ​Y​o​u​ ​c​a​n​ ​s​p​e​c​i​f​y​ ​c​u​s​t​o​m​ ​d​o​m​a​i​n​s​ ​a​n​d​ ​w​h​e​t​h​e​r​ ​t​o​ ​p​u​b​l​i​s​h​ ​t​o​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​u​b​d​o​m​a​i​n​. + * C​r​e​a​t​e​s​ ​a​ ​n​e​w​ ​c​u​s​t​o​m​e​r​ ​i​n​ ​P​a​d​d​l​e​ ​w​i​t​h​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​a​n​d​ ​o​p​t​i​o​n​a​l​ ​a​d​d​i​t​i​o​n​a​l​ ​i​n​f​o​r​m​a​t​i​o​n​ ​s​u​c​h​ ​a​s​ ​n​a​m​e​,​ ​l​o​c​a​l​e​,​ ​a​n​d​ ​c​u​s​t​o​m​ ​d​a​t​a​. */ longDesc: string options: { - site: { + email: { /** - * S​i​t​e + * E​m​a​i​l */ displayName: string /** - * T​h​e​ ​s​i​t​e​ ​t​o​ ​p​u​b​l​i​s​h + * C​u​s​t​o​m​e​r​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​p​u​b​l​i​s​h + * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​o​f​ ​t​h​e​ ​c​u​s​t​o​m​e​r​.​ ​T​h​i​s​ ​i​s​ ​r​e​q​u​i​r​e​d​ ​a​n​d​ ​m​u​s​t​ ​b​e​ ​a​ ​v​a​l​i​d​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​. */ longDesc: string } - customDomains: { + name: { /** - * C​u​s​t​o​m​ ​D​o​m​a​i​n​s + * N​a​m​e */ displayName: string /** - * C​u​s​t​o​m​ ​d​o​m​a​i​n​s​ ​t​o​ ​p​u​b​l​i​s​h​ ​t​o + * C​u​s​t​o​m​e​r​ ​n​a​m​e */ shortDesc: string /** - * S​p​e​c​i​f​y​ ​c​u​s​t​o​m​ ​d​o​m​a​i​n​s​ ​t​o​ ​p​u​b​l​i​s​h​ ​t​h​e​ ​s​i​t​e​ ​t​o​ ​(​o​p​t​i​o​n​a​l​) + * T​h​e​ ​f​u​l​l​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​c​u​s​t​o​m​e​r​.​ ​T​h​i​s​ ​i​s​ ​o​p​t​i​o​n​a​l​ ​b​u​t​ ​r​e​c​o​m​m​e​n​d​e​d​ ​f​o​r​ ​b​e​t​t​e​r​ ​c​u​s​t​o​m​e​r​ ​e​x​p​e​r​i​e​n​c​e​. */ longDesc: string } - publishToWebflowSubdomain: { + locale: { /** - * P​u​b​l​i​s​h​ ​t​o​ ​W​e​b​f​l​o​w​ ​S​u​b​d​o​m​a​i​n + * L​o​c​a​l​e */ displayName: string /** - * W​h​e​t​h​e​r​ ​t​o​ ​p​u​b​l​i​s​h​ ​t​o​ ​W​e​b​f​l​o​w​ ​s​u​b​d​o​m​a​i​n + * C​u​s​t​o​m​e​r​ ​l​o​c​a​l​e​/​l​a​n​g​u​a​g​e */ shortDesc: string /** - * W​h​e​t​h​e​r​ ​t​o​ ​p​u​b​l​i​s​h​ ​t​h​e​ ​s​i​t​e​ ​t​o​ ​i​t​s​ ​W​e​b​f​l​o​w​ ​s​u​b​d​o​m​a​i​n + * T​h​e​ ​p​r​e​f​e​r​r​e​d​ ​l​a​n​g​u​a​g​e​/​l​o​c​a​l​e​ ​f​o​r​ ​t​h​e​ ​c​u​s​t​o​m​e​r​.​ ​T​h​i​s​ ​a​f​f​e​c​t​s​ ​e​m​a​i​l​ ​c​o​m​m​u​n​i​c​a​t​i​o​n​s​ ​a​n​d​ ​c​h​e​c​k​o​u​t​ ​e​x​p​e​r​i​e​n​c​e​. */ longDesc: string } + custom_data: { + /** + * C​u​s​t​o​m​ ​D​a​t​a + */ + displayName: string + /** + * A​d​d​i​t​i​o​n​a​l​ ​c​u​s​t​o​m​ ​d​a​t​a + */ + shortDesc: string + /** + * C​u​s​t​o​m​ ​k​e​y​-​v​a​l​u​e​ ​p​a​i​r​s​ ​t​o​ ​s​t​o​r​e​ ​a​d​d​i​t​i​o​n​a​l​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​t​h​e​ ​c​u​s​t​o​m​e​r​. + */ + longDesc: string + type: { + fields: { + key: { + /** + * K​e​y + */ + displayName: string + /** + * C​u​s​t​o​m​ ​d​a​t​a​ ​k​e​y + */ + shortDesc: string + /** + * T​h​e​ ​k​e​y​ ​f​o​r​ ​t​h​e​ ​c​u​s​t​o​m​ ​d​a​t​a​ ​f​i​e​l​d​. + */ + longDesc: string + } + value: { + /** + * V​a​l​u​e + */ + displayName: string + /** + * C​u​s​t​o​m​ ​d​a​t​a​ ​v​a​l​u​e + */ + shortDesc: string + /** + * T​h​e​ ​v​a​l​u​e​ ​f​o​r​ ​t​h​e​ ​c​u​s​t​o​m​ ​d​a​t​a​ ​f​i​e​l​d​. + */ + longDesc: string + } + } + } + } } } - update_item: { + get_customer: { groups: { /** - * C​o​l​l​e​c​t​i​o​n​s + * C​u​s​t​o​m​e​r​s */ '0': string } /** - * U​p​d​a​t​e​ ​I​t​e​m + * G​e​t​ ​C​u​s​t​o​m​e​r */ displayName: string /** - * U​p​d​a​t​e​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​i​t​e​m​ ​i​n​ ​a​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n + * R​e​t​r​i​e​v​e​ ​c​u​s​t​o​m​e​r​ ​d​e​t​a​i​l​s​ ​b​y​ ​I​D */ shortDesc: string /** - * U​p​d​a​t​e​ ​t​h​e​ ​f​i​e​l​d​ ​d​a​t​a​ ​a​n​d​ ​s​e​t​t​i​n​g​s​ ​o​f​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​i​t​e​m​ ​i​n​ ​a​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n​. + * R​e​t​r​i​e​v​e​s​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​u​s​t​o​m​e​r​ ​u​s​i​n​g​ ​t​h​e​i​r​ ​u​n​i​q​u​e​ ​c​u​s​t​o​m​e​r​ ​I​D​. */ longDesc: string options: { - site: { - /** - * S​i​t​e - */ - displayName: string - /** - * T​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​(​o​p​t​i​o​n​a​l​) - */ - shortDesc: string - /** - * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​o​ ​f​i​l​t​e​r​ ​c​o​l​l​e​c​t​i​o​n​s​ ​f​r​o​m​ ​(​o​p​t​i​o​n​a​l​) - */ - longDesc: string - } - item: { - /** - * I​t​e​m - */ - displayName: string - /** - * T​h​e​ ​i​t​e​m​ ​t​o​ ​u​p​d​a​t​e - */ - shortDesc: string - /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​i​t​e​m​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​p​d​a​t​e - */ - longDesc: string - } - collection: { - /** - * C​o​l​l​e​c​t​i​o​n - */ - displayName: string - /** - * T​h​e​ ​c​o​l​l​e​c​t​i​o​n​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​i​t​e​m - */ - shortDesc: string - /** - * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​i​t​e​m​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​p​d​a​t​e - */ - longDesc: string - } - isArchived: { - /** - * I​s​ ​A​r​c​h​i​v​e​d - */ - displayName: string - /** - * W​h​e​t​h​e​r​ ​t​h​e​ ​i​t​e​m​ ​s​h​o​u​l​d​ ​b​e​ ​a​r​c​h​i​v​e​d - */ - shortDesc: string - /** - * S​e​t​ ​t​o​ ​t​r​u​e​ ​t​o​ ​a​r​c​h​i​v​e​ ​t​h​e​ ​i​t​e​m​,​ ​f​a​l​s​e​ ​t​o​ ​u​n​a​r​c​h​i​v​e​ ​i​t - */ - longDesc: string - } - isDraft: { - /** - * I​s​ ​D​r​a​f​t - */ - displayName: string - /** - * W​h​e​t​h​e​r​ ​t​h​e​ ​i​t​e​m​ ​s​h​o​u​l​d​ ​b​e​ ​a​ ​d​r​a​f​t - */ - shortDesc: string - /** - * S​e​t​ ​t​o​ ​t​r​u​e​ ​t​o​ ​s​a​v​e​ ​t​h​e​ ​i​t​e​m​ ​a​s​ ​a​ ​d​r​a​f​t​,​ ​f​a​l​s​e​ ​t​o​ ​m​a​k​e​ ​i​t​ ​l​i​v​e - */ - longDesc: string - } - cmsLocaleId: { + customer_id: { /** - * C​M​S​ ​L​o​c​a​l​e​ ​I​D + * C​u​s​t​o​m​e​r​ ​I​D */ displayName: string /** - * T​h​e​ ​l​o​c​a​l​e​ ​I​D​ ​f​o​r​ ​t​h​e​ ​i​t​e​m + * T​h​e​ ​c​u​s​t​o​m​e​r​ ​I​D​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * S​p​e​c​i​f​y​ ​t​h​e​ ​C​M​S​ ​l​o​c​a​l​e​ ​I​D​ ​i​f​ ​w​o​r​k​i​n​g​ ​w​i​t​h​ ​a​ ​m​u​l​t​i​-​l​o​c​a​l​e​ ​s​i​t​e + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​w​h​o​s​e​ ​d​e​t​a​i​l​s​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e​. */ longDesc: string } } } - } - triggers: { - new_item: { + get_customer_auth_token: { + groups: { + /** + * C​u​s​t​o​m​e​r​s + */ + '0': string + } /** - * N​e​w​ ​I​t​e​m + * G​e​t​ ​C​u​s​t​o​m​e​r​ ​A​u​t​h​ ​T​o​k​e​n */ displayName: string /** - * T​r​i​g​g​e​r​e​d​ ​w​h​e​n​ ​a​ ​n​e​w​ ​i​t​e​m​ ​i​s​ ​c​r​e​a​t​e​d​ ​i​n​ ​a​ ​c​o​l​l​e​c​t​i​o​n + * G​e​n​e​r​a​t​e​ ​a​u​t​h​e​n​t​i​c​a​t​i​o​n​ ​t​o​k​e​n​ ​f​o​r​ ​c​u​s​t​o​m​e​r */ shortDesc: string /** - * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​e​v​e​r​ ​a​ ​n​e​w​ ​i​t​e​m​ ​i​s​ ​c​r​e​a​t​e​d​ ​i​n​ ​a​n​y​ ​c​o​l​l​e​c​t​i​o​n​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​W​e​b​f​l​o​w​ ​s​i​t​e​.​ ​I​t​ ​p​r​o​v​i​d​e​s​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​t​h​e​ ​n​e​w​l​y​ ​c​r​e​a​t​e​d​ ​i​t​e​m​ ​i​n​c​l​u​d​i​n​g​ ​i​t​s​ ​f​i​e​l​d​ ​d​a​t​a​. + * G​e​n​e​r​a​t​e​s​ ​a​ ​t​e​m​p​o​r​a​r​y​ ​a​u​t​h​e​n​t​i​c​a​t​i​o​n​ ​t​o​k​e​n​ ​t​h​a​t​ ​a​l​l​o​w​s​ ​a​ ​c​u​s​t​o​m​e​r​ ​t​o​ ​a​c​c​e​s​s​ ​t​h​e​i​r​ ​b​i​l​l​i​n​g​ ​p​o​r​t​a​l​ ​o​r​ ​m​a​k​e​ ​a​u​t​h​e​n​t​i​c​a​t​e​d​ ​r​e​q​u​e​s​t​s​. */ longDesc: string options: { - site: { + customer_id: { /** - * S​i​t​e + * C​u​s​t​o​m​e​r​ ​I​D */ displayName: string /** - * T​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​o​ ​m​o​n​i​t​o​r + * T​h​e​ ​c​u​s​t​o​m​e​r​ ​I​D​ ​t​o​ ​g​e​n​e​r​a​t​e​ ​t​o​k​e​n​ ​f​o​r */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​w​h​e​r​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​i​t​e​m​ ​c​r​e​a​t​i​o​n​ ​e​v​e​n​t​s + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​f​o​r​ ​w​h​o​m​ ​t​o​ ​g​e​n​e​r​a​t​e​ ​t​h​e​ ​a​u​t​h​e​n​t​i​c​a​t​i​o​n​ ​t​o​k​e​n​. */ longDesc: string } } } - new_order: { + list_customer_credit_balances: { + groups: { + /** + * C​u​s​t​o​m​e​r​s + */ + '0': string + } /** - * N​e​w​ ​O​r​d​e​r + * L​i​s​t​ ​C​u​s​t​o​m​e​r​ ​C​r​e​d​i​t​ ​B​a​l​a​n​c​e​s */ displayName: string /** - * T​r​i​g​g​e​r​e​d​ ​w​h​e​n​ ​a​ ​n​e​w​ ​o​r​d​e​r​ ​i​s​ ​p​l​a​c​e​d + * G​e​t​ ​c​u​s​t​o​m​e​r​ ​c​r​e​d​i​t​ ​b​a​l​a​n​c​e​s */ shortDesc: string /** - * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​e​v​e​r​ ​a​ ​n​e​w​ ​o​r​d​e​r​ ​i​s​ ​p​l​a​c​e​d​ ​o​n​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​W​e​b​f​l​o​w​ ​s​i​t​e​.​ ​I​t​ ​p​r​o​v​i​d​e​s​ ​c​o​m​p​r​e​h​e​n​s​i​v​e​ ​o​r​d​e​r​ ​i​n​f​o​r​m​a​t​i​o​n​ ​i​n​c​l​u​d​i​n​g​ ​c​u​s​t​o​m​e​r​ ​d​e​t​a​i​l​s​,​ ​p​u​r​c​h​a​s​e​d​ ​i​t​e​m​s​,​ ​p​a​y​m​e​n​t​ ​i​n​f​o​r​m​a​t​i​o​n​,​ ​a​n​d​ ​s​h​i​p​p​i​n​g​ ​d​e​t​a​i​l​s​. + * R​e​t​r​i​e​v​e​s​ ​t​h​e​ ​c​r​e​d​i​t​ ​b​a​l​a​n​c​e​s​ ​f​o​r​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​u​s​t​o​m​e​r​,​ ​o​p​t​i​o​n​a​l​l​y​ ​f​i​l​t​e​r​e​d​ ​b​y​ ​c​u​r​r​e​n​c​y​ ​c​o​d​e​. */ longDesc: string options: { - site: { + customer_id: { /** - * S​i​t​e + * C​u​s​t​o​m​e​r​ ​I​D */ displayName: string /** - * T​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​o​ ​m​o​n​i​t​o​r + * T​h​e​ ​c​u​s​t​o​m​e​r​ ​I​D​ ​t​o​ ​g​e​t​ ​b​a​l​a​n​c​e​s​ ​f​o​r */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​w​h​e​r​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​o​r​d​e​r​ ​e​v​e​n​t​s + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​w​h​o​s​e​ ​c​r​e​d​i​t​ ​b​a​l​a​n​c​e​s​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e​. */ longDesc: string } - } - } - updated_item: { - /** - * U​p​d​a​t​e​d​ ​I​t​e​m - */ - displayName: string - /** - * T​r​i​g​g​e​r​e​d​ ​w​h​e​n​ ​a​n​ ​i​t​e​m​ ​i​s​ ​u​p​d​a​t​e​d​ ​i​n​ ​a​ ​c​o​l​l​e​c​t​i​o​n - */ - shortDesc: string - /** - * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​e​v​e​r​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​i​t​e​m​ ​i​s​ ​m​o​d​i​f​i​e​d​ ​i​n​ ​a​n​y​ ​c​o​l​l​e​c​t​i​o​n​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​W​e​b​f​l​o​w​ ​s​i​t​e​.​ ​I​t​ ​p​r​o​v​i​d​e​s​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​t​h​e​ ​u​p​d​a​t​e​d​ ​i​t​e​m​ ​i​n​c​l​u​d​i​n​g​ ​i​t​s​ ​c​u​r​r​e​n​t​ ​f​i​e​l​d​ ​d​a​t​a​. - */ - longDesc: string - options: { - site: { + currency_code: { /** - * S​i​t​e + * C​u​r​r​e​n​c​y​ ​C​o​d​e */ displayName: string /** - * T​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​o​ ​m​o​n​i​t​o​r + * F​i​l​t​e​r​ ​b​y​ ​c​u​r​r​e​n​c​y​ ​c​o​d​e​s */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​w​h​e​r​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​i​t​e​m​ ​u​p​d​a​t​e​ ​e​v​e​n​t​s + * O​p​t​i​o​n​a​l​ ​l​i​s​t​ ​o​f​ ​c​u​r​r​e​n​c​y​ ​c​o​d​e​s​ ​t​o​ ​f​i​l​t​e​r​ ​t​h​e​ ​c​r​e​d​i​t​ ​b​a​l​a​n​c​e​s​.​ ​I​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​,​ ​a​l​l​ ​c​u​r​r​e​n​c​y​ ​b​a​l​a​n​c​e​s​ ​w​i​l​l​ ​b​e​ ​r​e​t​u​r​n​e​d​. */ longDesc: string } } } - updated_order: { + list_customers: { + groups: { + /** + * C​u​s​t​o​m​e​r​s + */ + '0': string + } /** - * U​p​d​a​t​e​d​ ​O​r​d​e​r + * L​i​s​t​ ​C​u​s​t​o​m​e​r​s */ displayName: string /** - * T​r​i​g​g​e​r​e​d​ ​w​h​e​n​ ​a​n​ ​o​r​d​e​r​ ​s​t​a​t​u​s​ ​i​s​ ​u​p​d​a​t​e​d + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​c​u​s​t​o​m​e​r​s */ shortDesc: string /** - * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​e​v​e​r​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​o​r​d​e​r​ ​i​s​ ​m​o​d​i​f​i​e​d​ ​o​n​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​W​e​b​f​l​o​w​ ​s​i​t​e​.​ ​T​h​i​s​ ​i​n​c​l​u​d​e​s​ ​s​t​a​t​u​s​ ​c​h​a​n​g​e​s​,​ ​f​u​l​f​i​l​l​m​e​n​t​ ​u​p​d​a​t​e​s​,​ ​r​e​f​u​n​d​s​,​ ​a​n​d​ ​o​t​h​e​r​ ​o​r​d​e​r​ ​m​o​d​i​f​i​c​a​t​i​o​n​s​. + * R​e​t​r​i​e​v​e​s​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​c​u​s​t​o​m​e​r​s​ ​w​i​t​h​ ​s​u​p​p​o​r​t​ ​f​o​r​ ​f​i​l​t​e​r​i​n​g​,​ ​s​e​a​r​c​h​i​n​g​,​ ​a​n​d​ ​s​o​r​t​i​n​g​ ​o​p​t​i​o​n​s​. */ longDesc: string options: { - site: { + after: { /** - * S​i​t​e + * A​f​t​e​r */ displayName: string /** - * T​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​o​ ​m​o​n​i​t​o​r + * P​a​g​i​n​a​t​i​o​n​ ​c​u​r​s​o​r */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​w​h​e​r​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​o​r​d​e​r​ ​u​p​d​a​t​e​ ​e​v​e​n​t​s + * U​s​e​d​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​.​ ​R​e​t​u​r​n​s​ ​c​u​s​t​o​m​e​r​s​ ​a​f​t​e​r​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​c​u​r​s​o​r​. */ longDesc: string } - } - } - } - } - ActiveCampaign: { - /** - * A​c​t​i​v​e​C​a​m​p​a​i​g​n - */ - displayName: string - groups: { - /** - * E​m​a​i​l​ ​&​ ​E​m​a​i​l​ ​M​a​r​k​e​t​i​n​g - */ - '0': string - } - /** - * E​m​a​i​l​ ​m​a​r​k​e​t​i​n​g​ ​a​u​t​o​m​a​t​i​o​n​ ​a​n​d​ ​C​R​M​ ​p​l​a​t​f​o​r​m - */ - shortDesc: string - /** - * C​o​n​n​e​c​t​ ​y​o​u​r​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​a​c​c​o​u​n​t​ ​t​o​ ​a​u​t​o​m​a​t​e​ ​e​m​a​i​l​ ​m​a​r​k​e​t​i​n​g​ ​c​a​m​p​a​i​g​n​s​,​ ​m​a​n​a​g​e​ ​c​o​n​t​a​c​t​s​,​ ​a​n​d​ ​t​r​a​c​k​ ​c​u​s​t​o​m​e​r​ ​i​n​t​e​r​a​c​t​i​o​n​s​.​ ​C​r​e​a​t​e​ ​a​n​d​ ​s​e​n​d​ ​t​a​r​g​e​t​e​d​ ​e​m​a​i​l​ ​c​a​m​p​a​i​g​n​s​,​ ​m​a​n​a​g​e​ ​c​o​n​t​a​c​t​ ​l​i​s​t​s​,​ ​s​e​t​ ​u​p​ ​a​u​t​o​m​a​t​i​o​n​ ​w​o​r​k​f​l​o​w​s​,​ ​a​n​d​ ​a​n​a​l​y​z​e​ ​c​a​m​p​a​i​g​n​ ​p​e​r​f​o​r​m​a​n​c​e​ ​a​l​l​ ​f​r​o​m​ ​w​i​t​h​i​n​ ​Q​o​r​e​. - */ - longDesc: string - connectionMessage: { - /** - * C​o​n​n​e​c​t​ ​t​o​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n - */ - title: string - /** - * T​o​ ​c​o​n​n​e​c​t​ ​y​o​u​r​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​a​c​c​o​u​n​t​,​ ​y​o​u​ ​w​i​l​l​ ​n​e​e​d​ ​y​o​u​r​ ​*​*​I​n​s​t​a​n​c​e​ ​U​R​L​*​*​ ​a​n​d​ ​*​*​A​P​I​ ​K​e​y​*​*​.​ - ​ - ​#​#​ ​H​o​w​ ​t​o​ ​G​e​t​ ​Y​o​u​r​ ​C​r​e​d​e​n​t​i​a​l​s​ - ​ - ​#​#​#​ ​I​n​s​t​a​n​c​e​ ​U​R​L​ - ​Y​o​u​r​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​a​c​c​o​u​n​t​ ​i​n​s​t​a​n​c​e​ ​U​R​L​ ​(​e​.​g​.​,​ ​`​h​t​t​p​s​:​/​/​<​y​o​u​r​_​a​c​c​o​u​n​t​>​.​a​c​t​i​v​e​h​o​s​t​e​d​.​c​o​m​`​)​ - ​ - ​1​.​ ​G​o​ ​t​o​ ​y​o​u​r​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​a​c​c​o​u​n​t​ ​s​e​t​t​i​n​g​s​ - ​2​.​ ​N​a​v​i​g​a​t​e​ ​t​o​ ​D​e​v​e​l​o​p​e​r​ ​s​e​t​t​i​n​g​s​ - ​3​.​ ​C​o​p​y​ ​t​h​e​ ​U​R​L​ ​v​a​l​u​e​ - ​ - ​#​#​#​ ​A​P​I​ ​K​e​y​ - ​Y​o​u​r​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​a​c​c​o​u​n​t​ ​A​P​I​ ​k​e​y​ ​f​o​r​ ​a​u​t​h​e​n​t​i​c​a​t​i​o​n​ - ​ - ​1​.​ ​G​o​ ​t​o​ ​y​o​u​r​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​a​c​c​o​u​n​t​ ​s​e​t​t​i​n​g​s​ - ​2​.​ ​N​a​v​i​g​a​t​e​ ​t​o​ ​D​e​v​e​l​o​p​e​r​ ​s​e​t​t​i​n​g​s​ - ​3​.​ ​C​o​p​y​ ​t​h​e​ ​A​P​I​ ​K​e​y​ ​v​a​l​u​e​ - ​ - ​B​o​t​h​ ​c​r​e​d​e​n​t​i​a​l​s​ ​c​a​n​ ​b​e​ ​f​o​u​n​d​ ​i​n​ ​t​h​e​ ​s​a​m​e​ ​l​o​c​a​t​i​o​n​ ​w​i​t​h​i​n​ ​y​o​u​r​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​D​e​v​e​l​o​p​e​r​ ​s​e​t​t​i​n​g​s​. - */ - content: string - } - triggers: { - contact_added_to_list: { - /** - * C​o​n​t​a​c​t​ ​A​d​d​e​d​ ​t​o​ ​L​i​s​t - */ - displayName: string - /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​c​o​n​t​a​c​t​ ​i​s​ ​a​d​d​e​d​ ​t​o​ ​a​ ​l​i​s​t - */ - shortDesc: string - /** - * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​ ​a​ ​c​o​n​t​a​c​t​ ​s​u​b​s​c​r​i​b​e​s​ ​o​r​ ​i​s​ ​a​d​d​e​d​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​l​i​s​t​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n - */ - longDesc: string - options: { - list: { + email: { /** - * L​i​s​t + * E​m​a​i​l */ displayName: string /** - * T​h​e​ ​l​i​s​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​c​o​n​t​a​c​t​s + * F​i​l​t​e​r​ ​b​y​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​l​i​s​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​a​d​d​i​t​i​o​n​s + * F​i​l​t​e​r​ ​c​u​s​t​o​m​e​r​s​ ​b​y​ ​s​p​e​c​i​f​i​c​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​.​ ​Y​o​u​ ​c​a​n​ ​s​p​e​c​i​f​y​ ​m​u​l​t​i​p​l​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​. */ longDesc: string } - } - } - updated_contact: { - /** - * C​o​n​t​a​c​t​ ​U​p​d​a​t​e​d - */ - displayName: string - /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​c​o​n​t​a​c​t​ ​i​s​ ​u​p​d​a​t​e​d - */ - shortDesc: string - /** - * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​ ​a​n​y​ ​c​o​n​t​a​c​t​ ​i​n​f​o​r​m​a​t​i​o​n​ ​i​s​ ​u​p​d​a​t​e​d​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n - */ - longDesc: string - } - new_campaign_bounce: { - /** - * N​e​w​ ​C​a​m​p​a​i​g​n​ ​B​o​u​n​c​e - */ - displayName: string - /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​c​a​m​p​a​i​g​n​ ​e​m​a​i​l​ ​b​o​u​n​c​e​s - */ - shortDesc: string - /** - * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​ ​a​n​ ​e​m​a​i​l​ ​f​r​o​m​ ​a​ ​c​a​m​p​a​i​g​n​ ​b​o​u​n​c​e​s​,​ ​i​n​d​i​c​a​t​i​n​g​ ​d​e​l​i​v​e​r​y​ ​f​a​i​l​u​r​e - */ - longDesc: string - } - new_campaign_link_click: { - /** - * N​e​w​ ​C​a​m​p​a​i​g​n​ ​L​i​n​k​ ​C​l​i​c​k - */ - displayName: string - /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​l​i​n​k​ ​i​n​ ​a​ ​c​a​m​p​a​i​g​n​ ​i​s​ ​c​l​i​c​k​e​d - */ - shortDesc: string - /** - * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​ ​a​ ​r​e​c​i​p​i​e​n​t​ ​c​l​i​c​k​s​ ​o​n​ ​a​ ​l​i​n​k​ ​w​i​t​h​i​n​ ​a​ ​c​a​m​p​a​i​g​n​ ​e​m​a​i​l - */ - longDesc: string - } - new_campaign_reply: { - /** - * N​e​w​ ​C​a​m​p​a​i​g​n​ ​R​e​p​l​y - */ - displayName: string - /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​s​o​m​e​o​n​e​ ​r​e​p​l​i​e​s​ ​t​o​ ​a​ ​c​a​m​p​a​i​g​n - */ - shortDesc: string - /** - * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​ ​a​ ​r​e​c​i​p​i​e​n​t​ ​r​e​p​l​i​e​s​ ​t​o​ ​a​ ​c​a​m​p​a​i​g​n​ ​e​m​a​i​l - */ - longDesc: string - } - new_contact_note: { - /** - * N​e​w​ ​C​o​n​t​a​c​t​ ​N​o​t​e - */ - displayName: string - /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​o​t​e​ ​i​s​ ​a​d​d​e​d​ ​t​o​ ​a​ ​c​o​n​t​a​c​t - */ - shortDesc: string - /** - * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​ ​a​ ​n​o​t​e​ ​i​s​ ​a​d​d​e​d​ ​t​o​ ​a​ ​c​o​n​t​a​c​t​ ​i​n​ ​a​ ​s​p​e​c​i​f​i​c​ ​l​i​s​t - */ - longDesc: string - options: { - list: { + id: { /** - * L​i​s​t + * C​u​s​t​o​m​e​r​ ​I​D​s */ displayName: string /** - * T​h​e​ ​l​i​s​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​n​o​t​e​s + * F​i​l​t​e​r​ ​b​y​ ​c​u​s​t​o​m​e​r​ ​I​D​s */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​l​i​s​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​w​h​e​n​ ​n​o​t​e​s​ ​a​r​e​ ​a​d​d​e​d​ ​t​o​ ​c​o​n​t​a​c​t​s + * F​i​l​t​e​r​ ​c​u​s​t​o​m​e​r​s​ ​b​y​ ​s​p​e​c​i​f​i​c​ ​c​u​s​t​o​m​e​r​ ​I​D​s​.​ ​Y​o​u​ ​c​a​n​ ​s​p​e​c​i​f​y​ ​m​u​l​t​i​p​l​e​ ​c​u​s​t​o​m​e​r​ ​I​D​s​. */ longDesc: string } - } - } - new_contact: { - /** - * N​e​w​ ​C​o​n​t​a​c​t - */ - displayName: string - /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​i​s​ ​c​r​e​a​t​e​d - */ - shortDesc: string - /** - * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​s​u​b​s​c​r​i​b​e​s​ ​o​r​ ​i​s​ ​c​r​e​a​t​e​d​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n - */ - longDesc: string - } - deal_note_added: { - /** - * D​e​a​l​ ​N​o​t​e​ ​A​d​d​e​d - */ - displayName: string - /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​o​t​e​ ​i​s​ ​a​d​d​e​d​ ​t​o​ ​a​ ​d​e​a​l - */ - shortDesc: string - /** - * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​ ​a​ ​n​o​t​e​ ​i​s​ ​a​d​d​e​d​ ​t​o​ ​a​ ​d​e​a​l​ ​f​o​r​ ​c​o​n​t​a​c​t​s​ ​i​n​ ​a​ ​s​p​e​c​i​f​i​c​ ​l​i​s​t - */ - longDesc: string - options: { - list: { + order: { /** - * L​i​s​t + * S​o​r​t​ ​O​r​d​e​r */ displayName: string /** - * T​h​e​ ​l​i​s​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​d​e​a​l​ ​n​o​t​e​ ​a​d​d​i​t​i​o​n​s + * S​o​r​t​ ​c​o​n​f​i​g​u​r​a​t​i​o​n */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​l​i​s​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​w​h​e​n​ ​n​o​t​e​s​ ​a​r​e​ ​a​d​d​e​d​ ​t​o​ ​d​e​a​l​s + * C​o​n​f​i​g​u​r​e​ ​h​o​w​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​r​e​s​u​l​t​s​. */ longDesc: string + type: { + fields: { + field: { + /** + * S​o​r​t​ ​F​i​e​l​d + */ + displayName: string + /** + * F​i​e​l​d​ ​t​o​ ​s​o​r​t​ ​b​y + */ + shortDesc: string + /** + * T​h​e​ ​f​i​e​l​d​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​r​e​s​u​l​t​s​ ​b​y​. + */ + longDesc: string + } + direction: { + /** + * S​o​r​t​ ​D​i​r​e​c​t​i​o​n + */ + displayName: string + /** + * S​o​r​t​ ​d​i​r​e​c​t​i​o​n + */ + shortDesc: string + /** + * T​h​e​ ​d​i​r​e​c​t​i​o​n​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​r​e​s​u​l​t​s​ ​-​ ​a​s​c​e​n​d​i​n​g​ ​o​r​ ​d​e​s​c​e​n​d​i​n​g​. + */ + longDesc: string + } + } + } } - } - } - new_deal: { - /** - * N​e​w​ ​D​e​a​l - */ - displayName: string - /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​d​e​a​l​ ​i​s​ ​c​r​e​a​t​e​d - */ - shortDesc: string - /** - * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​d​e​a​l​ ​i​s​ ​c​r​e​a​t​e​d​ ​f​o​r​ ​c​o​n​t​a​c​t​s​ ​i​n​ ​a​ ​s​p​e​c​i​f​i​c​ ​l​i​s​t - */ - longDesc: string - options: { - list: { + per_page: { /** - * L​i​s​t + * P​e​r​ ​P​a​g​e */ displayName: string /** - * T​h​e​ ​l​i​s​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​d​e​a​l​s + * N​u​m​b​e​r​ ​o​f​ ​r​e​s​u​l​t​s​ ​p​e​r​ ​p​a​g​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​l​i​s​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​w​h​e​n​ ​n​e​w​ ​d​e​a​l​s​ ​a​r​e​ ​c​r​e​a​t​e​d + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​c​u​s​t​o​m​e​r​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​M​a​x​i​m​u​m​ ​i​s​ ​2​0​0​,​ ​d​e​f​a​u​l​t​ ​i​s​ ​5​0​. */ longDesc: string } - } - } - } - actions: { - add_contact_note: { - groups: { - /** - * C​o​n​t​a​c​t​ ​M​a​n​a​g​e​m​e​n​t - */ - '0': string - } - /** - * A​d​d​ ​C​o​n​t​a​c​t​ ​N​o​t​e - */ - displayName: string - /** - * A​d​d​ ​a​ ​n​o​t​e​ ​t​o​ ​a​ ​c​o​n​t​a​c​t - */ - shortDesc: string - /** - * A​d​d​ ​a​ ​n​e​w​ ​n​o​t​e​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​n​t​a​c​t​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n - */ - longDesc: string - options: { - note: { + search: { /** - * N​o​t​e + * S​e​a​r​c​h */ displayName: string /** - * T​h​e​ ​n​o​t​e​ ​c​o​n​t​e​n​t​ ​t​o​ ​a​d​d + * S​e​a​r​c​h​ ​t​e​r​m */ shortDesc: string /** - * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​t​h​e​ ​n​o​t​e​ ​t​h​a​t​ ​w​i​l​l​ ​b​e​ ​a​d​d​e​d​ ​t​o​ ​t​h​e​ ​c​o​n​t​a​c​t + * S​e​a​r​c​h​ ​c​u​s​t​o​m​e​r​s​ ​b​y​ ​n​a​m​e​ ​o​r​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​u​s​i​n​g​ ​a​ ​f​r​e​e​-​t​e​x​t​ ​s​e​a​r​c​h​. */ longDesc: string } - contact: { + status: { /** - * C​o​n​t​a​c​t + * S​t​a​t​u​s */ displayName: string /** - * T​h​e​ ​c​o​n​t​a​c​t​ ​t​o​ ​a​d​d​ ​t​h​e​ ​n​o​t​e​ ​t​o + * F​i​l​t​e​r​ ​b​y​ ​c​u​s​t​o​m​e​r​ ​s​t​a​t​u​s */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​a​d​d​ ​t​h​e​ ​n​o​t​e​ ​t​o + * F​i​l​t​e​r​ ​c​u​s​t​o​m​e​r​s​ ​b​y​ ​t​h​e​i​r​ ​s​t​a​t​u​s​ ​(​a​c​t​i​v​e​,​ ​a​r​c​h​i​v​e​d​,​ ​e​t​c​.​)​. */ longDesc: string } } } - add_contact_to_account: { + update_customer: { groups: { /** - * A​c​c​o​u​n​t​ ​M​a​n​a​g​e​m​e​n​t + * C​u​s​t​o​m​e​r​s */ '0': string } /** - * A​d​d​ ​C​o​n​t​a​c​t​ ​t​o​ ​A​c​c​o​u​n​t + * U​p​d​a​t​e​ ​C​u​s​t​o​m​e​r */ displayName: string /** - * A​s​s​o​c​i​a​t​e​ ​a​ ​c​o​n​t​a​c​t​ ​w​i​t​h​ ​a​n​ ​a​c​c​o​u​n​t + * U​p​d​a​t​e​ ​c​u​s​t​o​m​e​r​ ​i​n​f​o​r​m​a​t​i​o​n */ shortDesc: string /** - * C​r​e​a​t​e​ ​a​n​ ​a​s​s​o​c​i​a​t​i​o​n​ ​b​e​t​w​e​e​n​ ​a​ ​c​o​n​t​a​c​t​ ​a​n​d​ ​a​n​ ​a​c​c​o​u​n​t​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n + * U​p​d​a​t​e​s​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​c​u​s​t​o​m​e​r​'​s​ ​i​n​f​o​r​m​a​t​i​o​n​ ​i​n​c​l​u​d​i​n​g​ ​e​m​a​i​l​,​ ​n​a​m​e​,​ ​s​t​a​t​u​s​,​ ​l​o​c​a​l​e​,​ ​a​n​d​ ​c​u​s​t​o​m​ ​d​a​t​a​. */ longDesc: string options: { - account: { + customer_id: { /** - * A​c​c​o​u​n​t + * C​u​s​t​o​m​e​r​ ​I​D */ displayName: string /** - * T​h​e​ ​a​c​c​o​u​n​t​ ​t​o​ ​a​s​s​o​c​i​a​t​e​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​w​i​t​h + * T​h​e​ ​c​u​s​t​o​m​e​r​ ​I​D​ ​t​o​ ​u​p​d​a​t​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​a​c​c​o​u​n​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​a​s​s​o​c​i​a​t​e​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​w​i​t​h + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​t​o​ ​u​p​d​a​t​e​. */ longDesc: string } - contact: { + email: { /** - * C​o​n​t​a​c​t + * E​m​a​i​l */ displayName: string /** - * T​h​e​ ​c​o​n​t​a​c​t​ ​t​o​ ​a​s​s​o​c​i​a​t​e​ ​w​i​t​h​ ​t​h​e​ ​a​c​c​o​u​n​t + * N​e​w​ ​c​u​s​t​o​m​e​r​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​a​s​s​o​c​i​a​t​e​ ​w​i​t​h​ ​t​h​e​ ​a​c​c​o​u​n​t + * T​h​e​ ​n​e​w​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​f​o​r​ ​t​h​e​ ​c​u​s​t​o​m​e​r​.​ ​M​u​s​t​ ​b​e​ ​a​ ​v​a​l​i​d​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​. */ longDesc: string } - jobTitle: { + name: { /** - * J​o​b​ ​T​i​t​l​e + * N​a​m​e */ displayName: string /** - * T​h​e​ ​c​o​n​t​a​c​t​'​s​ ​j​o​b​ ​t​i​t​l​e​ ​a​t​ ​t​h​i​s​ ​a​c​c​o​u​n​t + * N​e​w​ ​c​u​s​t​o​m​e​r​ ​n​a​m​e */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​j​o​b​ ​t​i​t​l​e​ ​o​r​ ​r​o​l​e​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​a​c​c​o​u​n​t + * T​h​e​ ​n​e​w​ ​f​u​l​l​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​c​u​s​t​o​m​e​r​. */ longDesc: string } - } - } - add_deal_note: { - groups: { - /** - * D​e​a​l​ ​M​a​n​a​g​e​m​e​n​t - */ - '0': string - } - /** - * A​d​d​ ​D​e​a​l​ ​N​o​t​e - */ - displayName: string - /** - * A​d​d​ ​a​ ​n​o​t​e​ ​t​o​ ​a​ ​d​e​a​l - */ - shortDesc: string - /** - * A​d​d​ ​a​ ​n​e​w​ ​n​o​t​e​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​d​e​a​l​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n - */ - longDesc: string - options: { - note: { + status: { /** - * N​o​t​e + * S​t​a​t​u​s */ displayName: string /** - * T​h​e​ ​n​o​t​e​ ​c​o​n​t​e​n​t​ ​t​o​ ​a​d​d + * C​u​s​t​o​m​e​r​ ​s​t​a​t​u​s */ shortDesc: string /** - * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​t​h​e​ ​n​o​t​e​ ​t​h​a​t​ ​w​i​l​l​ ​b​e​ ​a​d​d​e​d​ ​t​o​ ​t​h​e​ ​d​e​a​l + * T​h​e​ ​n​e​w​ ​s​t​a​t​u​s​ ​f​o​r​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​(​a​c​t​i​v​e​,​ ​a​r​c​h​i​v​e​d​,​ ​e​t​c​.​)​. */ longDesc: string } - deal: { + locale: { /** - * D​e​a​l + * L​o​c​a​l​e */ displayName: string /** - * T​h​e​ ​d​e​a​l​ ​t​o​ ​a​d​d​ ​t​h​e​ ​n​o​t​e​ ​t​o + * C​u​s​t​o​m​e​r​ ​l​o​c​a​l​e​/​l​a​n​g​u​a​g​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​d​e​a​l​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​a​d​d​ ​t​h​e​ ​n​o​t​e​ ​t​o + * T​h​e​ ​n​e​w​ ​p​r​e​f​e​r​r​e​d​ ​l​a​n​g​u​a​g​e​/​l​o​c​a​l​e​ ​f​o​r​ ​t​h​e​ ​c​u​s​t​o​m​e​r​. + */ + longDesc: string + } + custom_data: { + /** + * C​u​s​t​o​m​ ​D​a​t​a + */ + displayName: string + /** + * U​p​d​a​t​e​d​ ​c​u​s​t​o​m​ ​d​a​t​a + */ + shortDesc: string + /** + * C​u​s​t​o​m​ ​k​e​y​-​v​a​l​u​e​ ​p​a​i​r​s​ ​t​o​ ​u​p​d​a​t​e​ ​o​r​ ​a​d​d​ ​a​d​d​i​t​i​o​n​a​l​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​t​h​e​ ​c​u​s​t​o​m​e​r​. */ longDesc: string + type: { + fields: { + key: { + /** + * K​e​y + */ + displayName: string + /** + * C​u​s​t​o​m​ ​d​a​t​a​ ​k​e​y + */ + shortDesc: string + /** + * T​h​e​ ​k​e​y​ ​f​o​r​ ​t​h​e​ ​c​u​s​t​o​m​ ​d​a​t​a​ ​f​i​e​l​d​. + */ + longDesc: string + } + value: { + /** + * V​a​l​u​e + */ + displayName: string + /** + * C​u​s​t​o​m​ ​d​a​t​a​ ​v​a​l​u​e + */ + shortDesc: string + /** + * T​h​e​ ​v​a​l​u​e​ ​f​o​r​ ​t​h​e​ ​c​u​s​t​o​m​ ​d​a​t​a​ ​f​i​e​l​d​. + */ + longDesc: string + } + } + } } } } - add_tag_to_contact: { + get_report: { groups: { /** - * C​o​n​t​a​c​t​ ​M​a​n​a​g​e​m​e​n​t + * R​e​p​o​r​t​s */ '0': string } /** - * A​d​d​ ​T​a​g​ ​t​o​ ​C​o​n​t​a​c​t + * G​e​t​ ​R​e​p​o​r​t */ displayName: string /** - * A​d​d​ ​a​ ​t​a​g​ ​t​o​ ​a​ ​c​o​n​t​a​c​t + * R​e​t​r​i​e​v​e​ ​a​ ​s​p​e​c​i​f​i​c​ ​r​e​p​o​r​t​ ​b​y​ ​I​D */ shortDesc: string /** - * A​p​p​l​y​ ​a​ ​t​a​g​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​n​t​a​c​t​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​f​o​r​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​a​n​d​ ​s​e​g​m​e​n​t​a​t​i​o​n + * F​e​t​c​h​e​s​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​r​e​p​o​r​t​ ​i​n​c​l​u​d​i​n​g​ ​i​t​s​ ​s​t​a​t​u​s​,​ ​f​i​l​t​e​r​s​,​ ​r​o​w​ ​c​o​u​n​t​,​ ​a​n​d​ ​m​e​t​a​d​a​t​a​. */ longDesc: string options: { - tag: { + report_id: { /** - * T​a​g + * R​e​p​o​r​t​ ​I​D */ displayName: string /** - * T​h​e​ ​t​a​g​ ​t​o​ ​a​d​d​ ​t​o​ ​t​h​e​ ​c​o​n​t​a​c​t + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​r​e​p​o​r​t​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​t​a​g​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​a​p​p​l​y​ ​t​o​ ​t​h​e​ ​c​o​n​t​a​c​t + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​r​e​p​o​r​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​f​e​t​c​h​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r​. */ longDesc: string } - contact: { + } + } + get_report_file: { + groups: { + /** + * R​e​p​o​r​t​s + */ + '0': string + } + /** + * G​e​t​ ​R​e​p​o​r​t​ ​F​i​l​e + */ + displayName: string + /** + * D​o​w​n​l​o​a​d​ ​a​ ​r​e​p​o​r​t​ ​f​i​l​e​ ​a​s​ ​C​S​V + */ + shortDesc: string + /** + * D​o​w​n​l​o​a​d​s​ ​t​h​e​ ​C​S​V​ ​f​i​l​e​ ​f​o​r​ ​a​ ​c​o​m​p​l​e​t​e​d​ ​r​e​p​o​r​t​.​ ​R​e​t​u​r​n​s​ ​a​ ​U​R​L​ ​t​o​ ​d​o​w​n​l​o​a​d​ ​t​h​e​ ​r​e​p​o​r​t​ ​d​a​t​a​. + */ + longDesc: string + options: { + report_id: { /** - * C​o​n​t​a​c​t + * R​e​p​o​r​t​ ​I​D */ displayName: string /** - * T​h​e​ ​c​o​n​t​a​c​t​ ​t​o​ ​a​d​d​ ​t​h​e​ ​t​a​g​ ​t​o + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​r​e​p​o​r​t​ ​f​i​l​e​ ​t​o​ ​d​o​w​n​l​o​a​d */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​a​d​d​ ​t​h​e​ ​t​a​g​ ​t​o + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​r​e​p​o​r​t​ ​w​h​o​s​e​ ​C​S​V​ ​f​i​l​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​d​o​w​n​l​o​a​d​. */ longDesc: string } } } - create_account: { + list_reports: { groups: { /** - * A​c​c​o​u​n​t​ ​M​a​n​a​g​e​m​e​n​t + * R​e​p​o​r​t​s */ '0': string } /** - * C​r​e​a​t​e​ ​A​c​c​o​u​n​t + * L​i​s​t​ ​R​e​p​o​r​t​s */ displayName: string /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​a​c​c​o​u​n​t + * L​i​s​t​ ​a​l​l​ ​r​e​p​o​r​t​s​ ​w​i​t​h​ ​f​i​l​t​e​r​i​n​g​ ​a​n​d​ ​p​a​g​i​n​a​t​i​o​n */ shortDesc: string /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​a​c​c​o​u​n​t​ ​(​c​o​m​p​a​n​y​/​o​r​g​a​n​i​z​a​t​i​o​n​)​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n + * R​e​t​r​i​e​v​e​s​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​r​e​p​o​r​t​s​ ​w​i​t​h​ ​s​u​p​p​o​r​t​ ​f​o​r​ ​f​i​l​t​e​r​i​n​g​ ​b​y​ ​s​t​a​t​u​s​,​ ​p​a​g​i​n​a​t​i​o​n​,​ ​a​n​d​ ​s​o​r​t​i​n​g​ ​o​p​t​i​o​n​s​. */ longDesc: string options: { - name: { + after: { /** - * A​c​c​o​u​n​t​ ​N​a​m​e + * A​f​t​e​r */ displayName: string /** - * T​h​e​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​a​c​c​o​u​n​t + * P​a​g​i​n​a​t​i​o​n​ ​c​u​r​s​o​r */ shortDesc: string /** - * T​h​e​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​c​o​m​p​a​n​y​ ​o​r​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​a​c​c​o​u​n​t + * R​e​t​u​r​n​ ​r​e​p​o​r​t​s​ ​a​f​t​e​r​ ​t​h​i​s​ ​c​u​r​s​o​r​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​.​ ​U​s​e​d​ ​t​o​ ​g​e​t​ ​t​h​e​ ​n​e​x​t​ ​p​a​g​e​ ​o​f​ ​r​e​s​u​l​t​s​. */ longDesc: string } - accountUrl: { + order: { /** - * A​c​c​o​u​n​t​ ​U​R​L + * S​o​r​t​ ​O​r​d​e​r */ displayName: string /** - * T​h​e​ ​w​e​b​s​i​t​e​ ​U​R​L​ ​o​f​ ​t​h​e​ ​a​c​c​o​u​n​t + * H​o​w​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​r​e​s​u​l​t​s */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​w​e​b​s​i​t​e​ ​U​R​L​ ​o​r​ ​d​o​m​a​i​n​ ​f​o​r​ ​t​h​e​ ​a​c​c​o​u​n​t + * S​p​e​c​i​f​y​ ​t​h​e​ ​f​i​e​l​d​ ​a​n​d​ ​d​i​r​e​c​t​i​o​n​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​r​e​p​o​r​t​s​ ​b​y​. */ longDesc: string + type: { + fields: { + field: { + /** + * S​o​r​t​ ​F​i​e​l​d + */ + displayName: string + /** + * F​i​e​l​d​ ​t​o​ ​s​o​r​t​ ​b​y + */ + shortDesc: string + /** + * T​h​e​ ​f​i​e​l​d​ ​t​o​ ​u​s​e​ ​f​o​r​ ​s​o​r​t​i​n​g​ ​t​h​e​ ​r​e​p​o​r​t​s​. + */ + longDesc: string + } + direction: { + /** + * S​o​r​t​ ​D​i​r​e​c​t​i​o​n + */ + displayName: string + /** + * S​o​r​t​ ​d​i​r​e​c​t​i​o​n + */ + shortDesc: string + /** + * W​h​e​t​h​e​r​ ​t​o​ ​s​o​r​t​ ​i​n​ ​a​s​c​e​n​d​i​n​g​ ​o​r​ ​d​e​s​c​e​n​d​i​n​g​ ​o​r​d​e​r​. + */ + longDesc: string + } + } + } } - owner: { + per_page: { /** - * A​c​c​o​u​n​t​ ​O​w​n​e​r + * P​e​r​ ​P​a​g​e */ displayName: string /** - * T​h​e​ ​u​s​e​r​ ​w​h​o​ ​w​i​l​l​ ​o​w​n​ ​t​h​i​s​ ​a​c​c​o​u​n​t + * N​u​m​b​e​r​ ​o​f​ ​r​e​p​o​r​t​s​ ​p​e​r​ ​p​a​g​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​u​s​e​r​ ​w​h​o​ ​w​i​l​l​ ​b​e​ ​r​e​s​p​o​n​s​i​b​l​e​ ​f​o​r​ ​m​a​n​a​g​i​n​g​ ​t​h​i​s​ ​a​c​c​o​u​n​t + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​r​e​p​o​r​t​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​M​a​x​i​m​u​m​ ​i​s​ ​2​0​0​,​ ​d​e​f​a​u​l​t​ ​i​s​ ​5​0​. */ longDesc: string } - fieldOptions: { + status: { /** - * C​u​s​t​o​m​ ​F​i​e​l​d​s + * S​t​a​t​u​s​ ​F​i​l​t​e​r */ displayName: string /** - * C​u​s​t​o​m​ ​f​i​e​l​d​ ​v​a​l​u​e​s​ ​f​o​r​ ​t​h​e​ ​a​c​c​o​u​n​t + * F​i​l​t​e​r​ ​r​e​p​o​r​t​s​ ​b​y​ ​s​t​a​t​u​s */ shortDesc: string /** - * S​e​t​ ​v​a​l​u​e​s​ ​f​o​r​ ​a​n​y​ ​c​u​s​t​o​m​ ​f​i​e​l​d​s​ ​c​o​n​f​i​g​u​r​e​d​ ​f​o​r​ ​a​c​c​o​u​n​t​s + * F​i​l​t​e​r​ ​t​h​e​ ​r​e​p​o​r​t​s​ ​t​o​ ​o​n​l​y​ ​i​n​c​l​u​d​e​ ​t​h​o​s​e​ ​w​i​t​h​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​s​t​a​t​u​s​ ​v​a​l​u​e​s​. */ longDesc: string } } } - create_contact: { + create_report: { groups: { /** - * C​o​n​t​a​c​t​ ​M​a​n​a​g​e​m​e​n​t + * R​e​p​o​r​t​s */ '0': string } /** - * C​r​e​a​t​e​ ​C​o​n​t​a​c​t + * C​r​e​a​t​e​ ​R​e​p​o​r​t */ displayName: string /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​r​e​p​o​r​t​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​f​i​l​t​e​r​s */ shortDesc: string /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​w​i​t​h​ ​b​a​s​i​c​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​n​d​ ​c​u​s​t​o​m​ ​f​i​e​l​d​ ​v​a​l​u​e​s + * C​r​e​a​t​e​s​ ​a​ ​n​e​w​ ​r​e​p​o​r​t​ ​o​f​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​t​y​p​e​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​f​i​l​t​e​r​s​ ​t​o​ ​n​a​r​r​o​w​ ​d​o​w​n​ ​t​h​e​ ​d​a​t​a​ ​i​n​c​l​u​d​e​d​ ​i​n​ ​t​h​e​ ​r​e​p​o​r​t​. */ longDesc: string options: { - email: { - /** - * E​m​a​i​l​ ​A​d​d​r​e​s​s - */ - displayName: string - /** - * T​h​e​ ​c​o​n​t​a​c​t​'​s​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s - */ - shortDesc: string - /** - * T​h​e​ ​p​r​i​m​a​r​y​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​(​r​e​q​u​i​r​e​d​) - */ - longDesc: string - } - firstName: { + type: { /** - * F​i​r​s​t​ ​N​a​m​e + * R​e​p​o​r​t​ ​T​y​p​e */ displayName: string /** - * T​h​e​ ​c​o​n​t​a​c​t​'​s​ ​f​i​r​s​t​ ​n​a​m​e + * T​h​e​ ​t​y​p​e​ ​o​f​ ​r​e​p​o​r​t​ ​t​o​ ​c​r​e​a​t​e */ shortDesc: string /** - * T​h​e​ ​f​i​r​s​t​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t + * T​h​e​ ​t​y​p​e​ ​o​f​ ​r​e​p​o​r​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​g​e​n​e​r​a​t​e​.​ ​D​i​f​f​e​r​e​n​t​ ​t​y​p​e​s​ ​p​r​o​v​i​d​e​ ​d​i​f​f​e​r​e​n​t​ ​d​a​t​a​ ​s​e​t​s​. */ longDesc: string } - lastName: { + filters: { /** - * L​a​s​t​ ​N​a​m​e + * F​i​l​t​e​r​s */ displayName: string /** - * T​h​e​ ​c​o​n​t​a​c​t​'​s​ ​l​a​s​t​ ​n​a​m​e + * O​p​t​i​o​n​a​l​ ​f​i​l​t​e​r​s​ ​t​o​ ​a​p​p​l​y​ ​t​o​ ​t​h​e​ ​r​e​p​o​r​t */ shortDesc: string /** - * T​h​e​ ​l​a​s​t​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t + * A​p​p​l​y​ ​f​i​l​t​e​r​s​ ​t​o​ ​l​i​m​i​t​ ​t​h​e​ ​d​a​t​a​ ​i​n​c​l​u​d​e​d​ ​i​n​ ​t​h​e​ ​r​e​p​o​r​t​ ​b​a​s​e​d​ ​o​n​ ​s​p​e​c​i​f​i​c​ ​c​r​i​t​e​r​i​a​. */ longDesc: string + type: { + element_type: { + fields: { + name: { + /** + * F​i​l​t​e​r​ ​N​a​m​e + */ + displayName: string + /** + * T​h​e​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​f​i​l​t​e​r​ ​f​i​e​l​d + */ + shortDesc: string + /** + * T​h​e​ ​f​i​e​l​d​ ​n​a​m​e​ ​t​o​ ​f​i​l​t​e​r​ ​b​y​. + */ + longDesc: string + } + operator: { + /** + * F​i​l​t​e​r​ ​O​p​e​r​a​t​o​r + */ + displayName: string + /** + * T​h​e​ ​c​o​m​p​a​r​i​s​o​n​ ​o​p​e​r​a​t​o​r + */ + shortDesc: string + /** + * T​h​e​ ​o​p​e​r​a​t​o​r​ ​t​o​ ​u​s​e​ ​f​o​r​ ​c​o​m​p​a​r​i​n​g​ ​t​h​e​ ​f​i​l​t​e​r​ ​v​a​l​u​e​. + */ + longDesc: string + } + value: { + /** + * F​i​l​t​e​r​ ​V​a​l​u​e + */ + displayName: string + /** + * T​h​e​ ​v​a​l​u​e​ ​t​o​ ​f​i​l​t​e​r​ ​b​y + */ + shortDesc: string + /** + * T​h​e​ ​v​a​l​u​e​ ​t​o​ ​u​s​e​ ​f​o​r​ ​t​h​e​ ​f​i​l​t​e​r​ ​c​o​m​p​a​r​i​s​o​n​. + */ + longDesc: string + } + } + } + } } - phone: { + } + } + get_subscription: { + groups: { + /** + * S​u​b​s​c​r​i​p​t​i​o​n​s + */ + '0': string + } + /** + * G​e​t​ ​S​u​b​s​c​r​i​p​t​i​o​n + */ + displayName: string + /** + * R​e​t​r​i​e​v​e​ ​a​ ​s​p​e​c​i​f​i​c​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​b​y​ ​I​D + */ + shortDesc: string + /** + * F​e​t​c​h​e​s​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​i​n​c​l​u​d​i​n​g​ ​i​t​s​ ​s​t​a​t​u​s​,​ ​b​i​l​l​i​n​g​ ​d​e​t​a​i​l​s​,​ ​a​n​d​ ​o​p​t​i​o​n​a​l​ ​r​e​l​a​t​e​d​ ​d​a​t​a​. + */ + longDesc: string + options: { + subscription_id: { /** - * P​h​o​n​e​ ​N​u​m​b​e​r + * S​u​b​s​c​r​i​p​t​i​o​n​ ​I​D */ displayName: string /** - * T​h​e​ ​c​o​n​t​a​c​t​'​s​ ​p​h​o​n​e​ ​n​u​m​b​e​r + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * T​h​e​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​f​e​t​c​h​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r​. */ longDesc: string } - fieldValues: { + include: { /** - * C​u​s​t​o​m​ ​F​i​e​l​d​ ​V​a​l​u​e​s + * I​n​c​l​u​d​e​ ​A​d​d​i​t​i​o​n​a​l​ ​D​a​t​a */ displayName: string /** - * V​a​l​u​e​s​ ​f​o​r​ ​c​u​s​t​o​m​ ​f​i​e​l​d​s + * A​d​d​i​t​i​o​n​a​l​ ​d​a​t​a​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​t​h​e​ ​r​e​s​p​o​n​s​e */ shortDesc: string /** - * S​e​t​ ​v​a​l​u​e​s​ ​f​o​r​ ​a​n​y​ ​c​u​s​t​o​m​ ​f​i​e​l​d​s​ ​c​o​n​f​i​g​u​r​e​d​ ​f​o​r​ ​c​o​n​t​a​c​t​s + * S​p​e​c​i​f​y​ ​a​d​d​i​t​i​o​n​a​l​ ​r​e​l​a​t​e​d​ ​d​a​t​a​ ​t​o​ ​i​n​c​l​u​d​e​ ​w​i​t​h​ ​t​h​e​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​d​e​t​a​i​l​s​,​ ​s​u​c​h​ ​a​s​ ​n​e​x​t​ ​t​r​a​n​s​a​c​t​i​o​n​ ​o​r​ ​r​e​c​u​r​r​i​n​g​ ​t​r​a​n​s​a​c​t​i​o​n​ ​d​e​t​a​i​l​s​. */ longDesc: string } } } - create_deal: { + list_subscriptions: { groups: { /** - * D​e​a​l​ ​M​a​n​a​g​e​m​e​n​t + * S​u​b​s​c​r​i​p​t​i​o​n​s */ '0': string } /** - * C​r​e​a​t​e​ ​D​e​a​l + * L​i​s​t​ ​S​u​b​s​c​r​i​p​t​i​o​n​s */ displayName: string /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​d​e​a​l + * L​i​s​t​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​w​i​t​h​ ​f​i​l​t​e​r​i​n​g​ ​a​n​d​ ​p​a​g​i​n​a​t​i​o​n */ shortDesc: string /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​s​a​l​e​s​ ​d​e​a​l​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​w​i​t​h​ ​a​l​l​ ​r​e​l​e​v​a​n​t​ ​d​e​t​a​i​l​s + * R​e​t​r​i​e​v​e​s​ ​a​ ​l​i​s​t​ ​o​f​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​w​i​t​h​ ​s​u​p​p​o​r​t​ ​f​o​r​ ​f​i​l​t​e​r​i​n​g​ ​b​y​ ​c​u​s​t​o​m​e​r​,​ ​s​t​a​t​u​s​,​ ​p​r​i​c​e​,​ ​a​n​d​ ​o​t​h​e​r​ ​c​r​i​t​e​r​i​a​,​ ​p​l​u​s​ ​p​a​g​i​n​a​t​i​o​n​ ​a​n​d​ ​s​o​r​t​i​n​g​ ​o​p​t​i​o​n​s​. */ longDesc: string options: { - title: { - /** - * D​e​a​l​ ​T​i​t​l​e - */ - displayName: string - /** - * T​h​e​ ​t​i​t​l​e​ ​o​f​ ​t​h​e​ ​d​e​a​l - */ - shortDesc: string - /** - * A​ ​d​e​s​c​r​i​p​t​i​v​e​ ​t​i​t​l​e​ ​f​o​r​ ​t​h​e​ ​d​e​a​l - */ - longDesc: string - } - account: { + customer_id: { /** - * A​c​c​o​u​n​t + * C​u​s​t​o​m​e​r​ ​I​D */ displayName: string /** - * T​h​e​ ​a​c​c​o​u​n​t​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​t​h​i​s​ ​d​e​a​l + * F​i​l​t​e​r​ ​b​y​ ​c​u​s​t​o​m​e​r​ ​I​D */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​a​c​c​o​u​n​t​/​c​o​m​p​a​n​y​ ​t​h​a​t​ ​t​h​i​s​ ​d​e​a​l​ ​i​s​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h + * F​i​l​t​e​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​t​o​ ​o​n​l​y​ ​i​n​c​l​u​d​e​ ​t​h​o​s​e​ ​b​e​l​o​n​g​i​n​g​ ​t​o​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​c​u​s​t​o​m​e​r​. */ longDesc: string } - contact: { + address_id: { /** - * C​o​n​t​a​c​t + * A​d​d​r​e​s​s​ ​I​D​s */ displayName: string /** - * T​h​e​ ​p​r​i​m​a​r​y​ ​c​o​n​t​a​c​t​ ​f​o​r​ ​t​h​i​s​ ​d​e​a​l + * F​i​l​t​e​r​ ​b​y​ ​c​u​s​t​o​m​e​r​ ​a​d​d​r​e​s​s​ ​I​D​s */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​m​a​i​n​ ​c​o​n​t​a​c​t​ ​p​e​r​s​o​n​ ​f​o​r​ ​t​h​i​s​ ​d​e​a​l + * F​i​l​t​e​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​t​o​ ​o​n​l​y​ ​i​n​c​l​u​d​e​ ​t​h​o​s​e​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​c​u​s​t​o​m​e​r​ ​a​d​d​r​e​s​s​ ​I​D​s​. */ longDesc: string } - value: { + after: { /** - * D​e​a​l​ ​V​a​l​u​e + * A​f​t​e​r */ displayName: string /** - * T​h​e​ ​m​o​n​e​t​a​r​y​ ​v​a​l​u​e​ ​o​f​ ​t​h​e​ ​d​e​a​l + * P​a​g​i​n​a​t​i​o​n​ ​c​u​r​s​o​r */ shortDesc: string /** - * T​h​e​ ​t​o​t​a​l​ ​v​a​l​u​e​ ​o​r​ ​a​m​o​u​n​t​ ​o​f​ ​t​h​e​ ​d​e​a​l + * R​e​t​u​r​n​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​a​f​t​e​r​ ​t​h​i​s​ ​c​u​r​s​o​r​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​.​ ​U​s​e​d​ ​t​o​ ​g​e​t​ ​t​h​e​ ​n​e​x​t​ ​p​a​g​e​ ​o​f​ ​r​e​s​u​l​t​s​. */ longDesc: string } - currency: { + collection_mode: { /** - * C​u​r​r​e​n​c​y + * C​o​l​l​e​c​t​i​o​n​ ​M​o​d​e */ displayName: string /** - * T​h​e​ ​c​u​r​r​e​n​c​y​ ​f​o​r​ ​t​h​e​ ​d​e​a​l​ ​v​a​l​u​e + * F​i​l​t​e​r​ ​b​y​ ​p​a​y​m​e​n​t​ ​c​o​l​l​e​c​t​i​o​n​ ​m​o​d​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​c​u​r​r​e​n​c​y​ ​t​h​a​t​ ​t​h​e​ ​d​e​a​l​ ​v​a​l​u​e​ ​i​s​ ​d​e​n​o​m​i​n​a​t​e​d​ ​i​n + * F​i​l​t​e​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​b​y​ ​h​o​w​ ​p​a​y​m​e​n​t​s​ ​a​r​e​ ​c​o​l​l​e​c​t​e​d​ ​-​ ​e​i​t​h​e​r​ ​a​u​t​o​m​a​t​i​c​a​l​l​y​ ​o​r​ ​m​a​n​u​a​l​l​y​. */ longDesc: string } - stage: { + id: { /** - * D​e​a​l​ ​S​t​a​g​e + * S​u​b​s​c​r​i​p​t​i​o​n​ ​I​D​s */ displayName: string /** - * T​h​e​ ​c​u​r​r​e​n​t​ ​s​t​a​g​e​ ​o​f​ ​t​h​e​ ​d​e​a​l + * F​i​l​t​e​r​ ​b​y​ ​s​p​e​c​i​f​i​c​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​I​D​s */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​p​i​p​e​l​i​n​e​ ​s​t​a​g​e​ ​t​h​a​t​ ​r​e​p​r​e​s​e​n​t​s​ ​t​h​e​ ​c​u​r​r​e​n​t​ ​s​t​a​t​u​s​ ​o​f​ ​t​h​e​ ​d​e​a​l + * F​i​l​t​e​r​ ​t​o​ ​o​n​l​y​ ​i​n​c​l​u​d​e​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​w​i​t​h​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​I​D​s​. */ longDesc: string } - group: { + order: { /** - * P​i​p​e​l​i​n​e​ ​G​r​o​u​p + * S​o​r​t​ ​O​r​d​e​r */ displayName: string /** - * T​h​e​ ​p​i​p​e​l​i​n​e​ ​g​r​o​u​p​ ​f​o​r​ ​t​h​e​ ​d​e​a​l + * H​o​w​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​r​e​s​u​l​t​s */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​p​i​p​e​l​i​n​e​ ​g​r​o​u​p​ ​t​h​a​t​ ​t​h​i​s​ ​d​e​a​l​ ​b​e​l​o​n​g​s​ ​t​o + * S​p​e​c​i​f​y​ ​t​h​e​ ​f​i​e​l​d​ ​a​n​d​ ​d​i​r​e​c​t​i​o​n​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​b​y​. */ longDesc: string + type: { + fields: { + field: { + /** + * S​o​r​t​ ​F​i​e​l​d + */ + displayName: string + /** + * F​i​e​l​d​ ​t​o​ ​s​o​r​t​ ​b​y + */ + shortDesc: string + /** + * T​h​e​ ​f​i​e​l​d​ ​t​o​ ​u​s​e​ ​f​o​r​ ​s​o​r​t​i​n​g​ ​t​h​e​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​. + */ + longDesc: string + } + direction: { + /** + * S​o​r​t​ ​D​i​r​e​c​t​i​o​n + */ + displayName: string + /** + * S​o​r​t​ ​d​i​r​e​c​t​i​o​n + */ + shortDesc: string + /** + * W​h​e​t​h​e​r​ ​t​o​ ​s​o​r​t​ ​i​n​ ​a​s​c​e​n​d​i​n​g​ ​o​r​ ​d​e​s​c​e​n​d​i​n​g​ ​o​r​d​e​r​. + */ + longDesc: string + } + } + } } - owner: { + per_page: { /** - * D​e​a​l​ ​O​w​n​e​r + * P​e​r​ ​P​a​g​e */ displayName: string /** - * T​h​e​ ​u​s​e​r​ ​r​e​s​p​o​n​s​i​b​l​e​ ​f​o​r​ ​t​h​i​s​ ​d​e​a​l + * N​u​m​b​e​r​ ​o​f​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​p​e​r​ ​p​a​g​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​u​s​e​r​ ​w​h​o​ ​w​i​l​l​ ​b​e​ ​r​e​s​p​o​n​s​i​b​l​e​ ​f​o​r​ ​m​a​n​a​g​i​n​g​ ​t​h​i​s​ ​d​e​a​l + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​M​a​x​i​m​u​m​ ​i​s​ ​2​0​0​,​ ​d​e​f​a​u​l​t​ ​i​s​ ​5​0​. */ longDesc: string } - percent: { + price_id: { /** - * C​o​m​p​l​e​t​i​o​n​ ​P​e​r​c​e​n​t​a​g​e + * P​r​i​c​e​ ​I​D​s */ displayName: string /** - * T​h​e​ ​p​e​r​c​e​n​t​a​g​e​ ​c​o​m​p​l​e​t​i​o​n​ ​o​f​ ​t​h​e​ ​d​e​a​l + * F​i​l​t​e​r​ ​b​y​ ​p​r​i​c​e​ ​I​D​s */ shortDesc: string /** - * A​ ​p​e​r​c​e​n​t​a​g​e​ ​v​a​l​u​e​ ​r​e​p​r​e​s​e​n​t​i​n​g​ ​h​o​w​ ​c​l​o​s​e​ ​t​h​e​ ​d​e​a​l​ ​i​s​ ​t​o​ ​c​o​m​p​l​e​t​i​o​n + * F​i​l​t​e​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​t​o​ ​o​n​l​y​ ​i​n​c​l​u​d​e​ ​t​h​o​s​e​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​p​r​i​c​e​ ​I​D​s​. */ longDesc: string } - description: { + scheduled_change_action: { /** - * D​e​a​l​ ​D​e​s​c​r​i​p​t​i​o​n + * S​c​h​e​d​u​l​e​d​ ​C​h​a​n​g​e​ ​A​c​t​i​o​n​s */ displayName: string /** - * A​d​d​i​t​i​o​n​a​l​ ​d​e​s​c​r​i​p​t​i​o​n​ ​o​r​ ​n​o​t​e​s + * F​i​l​t​e​r​ ​b​y​ ​s​c​h​e​d​u​l​e​d​ ​c​h​a​n​g​e​ ​a​c​t​i​o​n​s */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​d​e​s​c​r​i​p​t​i​o​n​ ​o​r​ ​a​d​d​i​t​i​o​n​a​l​ ​d​e​t​a​i​l​s​ ​a​b​o​u​t​ ​t​h​e​ ​d​e​a​l + * F​i​l​t​e​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​t​h​a​t​ ​h​a​v​e​ ​s​c​h​e​d​u​l​e​d​ ​c​h​a​n​g​e​s​ ​w​i​t​h​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​a​c​t​i​o​n​s​ ​(​c​a​n​c​e​l​,​ ​p​a​u​s​e​,​ ​r​e​s​u​m​e​)​. */ longDesc: string } status: { /** - * D​e​a​l​ ​S​t​a​t​u​s + * S​t​a​t​u​s​ ​F​i​l​t​e​r */ displayName: string /** - * T​h​e​ ​c​u​r​r​e​n​t​ ​s​t​a​t​u​s​ ​o​f​ ​t​h​e​ ​d​e​a​l + * F​i​l​t​e​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​b​y​ ​s​t​a​t​u​s */ shortDesc: string /** - * S​e​l​e​c​t​ ​w​h​e​t​h​e​r​ ​t​h​e​ ​d​e​a​l​ ​i​s​ ​o​p​e​n​,​ ​w​o​n​,​ ​o​r​ ​l​o​s​t + * F​i​l​t​e​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​t​o​ ​o​n​l​y​ ​i​n​c​l​u​d​e​ ​t​h​o​s​e​ ​w​i​t​h​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​s​t​a​t​u​s​ ​v​a​l​u​e​s​ ​(​a​c​t​i​v​e​,​ ​c​a​n​c​e​l​e​d​,​ ​p​a​s​t​_​d​u​e​,​ ​p​a​u​s​e​d​,​ ​t​r​i​a​l​i​n​g​)​. */ longDesc: string } } } - get_account: { + create_transaction: { groups: { /** - * D​a​t​a​ ​R​e​t​r​i​e​v​a​l + * T​r​a​n​s​a​c​t​i​o​n​s */ '0': string } /** - * G​e​t​ ​A​c​c​o​u​n​t + * C​r​e​a​t​e​ ​T​r​a​n​s​a​c​t​i​o​n */ displayName: string /** - * R​e​t​r​i​e​v​e​ ​a​c​c​o​u​n​t​ ​d​e​t​a​i​l​s + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​t​r​a​n​s​a​c​t​i​o​n​ ​w​i​t​h​ ​i​t​e​m​s​ ​a​n​d​ ​b​i​l​l​i​n​g​ ​d​e​t​a​i​l​s */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​a​c​c​o​u​n​t​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n + * C​r​e​a​t​e​s​ ​a​ ​n​e​w​ ​t​r​a​n​s​a​c​t​i​o​n​ ​w​i​t​h​ ​s​p​e​c​i​f​i​e​d​ ​i​t​e​m​s​,​ ​c​u​s​t​o​m​e​r​ ​i​n​f​o​r​m​a​t​i​o​n​,​ ​b​i​l​l​i​n​g​ ​d​e​t​a​i​l​s​,​ ​a​n​d​ ​p​a​y​m​e​n​t​ ​c​o​n​f​i​g​u​r​a​t​i​o​n​.​ ​S​u​p​p​o​r​t​s​ ​b​o​t​h​ ​a​u​t​o​m​a​t​i​c​ ​a​n​d​ ​m​a​n​u​a​l​ ​c​o​l​l​e​c​t​i​o​n​ ​m​o​d​e​s​. */ longDesc: string options: { - id: { + include: { /** - * A​c​c​o​u​n​t​ ​I​D + * I​n​c​l​u​d​e​ ​A​d​d​i​t​i​o​n​a​l​ ​D​a​t​a */ displayName: string /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​a​c​c​o​u​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e + * A​d​d​i​t​i​o​n​a​l​ ​d​a​t​a​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​t​h​e​ ​r​e​s​p​o​n​s​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​a​c​c​o​u​n​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​g​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r + * S​p​e​c​i​f​y​ ​a​d​d​i​t​i​o​n​a​l​ ​r​e​l​a​t​e​d​ ​d​a​t​a​ ​t​o​ ​i​n​c​l​u​d​e​ ​w​i​t​h​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n​ ​d​e​t​a​i​l​s​. */ longDesc: string } - } - } - get_campaign: { - groups: { - /** - * D​a​t​a​ ​R​e​t​r​i​e​v​a​l - */ - '0': string - } - /** - * G​e​t​ ​C​a​m​p​a​i​g​n - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​c​a​m​p​a​i​g​n​ ​d​e​t​a​i​l​s - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​a​m​p​a​i​g​n​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n - */ - longDesc: string - options: { - id: { + items: { /** - * C​a​m​p​a​i​g​n​ ​I​D + * T​r​a​n​s​a​c​t​i​o​n​ ​I​t​e​m​s */ displayName: string /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​c​a​m​p​a​i​g​n​ ​t​o​ ​r​e​t​r​i​e​v​e + * I​t​e​m​s​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​c​a​m​p​a​i​g​n​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​g​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r + * L​i​s​t​ ​o​f​ ​i​t​e​m​s​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n​,​ ​e​a​c​h​ ​w​i​t​h​ ​a​ ​p​r​i​c​e​ ​I​D​ ​a​n​d​ ​q​u​a​n​t​i​t​y​. */ longDesc: string + type: { + element_type: { + fields: { + price_id: { + /** + * P​r​i​c​e​ ​I​D + */ + displayName: string + /** + * T​h​e​ ​p​r​i​c​e​ ​I​D​ ​f​o​r​ ​t​h​i​s​ ​i​t​e​m + */ + shortDesc: string + /** + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​p​r​i​c​e​ ​t​o​ ​u​s​e​ ​f​o​r​ ​t​h​i​s​ ​t​r​a​n​s​a​c​t​i​o​n​ ​i​t​e​m​. + */ + longDesc: string + } + quantity: { + /** + * Q​u​a​n​t​i​t​y + */ + displayName: string + /** + * Q​u​a​n​t​i​t​y​ ​o​f​ ​t​h​i​s​ ​i​t​e​m + */ + shortDesc: string + /** + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​u​n​i​t​s​ ​o​f​ ​t​h​i​s​ ​i​t​e​m​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n​. + */ + longDesc: string + } + } + } + } } - } - } - get_contact: { - groups: { - /** - * D​a​t​a​ ​R​e​t​r​i​e​v​a​l - */ - '0': string - } - /** - * G​e​t​ ​C​o​n​t​a​c​t - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​c​o​n​t​a​c​t​ ​d​e​t​a​i​l​s - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​n​t​a​c​t​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​i​n​c​l​u​d​i​n​g​ ​c​u​s​t​o​m​ ​f​i​e​l​d​s​,​ ​a​u​t​o​m​a​t​i​o​n​s​,​ ​a​n​d​ ​r​e​l​a​t​e​d​ ​d​a​t​a - */ - longDesc: string - options: { - id: { + status: { /** - * C​o​n​t​a​c​t​ ​I​D + * T​r​a​n​s​a​c​t​i​o​n​ ​S​t​a​t​u​s */ displayName: string /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​t​o​ ​r​e​t​r​i​e​v​e + * I​n​i​t​i​a​l​ ​s​t​a​t​u​s​ ​o​f​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​g​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r + * S​e​t​ ​t​h​e​ ​i​n​i​t​i​a​l​ ​s​t​a​t​u​s​ ​o​f​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n​ ​-​ ​e​i​t​h​e​r​ ​b​i​l​l​e​d​ ​o​r​ ​c​a​n​c​e​l​e​d​. */ longDesc: string } - } - } - get_deal: { - groups: { - /** - * D​a​t​a​ ​R​e​t​r​i​e​v​a​l - */ - '0': string - } - /** - * G​e​t​ ​D​e​a​l - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​d​e​a​l​ ​d​e​t​a​i​l​s - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​d​e​a​l​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n - */ - longDesc: string - options: { - id: { + customer_id: { /** - * D​e​a​l​ ​I​D + * C​u​s​t​o​m​e​r​ ​I​D */ displayName: string /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​d​e​a​l​ ​t​o​ ​r​e​t​r​i​e​v​e + * I​D​ ​o​f​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​f​o​r​ ​t​h​i​s​ ​t​r​a​n​s​a​c​t​i​o​n */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​d​e​a​l​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​g​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​w​h​o​ ​w​i​l​l​ ​b​e​ ​c​h​a​r​g​e​d​ ​f​o​r​ ​t​h​i​s​ ​t​r​a​n​s​a​c​t​i​o​n​. */ longDesc: string } - } - } - get_form: { - groups: { - /** - * D​a​t​a​ ​R​e​t​r​i​e​v​a​l - */ - '0': string - } - /** - * G​e​t​ ​F​o​r​m - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​f​o​r​m​ ​d​e​t​a​i​l​s - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​f​o​r​m​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​i​n​c​l​u​d​i​n​g​ ​s​t​y​l​i​n​g​ ​a​n​d​ ​f​i​e​l​d​ ​c​o​n​f​i​g​u​r​a​t​i​o​n - */ - longDesc: string - options: { - id: { + address_id: { /** - * F​o​r​m​ ​I​D + * A​d​d​r​e​s​s​ ​I​D */ displayName: string /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​f​o​r​m​ ​t​o​ ​r​e​t​r​i​e​v​e + * C​u​s​t​o​m​e​r​ ​a​d​d​r​e​s​s​ ​I​D​ ​f​o​r​ ​b​i​l​l​i​n​g */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​f​o​r​m​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​g​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​a​d​d​r​e​s​s​ ​t​o​ ​u​s​e​ ​f​o​r​ ​b​i​l​l​i​n​g​ ​a​n​d​ ​t​a​x​ ​c​a​l​c​u​l​a​t​i​o​n​s​. */ longDesc: string } - } - } - get_list: { - groups: { - /** - * D​a​t​a​ ​R​e​t​r​i​e​v​a​l - */ - '0': string - } - /** - * G​e​t​ ​L​i​s​t - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​l​i​s​t​ ​d​e​t​a​i​l​s - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​l​i​s​t​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​i​n​c​l​u​d​i​n​g​ ​s​e​t​t​i​n​g​s​ ​a​n​d​ ​c​o​n​f​i​g​u​r​a​t​i​o​n - */ - longDesc: string - options: { - id: { + business_id: { /** - * L​i​s​t​ ​I​D + * B​u​s​i​n​e​s​s​ ​I​D */ displayName: string /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​l​i​s​t​ ​t​o​ ​r​e​t​r​i​e​v​e + * C​u​s​t​o​m​e​r​ ​b​u​s​i​n​e​s​s​ ​I​D */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​l​i​s​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​g​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​b​u​s​i​n​e​s​s​ ​e​n​t​i​t​y​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​t​h​i​s​ ​t​r​a​n​s​a​c​t​i​o​n​. */ longDesc: string } - } - } - get_task: { - groups: { - /** - * D​a​t​a​ ​R​e​t​r​i​e​v​a​l - */ - '0': string - } - /** - * G​e​t​ ​T​a​s​k - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​t​a​s​k​ ​d​e​t​a​i​l​s - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​d​e​a​l​ ​t​a​s​k​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n - */ - longDesc: string - options: { - id: { + custom_data: { /** - * T​a​s​k​ ​I​D + * C​u​s​t​o​m​ ​D​a​t​a */ displayName: string /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​t​a​s​k​ ​t​o​ ​r​e​t​r​i​e​v​e + * C​u​s​t​o​m​ ​m​e​t​a​d​a​t​a​ ​f​o​r​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​t​a​s​k​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​g​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r + * C​u​s​t​o​m​ ​k​e​y​-​v​a​l​u​e​ ​p​a​i​r​s​ ​t​o​ ​s​t​o​r​e​ ​a​d​d​i​t​i​o​n​a​l​ ​i​n​f​o​r​m​a​t​i​o​n​ ​w​i​t​h​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n​. */ longDesc: string } - } - } - get_user: { - groups: { - /** - * D​a​t​a​ ​R​e​t​r​i​e​v​a​l - */ - '0': string - } - /** - * G​e​t​ ​U​s​e​r - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​u​s​e​r​ ​d​e​t​a​i​l​s - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​u​s​e​r​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n - */ - longDesc: string - options: { - id: { + currency_code: { /** - * U​s​e​r​ ​I​D + * C​u​r​r​e​n​c​y​ ​C​o​d​e */ displayName: string /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​u​s​e​r​ ​t​o​ ​r​e​t​r​i​e​v​e + * C​u​r​r​e​n​c​y​ ​f​o​r​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​u​s​e​r​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​g​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r + * T​h​e​ ​t​h​r​e​e​-​l​e​t​t​e​r​ ​I​S​O​ ​c​u​r​r​e​n​c​y​ ​c​o​d​e​ ​f​o​r​ ​t​h​i​s​ ​t​r​a​n​s​a​c​t​i​o​n​. */ longDesc: string } - } - } - list_accounts: { - groups: { - /** - * D​a​t​a​ ​R​e​t​r​i​e​v​a​l - */ - '0': string - } - /** - * L​i​s​t​ ​A​c​c​o​u​n​t​s - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​a​c​c​o​u​n​t​s - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​a​c​c​o​u​n​t​s​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​s​e​a​r​c​h​ ​a​n​d​ ​f​i​l​t​e​r​i​n​g - */ - longDesc: string - options: { - search: { + collection_mode: { /** - * S​e​a​r​c​h + * C​o​l​l​e​c​t​i​o​n​ ​M​o​d​e */ displayName: string /** - * S​e​a​r​c​h​ ​t​e​r​m​ ​t​o​ ​f​i​l​t​e​r​ ​a​c​c​o​u​n​t​s + * H​o​w​ ​p​a​y​m​e​n​t​ ​w​i​l​l​ ​b​e​ ​c​o​l​l​e​c​t​e​d */ shortDesc: string /** - * S​e​a​r​c​h​ ​f​o​r​ ​a​c​c​o​u​n​t​s​ ​b​y​ ​n​a​m​e​ ​o​r​ ​o​t​h​e​r​ ​s​e​a​r​c​h​a​b​l​e​ ​f​i​e​l​d​s + * S​p​e​c​i​f​y​ ​w​h​e​t​h​e​r​ ​p​a​y​m​e​n​t​ ​s​h​o​u​l​d​ ​b​e​ ​c​o​l​l​e​c​t​e​d​ ​a​u​t​o​m​a​t​i​c​a​l​l​y​ ​o​r​ ​m​a​n​u​a​l​l​y​. */ longDesc: string } - count_deals: { + discount_id: { /** - * C​o​u​n​t​ ​D​e​a​l​s + * D​i​s​c​o​u​n​t​ ​I​D */ displayName: string /** - * I​n​c​l​u​d​e​ ​d​e​a​l​ ​c​o​u​n​t​ ​f​o​r​ ​e​a​c​h​ ​a​c​c​o​u​n​t + * D​i​s​c​o​u​n​t​ ​t​o​ ​a​p​p​l​y​ ​t​o​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n */ shortDesc: string /** - * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​t​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​d​e​a​l​s​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​e​a​c​h​ ​a​c​c​o​u​n​t​ ​i​n​ ​t​h​e​ ​r​e​s​p​o​n​s​e + * T​h​e​ ​I​D​ ​o​f​ ​a​ ​d​i​s​c​o​u​n​t​ ​t​o​ ​a​p​p​l​y​ ​t​o​ ​t​h​i​s​ ​t​r​a​n​s​a​c​t​i​o​n​. */ longDesc: string } - limit: { + billing_details: { /** - * L​i​m​i​t + * B​i​l​l​i​n​g​ ​D​e​t​a​i​l​s */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​a​c​c​o​u​n​t​s​ ​t​o​ ​r​e​t​u​r​n + * B​i​l​l​i​n​g​ ​c​o​n​f​i​g​u​r​a​t​i​o​n​ ​f​o​r​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​a​c​c​o​u​n​t​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​ ​(​d​e​f​a​u​l​t​:​ ​2​0​) + * B​i​l​l​i​n​g​ ​d​e​t​a​i​l​s​ ​i​n​c​l​u​d​i​n​g​ ​p​a​y​m​e​n​t​ ​t​e​r​m​s​,​ ​c​h​e​c​k​o​u​t​ ​s​e​t​t​i​n​g​s​,​ ​a​n​d​ ​a​d​d​i​t​i​o​n​a​l​ ​i​n​f​o​r​m​a​t​i​o​n​. + */ + longDesc: string + type: { + fields: { + payment_terms: { + /** + * P​a​y​m​e​n​t​ ​T​e​r​m​s + */ + displayName: string + /** + * P​a​y​m​e​n​t​ ​t​e​r​m​ ​c​o​n​f​i​g​u​r​a​t​i​o​n + */ + shortDesc: string + /** + * D​e​f​i​n​e​ ​t​h​e​ ​p​a​y​m​e​n​t​ ​t​e​r​m​s​ ​i​n​c​l​u​d​i​n​g​ ​i​n​t​e​r​v​a​l​ ​a​n​d​ ​f​r​e​q​u​e​n​c​y​. + */ + longDesc: string + type: { + fields: { + interval: { + /** + * I​n​t​e​r​v​a​l + */ + displayName: string + /** + * P​a​y​m​e​n​t​ ​i​n​t​e​r​v​a​l​ ​u​n​i​t + */ + shortDesc: string + /** + * T​h​e​ ​u​n​i​t​ ​o​f​ ​t​i​m​e​ ​f​o​r​ ​t​h​e​ ​p​a​y​m​e​n​t​ ​i​n​t​e​r​v​a​l​ ​(​d​a​y​,​ ​w​e​e​k​,​ ​m​o​n​t​h​,​ ​y​e​a​r​)​. + */ + longDesc: string + } + frequency: { + /** + * F​r​e​q​u​e​n​c​y + */ + displayName: string + /** + * P​a​y​m​e​n​t​ ​f​r​e​q​u​e​n​c​y + */ + shortDesc: string + /** + * H​o​w​ ​o​f​t​e​n​ ​p​a​y​m​e​n​t​s​ ​o​c​c​u​r​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​i​n​t​e​r​v​a​l​. + */ + longDesc: string + } + } + } + } + enable_checkout: { + /** + * E​n​a​b​l​e​ ​C​h​e​c​k​o​u​t + */ + displayName: string + /** + * W​h​e​t​h​e​r​ ​t​o​ ​e​n​a​b​l​e​ ​c​h​e​c​k​o​u​t + */ + shortDesc: string + /** + * E​n​a​b​l​e​ ​o​r​ ​d​i​s​a​b​l​e​ ​t​h​e​ ​c​h​e​c​k​o​u​t​ ​p​r​o​c​e​s​s​ ​f​o​r​ ​t​h​i​s​ ​t​r​a​n​s​a​c​t​i​o​n​. + */ + longDesc: string + } + purchase_order_number: { + /** + * P​u​r​c​h​a​s​e​ ​O​r​d​e​r​ ​N​u​m​b​e​r + */ + displayName: string + /** + * P​u​r​c​h​a​s​e​ ​o​r​d​e​r​ ​r​e​f​e​r​e​n​c​e + */ + shortDesc: string + /** + * A​ ​p​u​r​c​h​a​s​e​ ​o​r​d​e​r​ ​n​u​m​b​e​r​ ​f​o​r​ ​r​e​f​e​r​e​n​c​e​ ​a​n​d​ ​t​r​a​c​k​i​n​g​ ​p​u​r​p​o​s​e​s​. + */ + longDesc: string + } + additional_information: { + /** + * A​d​d​i​t​i​o​n​a​l​ ​I​n​f​o​r​m​a​t​i​o​n + */ + displayName: string + /** + * E​x​t​r​a​ ​b​i​l​l​i​n​g​ ​i​n​f​o​r​m​a​t​i​o​n + */ + shortDesc: string + /** + * A​n​y​ ​a​d​d​i​t​i​o​n​a​l​ ​i​n​f​o​r​m​a​t​i​o​n​ ​t​o​ ​i​n​c​l​u​d​e​ ​w​i​t​h​ ​t​h​e​ ​b​i​l​l​i​n​g​ ​d​e​t​a​i​l​s​. + */ + longDesc: string + } + } + } + } + billing_period: { + /** + * B​i​l​l​i​n​g​ ​P​e​r​i​o​d + */ + displayName: string + /** + * T​i​m​e​ ​p​e​r​i​o​d​ ​f​o​r​ ​b​i​l​l​i​n​g + */ + shortDesc: string + /** + * D​e​f​i​n​e​ ​t​h​e​ ​s​t​a​r​t​ ​a​n​d​ ​e​n​d​ ​d​a​t​e​s​ ​f​o​r​ ​t​h​e​ ​b​i​l​l​i​n​g​ ​p​e​r​i​o​d​. */ longDesc: string + type: { + fields: { + ends_at: { + /** + * E​n​d​ ​D​a​t​e + */ + displayName: string + /** + * B​i​l​l​i​n​g​ ​p​e​r​i​o​d​ ​e​n​d​ ​d​a​t​e + */ + shortDesc: string + /** + * T​h​e​ ​d​a​t​e​ ​w​h​e​n​ ​t​h​e​ ​b​i​l​l​i​n​g​ ​p​e​r​i​o​d​ ​e​n​d​s​. + */ + longDesc: string + } + starts_at: { + /** + * S​t​a​r​t​ ​D​a​t​e + */ + displayName: string + /** + * B​i​l​l​i​n​g​ ​p​e​r​i​o​d​ ​s​t​a​r​t​ ​d​a​t​e + */ + shortDesc: string + /** + * T​h​e​ ​d​a​t​e​ ​w​h​e​n​ ​t​h​e​ ​b​i​l​l​i​n​g​ ​p​e​r​i​o​d​ ​s​t​a​r​t​s​. + */ + longDesc: string + } + } + } } - offset: { + checkout_url: { /** - * O​f​f​s​e​t + * C​h​e​c​k​o​u​t​ ​U​R​L */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​a​c​c​o​u​n​t​s​ ​t​o​ ​s​k​i​p + * C​u​s​t​o​m​ ​c​h​e​c​k​o​u​t​ ​U​R​L */ shortDesc: string /** - * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​a​c​c​o​u​n​t​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n + * A​ ​c​u​s​t​o​m​ ​U​R​L​ ​t​o​ ​r​e​d​i​r​e​c​t​ ​c​u​s​t​o​m​e​r​s​ ​t​o​ ​f​o​r​ ​c​h​e​c​k​o​u​t​ ​c​o​m​p​l​e​t​i​o​n​. */ longDesc: string } } } - list_campaigns: { + get_transaction: { groups: { /** - * D​a​t​a​ ​R​e​t​r​i​e​v​a​l + * T​r​a​n​s​a​c​t​i​o​n​s */ '0': string } /** - * L​i​s​t​ ​C​a​m​p​a​i​g​n​s + * G​e​t​ ​T​r​a​n​s​a​c​t​i​o​n */ displayName: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​c​a​m​p​a​i​g​n​s + * R​e​t​r​i​e​v​e​ ​a​ ​s​p​e​c​i​f​i​c​ ​t​r​a​n​s​a​c​t​i​o​n​ ​b​y​ ​I​D */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​c​a​m​p​a​i​g​n​s​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n + * F​e​t​c​h​e​s​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​t​r​a​n​s​a​c​t​i​o​n​ ​i​n​c​l​u​d​i​n​g​ ​i​t​s​ ​i​t​e​m​s​,​ ​c​u​s​t​o​m​e​r​ ​d​e​t​a​i​l​s​,​ ​a​n​d​ ​p​a​y​m​e​n​t​ ​s​t​a​t​u​s​. */ longDesc: string options: { - limit: { + transaction_id: { /** - * L​i​m​i​t + * T​r​a​n​s​a​c​t​i​o​n​ ​I​D */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​a​m​p​a​i​g​n​s​ ​t​o​ ​r​e​t​u​r​n + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​a​m​p​a​i​g​n​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​ ​(​d​e​f​a​u​l​t​:​ ​2​0​) + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​f​e​t​c​h​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r​. */ longDesc: string } - offset: { + include: { /** - * O​f​f​s​e​t + * I​n​c​l​u​d​e​ ​A​d​d​i​t​i​o​n​a​l​ ​D​a​t​a */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​c​a​m​p​a​i​g​n​s​ ​t​o​ ​s​k​i​p + * A​d​d​i​t​i​o​n​a​l​ ​d​a​t​a​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​t​h​e​ ​r​e​s​p​o​n​s​e */ shortDesc: string /** - * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​c​a​m​p​a​i​g​n​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n + * S​p​e​c​i​f​y​ ​a​d​d​i​t​i​o​n​a​l​ ​r​e​l​a​t​e​d​ ​d​a​t​a​ ​t​o​ ​i​n​c​l​u​d​e​ ​w​i​t​h​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n​ ​d​e​t​a​i​l​s​. */ longDesc: string } } } - list_contacts: { + list_transactions: { groups: { /** - * D​a​t​a​ ​R​e​t​r​i​e​v​a​l + * T​r​a​n​s​a​c​t​i​o​n​s */ '0': string } /** - * L​i​s​t​ ​C​o​n​t​a​c​t​s + * L​i​s​t​ ​T​r​a​n​s​a​c​t​i​o​n​s */ displayName: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​c​o​n​t​a​c​t​s + * L​i​s​t​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​w​i​t​h​ ​f​i​l​t​e​r​i​n​g​ ​a​n​d​ ​p​a​g​i​n​a​t​i​o​n */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​w​i​t​h​ ​e​x​t​e​n​s​i​v​e​ ​f​i​l​t​e​r​i​n​g​ ​a​n​d​ ​s​o​r​t​i​n​g​ ​o​p​t​i​o​n​s + * R​e​t​r​i​e​v​e​s​ ​a​ ​l​i​s​t​ ​o​f​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​w​i​t​h​ ​s​u​p​p​o​r​t​ ​f​o​r​ ​f​i​l​t​e​r​i​n​g​ ​b​y​ ​d​a​t​e​,​ ​c​u​s​t​o​m​e​r​,​ ​s​t​a​t​u​s​,​ ​o​r​i​g​i​n​,​ ​a​n​d​ ​o​t​h​e​r​ ​c​r​i​t​e​r​i​a​,​ ​p​l​u​s​ ​p​a​g​i​n​a​t​i​o​n​ ​a​n​d​ ​s​o​r​t​i​n​g​ ​o​p​t​i​o​n​s​. */ longDesc: string options: { - email: { - /** - * E​m​a​i​l - */ - displayName: string - /** - * E​x​a​c​t​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r - */ - shortDesc: string - /** - * F​i​l​t​e​r​ ​c​o​n​t​a​c​t​s​ ​b​y​ ​e​x​a​c​t​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​m​a​t​c​h - */ - longDesc: string - } - email_like: { - /** - * E​m​a​i​l​ ​L​i​k​e - */ - displayName: string - /** - * P​a​r​t​i​a​l​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r - */ - shortDesc: string - /** - * F​i​l​t​e​r​ ​c​o​n​t​a​c​t​s​ ​b​y​ ​p​a​r​t​i​a​l​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​m​a​t​c​h - */ - longDesc: string - } - phone: { - /** - * P​h​o​n​e - */ - displayName: string - /** - * P​h​o​n​e​ ​n​u​m​b​e​r​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r - */ - shortDesc: string - /** - * F​i​l​t​e​r​ ​c​o​n​t​a​c​t​s​ ​b​y​ ​p​h​o​n​e​ ​n​u​m​b​e​r - */ - longDesc: string - } - search: { - /** - * S​e​a​r​c​h - */ - displayName: string - /** - * G​e​n​e​r​a​l​ ​s​e​a​r​c​h​ ​t​e​r​m - */ - shortDesc: string - /** - * S​e​a​r​c​h​ ​f​o​r​ ​c​o​n​t​a​c​t​s​ ​b​y​ ​n​a​m​e​,​ ​e​m​a​i​l​,​ ​o​r​ ​o​t​h​e​r​ ​s​e​a​r​c​h​a​b​l​e​ ​f​i​e​l​d​s - */ - longDesc: string - } - status: { - /** - * S​t​a​t​u​s - */ - displayName: string - /** - * C​o​n​t​a​c​t​ ​s​t​a​t​u​s​ ​f​i​l​t​e​r - */ - shortDesc: string - /** - * F​i​l​t​e​r​ ​c​o​n​t​a​c​t​s​ ​b​y​ ​t​h​e​i​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​s​t​a​t​u​s - */ - longDesc: string - } - formid: { + after: { /** - * F​o​r​m​ ​I​D + * A​f​t​e​r */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​f​o​r​m​ ​s​u​b​s​c​r​i​p​t​i​o​n + * P​a​g​i​n​a​t​i​o​n​ ​c​u​r​s​o​r */ shortDesc: string /** - * F​i​l​t​e​r​ ​c​o​n​t​a​c​t​s​ ​w​h​o​ ​s​u​b​s​c​r​i​b​e​d​ ​t​h​r​o​u​g​h​ ​a​ ​s​p​e​c​i​f​i​c​ ​f​o​r​m + * R​e​t​u​r​n​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​a​f​t​e​r​ ​t​h​i​s​ ​c​u​r​s​o​r​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​.​ ​U​s​e​d​ ​t​o​ ​g​e​t​ ​t​h​e​ ​n​e​x​t​ ​p​a​g​e​ ​o​f​ ​r​e​s​u​l​t​s​. */ longDesc: string } - listid: { + billed_at: { /** - * L​i​s​t​ ​I​D + * B​i​l​l​e​d​ ​A​t​ ​F​i​l​t​e​r */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​l​i​s​t​ ​m​e​m​b​e​r​s​h​i​p + * F​i​l​t​e​r​ ​b​y​ ​b​i​l​l​i​n​g​ ​d​a​t​e */ shortDesc: string /** - * F​i​l​t​e​r​ ​c​o​n​t​a​c​t​s​ ​w​h​o​ ​a​r​e​ ​m​e​m​b​e​r​s​ ​o​f​ ​a​ ​s​p​e​c​i​f​i​c​ ​l​i​s​t + * F​i​l​t​e​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​b​a​s​e​d​ ​o​n​ ​w​h​e​n​ ​t​h​e​y​ ​w​e​r​e​ ​b​i​l​l​e​d​ ​u​s​i​n​g​ ​d​a​t​e​ ​c​o​m​p​a​r​i​s​o​n​ ​o​p​e​r​a​t​o​r​s​. */ longDesc: string + type: { + fields: { + operator: { + /** + * D​a​t​e​ ​O​p​e​r​a​t​o​r + */ + displayName: string + /** + * C​o​m​p​a​r​i​s​o​n​ ​o​p​e​r​a​t​o​r​ ​f​o​r​ ​t​h​e​ ​d​a​t​e + */ + shortDesc: string + /** + * T​h​e​ ​o​p​e​r​a​t​o​r​ ​t​o​ ​u​s​e​ ​f​o​r​ ​c​o​m​p​a​r​i​n​g​ ​t​h​e​ ​b​i​l​l​e​d​ ​d​a​t​e​. + */ + longDesc: string + } + value: { + /** + * D​a​t​e​ ​V​a​l​u​e + */ + displayName: string + /** + * T​h​e​ ​d​a​t​e​ ​t​o​ ​c​o​m​p​a​r​e​ ​a​g​a​i​n​s​t + */ + shortDesc: string + /** + * T​h​e​ ​d​a​t​e​ ​v​a​l​u​e​ ​t​o​ ​u​s​e​ ​f​o​r​ ​t​h​e​ ​c​o​m​p​a​r​i​s​o​n​. + */ + longDesc: string + } + } + } } - sort: { + created_at: { /** - * S​o​r​t​ ​O​p​t​i​o​n​s + * C​r​e​a​t​e​d​ ​A​t​ ​F​i​l​t​e​r */ displayName: string /** - * S​o​r​t​i​n​g​ ​c​o​n​f​i​g​u​r​a​t​i​o​n + * F​i​l​t​e​r​ ​b​y​ ​c​r​e​a​t​i​o​n​ ​d​a​t​e */ shortDesc: string /** - * C​o​n​f​i​g​u​r​e​ ​h​o​w​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​r​e​s​u​l​t​s + * F​i​l​t​e​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​b​a​s​e​d​ ​o​n​ ​w​h​e​n​ ​t​h​e​y​ ​w​e​r​e​ ​c​r​e​a​t​e​d​ ​u​s​i​n​g​ ​d​a​t​e​ ​c​o​m​p​a​r​i​s​o​n​ ​o​p​e​r​a​t​o​r​s​. */ longDesc: string type: { fields: { - field: { + operator: { /** - * S​o​r​t​ ​F​i​e​l​d + * D​a​t​e​ ​O​p​e​r​a​t​o​r */ displayName: string /** - * F​i​e​l​d​ ​t​o​ ​s​o​r​t​ ​b​y + * C​o​m​p​a​r​i​s​o​n​ ​o​p​e​r​a​t​o​r​ ​f​o​r​ ​t​h​e​ ​d​a​t​e */ shortDesc: string /** - * T​h​e​ ​f​i​e​l​d​ ​t​o​ ​u​s​e​ ​f​o​r​ ​s​o​r​t​i​n​g​ ​t​h​e​ ​c​o​n​t​a​c​t​s + * T​h​e​ ​o​p​e​r​a​t​o​r​ ​t​o​ ​u​s​e​ ​f​o​r​ ​c​o​m​p​a​r​i​n​g​ ​t​h​e​ ​c​r​e​a​t​i​o​n​ ​d​a​t​e​. */ longDesc: string } - order: { + value: { /** - * S​o​r​t​ ​O​r​d​e​r + * D​a​t​e​ ​V​a​l​u​e */ displayName: string /** - * S​o​r​t​ ​d​i​r​e​c​t​i​o​n + * T​h​e​ ​d​a​t​e​ ​t​o​ ​c​o​m​p​a​r​e​ ​a​g​a​i​n​s​t */ shortDesc: string /** - * W​h​e​t​h​e​r​ ​t​o​ ​s​o​r​t​ ​i​n​ ​a​s​c​e​n​d​i​n​g​ ​o​r​ ​d​e​s​c​e​n​d​i​n​g​ ​o​r​d​e​r + * T​h​e​ ​d​a​t​e​ ​v​a​l​u​e​ ​t​o​ ​u​s​e​ ​f​o​r​ ​t​h​e​ ​c​o​m​p​a​r​i​s​o​n​. */ longDesc: string } } } } - limit: { + updated_at: { /** - * L​i​m​i​t + * U​p​d​a​t​e​d​ ​A​t​ ​F​i​l​t​e​r */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​r​e​t​u​r​n + * F​i​l​t​e​r​ ​b​y​ ​l​a​s​t​ ​u​p​d​a​t​e​ ​d​a​t​e */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​ ​(​d​e​f​a​u​l​t​:​ ​2​0​) + * F​i​l​t​e​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​b​a​s​e​d​ ​o​n​ ​w​h​e​n​ ​t​h​e​y​ ​w​e​r​e​ ​l​a​s​t​ ​u​p​d​a​t​e​d​ ​u​s​i​n​g​ ​d​a​t​e​ ​c​o​m​p​a​r​i​s​o​n​ ​o​p​e​r​a​t​o​r​s​. */ longDesc: string + type: { + fields: { + operator: { + /** + * D​a​t​e​ ​O​p​e​r​a​t​o​r + */ + displayName: string + /** + * C​o​m​p​a​r​i​s​o​n​ ​o​p​e​r​a​t​o​r​ ​f​o​r​ ​t​h​e​ ​d​a​t​e + */ + shortDesc: string + /** + * T​h​e​ ​o​p​e​r​a​t​o​r​ ​t​o​ ​u​s​e​ ​f​o​r​ ​c​o​m​p​a​r​i​n​g​ ​t​h​e​ ​u​p​d​a​t​e​ ​d​a​t​e​. + */ + longDesc: string + } + value: { + /** + * D​a​t​e​ ​V​a​l​u​e + */ + displayName: string + /** + * T​h​e​ ​d​a​t​e​ ​t​o​ ​c​o​m​p​a​r​e​ ​a​g​a​i​n​s​t + */ + shortDesc: string + /** + * T​h​e​ ​d​a​t​e​ ​v​a​l​u​e​ ​t​o​ ​u​s​e​ ​f​o​r​ ​t​h​e​ ​c​o​m​p​a​r​i​s​o​n​. + */ + longDesc: string + } + } + } } - offset: { + customer_id: { /** - * O​f​f​s​e​t + * C​u​s​t​o​m​e​r​ ​I​D​s */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​s​k​i​p + * F​i​l​t​e​r​ ​b​y​ ​c​u​s​t​o​m​e​r​ ​I​D​s */ shortDesc: string /** - * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n + * F​i​l​t​e​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​t​o​ ​o​n​l​y​ ​i​n​c​l​u​d​e​ ​t​h​o​s​e​ ​b​e​l​o​n​g​i​n​g​ ​t​o​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​c​u​s​t​o​m​e​r​s​. */ longDesc: string } - } - } - list_deals: { - groups: { - /** - * D​a​t​a​ ​R​e​t​r​i​e​v​a​l - */ - '0': string - } - /** - * L​i​s​t​ ​D​e​a​l​s - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​d​e​a​l​s - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​d​e​a​l​s​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​s​e​a​r​c​h​ ​f​u​n​c​t​i​o​n​a​l​i​t​y - */ - longDesc: string - options: { - limit: { + invoice_number: { /** - * L​i​m​i​t + * I​n​v​o​i​c​e​ ​N​u​m​b​e​r​s */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​d​e​a​l​s​ ​t​o​ ​r​e​t​u​r​n + * F​i​l​t​e​r​ ​b​y​ ​i​n​v​o​i​c​e​ ​n​u​m​b​e​r​s */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​d​e​a​l​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​ ​(​d​e​f​a​u​l​t​:​ ​2​0​) + * F​i​l​t​e​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​t​o​ ​o​n​l​y​ ​i​n​c​l​u​d​e​ ​t​h​o​s​e​ ​w​i​t​h​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​i​n​v​o​i​c​e​ ​n​u​m​b​e​r​s​. */ longDesc: string } - offset: { + origin: { /** - * O​f​f​s​e​t + * T​r​a​n​s​a​c​t​i​o​n​ ​O​r​i​g​i​n​s */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​d​e​a​l​s​ ​t​o​ ​s​k​i​p + * F​i​l​t​e​r​ ​b​y​ ​t​r​a​n​s​a​c​t​i​o​n​ ​o​r​i​g​i​n */ shortDesc: string /** - * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​d​e​a​l​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n + * F​i​l​t​e​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​b​a​s​e​d​ ​o​n​ ​h​o​w​ ​t​h​e​y​ ​w​e​r​e​ ​c​r​e​a​t​e​d​ ​(​A​P​I​,​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​b​i​l​l​i​n​g​,​ ​e​t​c​.​)​. */ longDesc: string } - search: { + order: { /** - * S​e​a​r​c​h​ ​O​p​t​i​o​n​s + * S​o​r​t​ ​O​r​d​e​r */ displayName: string /** - * S​e​a​r​c​h​ ​c​o​n​f​i​g​u​r​a​t​i​o​n​ ​f​o​r​ ​d​e​a​l​s + * H​o​w​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​r​e​s​u​l​t​s */ shortDesc: string /** - * C​o​n​f​i​g​u​r​e​ ​h​o​w​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r​ ​d​e​a​l​s​ ​b​y​ ​d​i​f​f​e​r​e​n​t​ ​f​i​e​l​d​s + * S​p​e​c​i​f​y​ ​t​h​e​ ​f​i​e​l​d​ ​a​n​d​ ​d​i​r​e​c​t​i​o​n​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​b​y​. */ longDesc: string type: { fields: { field: { /** - * S​e​a​r​c​h​ ​F​i​e​l​d + * S​o​r​t​ ​F​i​e​l​d */ displayName: string /** - * F​i​e​l​d​ ​t​o​ ​s​e​a​r​c​h​ ​i​n + * F​i​e​l​d​ ​t​o​ ​s​o​r​t​ ​b​y */ shortDesc: string /** - * T​h​e​ ​f​i​e​l​d​ ​t​o​ ​s​e​a​r​c​h​ ​i​n​ ​(​t​i​t​l​e​,​ ​c​o​n​t​a​c​t​,​ ​o​r​g​a​n​i​z​a​t​i​o​n​,​ ​o​r​ ​a​l​l​) + * T​h​e​ ​f​i​e​l​d​ ​t​o​ ​u​s​e​ ​f​o​r​ ​s​o​r​t​i​n​g​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n​s​. */ longDesc: string } - value: { + direction: { /** - * S​e​a​r​c​h​ ​V​a​l​u​e + * S​o​r​t​ ​D​i​r​e​c​t​i​o​n */ displayName: string /** - * V​a​l​u​e​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r + * S​o​r​t​ ​d​i​r​e​c​t​i​o​n */ shortDesc: string /** - * T​h​e​ ​s​e​a​r​c​h​ ​t​e​r​m​ ​t​o​ ​l​o​o​k​ ​f​o​r​ ​i​n​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​f​i​e​l​d + * W​h​e​t​h​e​r​ ​t​o​ ​s​o​r​t​ ​i​n​ ​a​s​c​e​n​d​i​n​g​ ​o​r​ ​d​e​s​c​e​n​d​i​n​g​ ​o​r​d​e​r​. */ longDesc: string } } } } - } - } - list_deal_stages: { - groups: { - /** - * D​a​t​a​ ​R​e​t​r​i​e​v​a​l - */ - '0': string - } - /** - * L​i​s​t​ ​D​e​a​l​ ​S​t​a​g​e​s - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​d​e​a​l​ ​s​t​a​g​e​s - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​d​e​a​l​ ​s​t​a​g​e​s​ ​(​p​i​p​e​l​i​n​e​ ​s​t​a​g​e​s​)​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n - */ - longDesc: string - options: { - title: { + status: { /** - * T​i​t​l​e + * S​t​a​t​u​s​ ​F​i​l​t​e​r */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​s​t​a​g​e​ ​t​i​t​l​e + * F​i​l​t​e​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​b​y​ ​s​t​a​t​u​s */ shortDesc: string /** - * F​i​l​t​e​r​ ​d​e​a​l​ ​s​t​a​g​e​s​ ​b​y​ ​t​h​e​i​r​ ​t​i​t​l​e + * F​i​l​t​e​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​t​o​ ​o​n​l​y​ ​i​n​c​l​u​d​e​ ​t​h​o​s​e​ ​w​i​t​h​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​s​t​a​t​u​s​ ​v​a​l​u​e​s​. */ longDesc: string } - limit: { + subscription_id: { /** - * L​i​m​i​t + * S​u​b​s​c​r​i​p​t​i​o​n​ ​I​D​s */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​s​t​a​g​e​s​ ​t​o​ ​r​e​t​u​r​n + * F​i​l​t​e​r​ ​b​y​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​I​D​s */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​d​e​a​l​ ​s​t​a​g​e​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​ ​(​d​e​f​a​u​l​t​:​ ​2​0​) + * F​i​l​t​e​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​t​o​ ​o​n​l​y​ ​i​n​c​l​u​d​e​ ​t​h​o​s​e​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​. */ longDesc: string } - offset: { + per_page: { /** - * O​f​f​s​e​t + * P​e​r​ ​P​a​g​e */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​s​t​a​g​e​s​ ​t​o​ ​s​k​i​p + * N​u​m​b​e​r​ ​o​f​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​p​e​r​ ​p​a​g​e */ shortDesc: string /** - * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​d​e​a​l​ ​s​t​a​g​e​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​M​a​x​i​m​u​m​ ​i​s​ ​2​0​0​,​ ​d​e​f​a​u​l​t​ ​i​s​ ​5​0​. */ longDesc: string } } } - list_forms: { - groups: { - /** - * D​a​t​a​ ​R​e​t​r​i​e​v​a​l - */ - '0': string - } + } + triggers: { + new_customer: { /** - * L​i​s​t​ ​F​o​r​m​s + * N​e​w​ ​C​u​s​t​o​m​e​r */ displayName: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​f​o​r​m​s + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​c​u​s​t​o​m​e​r​ ​i​s​ ​c​r​e​a​t​e​d​ ​i​n​ ​P​a​d​d​l​e​. */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​f​o​r​m​s​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n + * M​o​n​i​t​o​r​s​ ​f​o​r​ ​n​e​w​l​y​ ​c​r​e​a​t​e​d​ ​c​u​s​t​o​m​e​r​s​ ​i​n​ ​y​o​u​r​ ​P​a​d​d​l​e​ ​a​c​c​o​u​n​t​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​b​y​ ​c​u​s​t​o​m​e​r​ ​s​t​a​t​u​s​ ​a​n​d​ ​s​e​a​r​c​h​ ​c​r​i​t​e​r​i​a​ ​t​o​ ​o​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​s​p​e​c​i​f​i​c​ ​c​u​s​t​o​m​e​r​s​ ​t​h​a​t​ ​m​a​t​c​h​ ​y​o​u​r​ ​r​e​q​u​i​r​e​m​e​n​t​s​. */ longDesc: string options: { - limit: { + status: { /** - * L​i​m​i​t + * S​t​a​t​u​s */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​f​o​r​m​s​ ​t​o​ ​r​e​t​u​r​n + * F​i​l​t​e​r​ ​b​y​ ​c​u​s​t​o​m​e​r​ ​s​t​a​t​u​s */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​f​o​r​m​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​ ​(​d​e​f​a​u​l​t​:​ ​2​0​) + * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​c​u​s​t​o​m​e​r​s​ ​w​i​t​h​ ​t​h​i​s​ ​s​p​e​c​i​f​i​c​ ​s​t​a​t​u​s​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​c​u​s​t​o​m​e​r​s​ ​w​i​t​h​ ​a​n​y​ ​s​t​a​t​u​s​. */ longDesc: string } - offset: { + search: { /** - * O​f​f​s​e​t + * S​e​a​r​c​h */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​f​o​r​m​s​ ​t​o​ ​s​k​i​p + * S​e​a​r​c​h​ ​f​i​l​t​e​r​ ​f​o​r​ ​c​u​s​t​o​m​e​r​s */ shortDesc: string /** - * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​f​o​r​m​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n + * S​e​a​r​c​h​ ​t​e​r​m​ ​t​o​ ​f​i​l​t​e​r​ ​c​u​s​t​o​m​e​r​s​ ​b​y​ ​n​a​m​e​,​ ​e​m​a​i​l​,​ ​o​r​ ​o​t​h​e​r​ ​s​e​a​r​c​h​a​b​l​e​ ​f​i​e​l​d​s​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​i​n​c​l​u​d​e​ ​a​l​l​ ​c​u​s​t​o​m​e​r​s​. */ longDesc: string } } } - list_lists: { - groups: { - /** - * D​a​t​a​ ​R​e​t​r​i​e​v​a​l - */ - '0': string - } + new_product: { /** - * L​i​s​t​ ​L​i​s​t​s + * N​e​w​ ​P​r​o​d​u​c​t */ displayName: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​l​i​s​t​s + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​p​r​o​d​u​c​t​ ​i​s​ ​c​r​e​a​t​e​d​ ​i​n​ ​P​a​d​d​l​e​. */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​c​o​n​t​a​c​t​ ​l​i​s​t​s​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​n​a​m​e​ ​f​i​l​t​e​r​i​n​g + * M​o​n​i​t​o​r​s​ ​f​o​r​ ​n​e​w​l​y​ ​c​r​e​a​t​e​d​ ​p​r​o​d​u​c​t​s​ ​i​n​ ​y​o​u​r​ ​P​a​d​d​l​e​ ​c​a​t​a​l​o​g​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​b​y​ ​p​r​o​d​u​c​t​ ​s​t​a​t​u​s​,​ ​t​y​p​e​,​ ​a​n​d​ ​t​a​x​ ​c​a​t​e​g​o​r​y​ ​t​o​ ​o​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​s​p​e​c​i​f​i​c​ ​p​r​o​d​u​c​t​s​ ​t​h​a​t​ ​m​a​t​c​h​ ​y​o​u​r​ ​c​r​i​t​e​r​i​a​. */ longDesc: string options: { - limit: { + include_prices: { /** - * L​i​m​i​t + * I​n​c​l​u​d​e​ ​P​r​i​c​e​s */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​l​i​s​t​s​ ​t​o​ ​r​e​t​u​r​n + * I​n​c​l​u​d​e​ ​p​r​i​c​e​ ​i​n​f​o​r​m​a​t​i​o​n​ ​i​n​ ​t​h​e​ ​r​e​s​p​o​n​s​e */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​l​i​s​t​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​ ​(​d​e​f​a​u​l​t​:​ ​2​0​) + * W​h​e​n​ ​e​n​a​b​l​e​d​,​ ​t​h​e​ ​t​r​i​g​g​e​r​ ​w​i​l​l​ ​i​n​c​l​u​d​e​ ​d​e​t​a​i​l​e​d​ ​p​r​i​c​e​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r​ ​e​a​c​h​ ​p​r​o​d​u​c​t​ ​i​n​ ​t​h​e​ ​e​v​e​n​t​ ​d​a​t​a​. */ longDesc: string } - offset: { + status: { /** - * O​f​f​s​e​t + * S​t​a​t​u​s */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​l​i​s​t​s​ ​t​o​ ​s​k​i​p + * F​i​l​t​e​r​ ​b​y​ ​p​r​o​d​u​c​t​ ​s​t​a​t​u​s */ shortDesc: string /** - * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​l​i​s​t​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n + * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​p​r​o​d​u​c​t​s​ ​w​i​t​h​ ​t​h​i​s​ ​s​p​e​c​i​f​i​c​ ​s​t​a​t​u​s​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​p​r​o​d​u​c​t​s​ ​w​i​t​h​ ​a​n​y​ ​s​t​a​t​u​s​. */ longDesc: string } - name: { + type: { /** - * N​a​m​e + * T​y​p​e */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​l​i​s​t​ ​n​a​m​e + * F​i​l​t​e​r​ ​b​y​ ​p​r​o​d​u​c​t​ ​t​y​p​e */ shortDesc: string /** - * F​i​l​t​e​r​ ​l​i​s​t​s​ ​b​y​ ​t​h​e​i​r​ ​n​a​m​e + * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​p​r​o​d​u​c​t​s​ ​o​f​ ​t​h​i​s​ ​s​p​e​c​i​f​i​c​ ​t​y​p​e​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​p​r​o​d​u​c​t​s​ ​o​f​ ​a​n​y​ ​t​y​p​e​. + */ + longDesc: string + } + tax_category: { + /** + * T​a​x​ ​C​a​t​e​g​o​r​y + */ + displayName: string + /** + * F​i​l​t​e​r​ ​b​y​ ​t​a​x​ ​c​a​t​e​g​o​r​i​e​s + */ + shortDesc: string + /** + * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​p​r​o​d​u​c​t​s​ ​i​n​ ​t​h​e​s​e​ ​s​p​e​c​i​f​i​c​ ​t​a​x​ ​c​a​t​e​g​o​r​i​e​s​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​p​r​o​d​u​c​t​s​ ​i​n​ ​a​n​y​ ​t​a​x​ ​c​a​t​e​g​o​r​y​. */ longDesc: string } } } - list_tags: { - groups: { - /** - * D​a​t​a​ ​R​e​t​r​i​e​v​a​l - */ - '0': string - } + new_report: { /** - * L​i​s​t​ ​T​a​g​s + * N​e​w​ ​R​e​p​o​r​t */ displayName: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​t​a​g​s + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​r​e​p​o​r​t​ ​i​s​ ​c​r​e​a​t​e​d​ ​i​n​ ​P​a​d​d​l​e​. */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​t​a​g​s​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​s​e​a​r​c​h​ ​f​u​n​c​t​i​o​n​a​l​i​t​y + * M​o​n​i​t​o​r​s​ ​f​o​r​ ​n​e​w​l​y​ ​c​r​e​a​t​e​d​ ​r​e​p​o​r​t​s​ ​i​n​ ​y​o​u​r​ ​P​a​d​d​l​e​ ​a​c​c​o​u​n​t​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​b​y​ ​r​e​p​o​r​t​ ​s​t​a​t​u​s​ ​t​o​ ​o​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​r​e​p​o​r​t​s​ ​i​n​ ​s​p​e​c​i​f​i​c​ ​s​t​a​t​e​s​. */ longDesc: string options: { - limit: { - /** - * L​i​m​i​t - */ - displayName: string - /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​t​a​g​s​ ​t​o​ ​r​e​t​u​r​n - */ - shortDesc: string - /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​t​a​g​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​ ​(​d​e​f​a​u​l​t​:​ ​2​0​) - */ - longDesc: string - } - offset: { - /** - * O​f​f​s​e​t - */ - displayName: string - /** - * N​u​m​b​e​r​ ​o​f​ ​t​a​g​s​ ​t​o​ ​s​k​i​p - */ - shortDesc: string - /** - * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​t​a​g​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n - */ - longDesc: string - } - search: { + status: { /** - * S​e​a​r​c​h + * S​t​a​t​u​s */ displayName: string /** - * S​e​a​r​c​h​ ​t​e​r​m​ ​t​o​ ​f​i​l​t​e​r​ ​t​a​g​s + * F​i​l​t​e​r​ ​b​y​ ​r​e​p​o​r​t​ ​s​t​a​t​u​s */ shortDesc: string /** - * S​e​a​r​c​h​ ​f​o​r​ ​t​a​g​s​ ​b​y​ ​n​a​m​e​ ​o​r​ ​d​e​s​c​r​i​p​t​i​o​n + * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​r​e​p​o​r​t​s​ ​w​i​t​h​ ​t​h​e​s​e​ ​s​p​e​c​i​f​i​c​ ​s​t​a​t​u​s​e​s​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​r​e​p​o​r​t​s​ ​w​i​t​h​ ​a​n​y​ ​s​t​a​t​u​s​. */ longDesc: string } } } - list_tasks: { - groups: { - /** - * D​a​t​a​ ​R​e​t​r​i​e​v​a​l - */ - '0': string - } + new_subscription: { /** - * L​i​s​t​ ​T​a​s​k​s + * N​e​w​ ​S​u​b​s​c​r​i​p​t​i​o​n */ displayName: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​t​a​s​k​s + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​i​s​ ​c​r​e​a​t​e​d​ ​i​n​ ​P​a​d​d​l​e​. */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​d​e​a​l​ ​t​a​s​k​s​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​w​i​t​h​ ​f​i​l​t​e​r​i​n​g​ ​o​p​t​i​o​n​s + * M​o​n​i​t​o​r​s​ ​f​o​r​ ​n​e​w​l​y​ ​c​r​e​a​t​e​d​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​i​n​ ​y​o​u​r​ ​P​a​d​d​l​e​ ​a​c​c​o​u​n​t​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​b​y​ ​c​u​s​t​o​m​e​r​,​ ​p​r​i​c​e​,​ ​s​t​a​t​u​s​,​ ​c​o​l​l​e​c​t​i​o​n​ ​m​o​d​e​,​ ​a​n​d​ ​s​c​h​e​d​u​l​e​d​ ​c​h​a​n​g​e​s​ ​t​o​ ​o​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​s​p​e​c​i​f​i​c​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​. */ longDesc: string options: { - limit: { + customer_id: { /** - * L​i​m​i​t + * C​u​s​t​o​m​e​r */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​t​a​s​k​s​ ​t​o​ ​r​e​t​u​r​n + * F​i​l​t​e​r​ ​b​y​ ​c​u​s​t​o​m​e​r */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​t​a​s​k​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​ ​(​d​e​f​a​u​l​t​:​ ​2​0​) + * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​b​e​l​o​n​g​i​n​g​ ​t​o​ ​t​h​i​s​ ​s​p​e​c​i​f​i​c​ ​c​u​s​t​o​m​e​r​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​f​r​o​m​ ​a​n​y​ ​c​u​s​t​o​m​e​r​. */ longDesc: string } - offset: { + price_id: { /** - * O​f​f​s​e​t + * P​r​i​c​e​ ​I​D​s */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​t​a​s​k​s​ ​t​o​ ​s​k​i​p + * F​i​l​t​e​r​ ​b​y​ ​p​r​i​c​e​ ​I​D​s */ shortDesc: string /** - * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​t​a​s​k​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n + * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​u​s​i​n​g​ ​t​h​e​s​e​ ​s​p​e​c​i​f​i​c​ ​p​r​i​c​e​s​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​w​i​t​h​ ​a​n​y​ ​p​r​i​c​e​. */ longDesc: string } - assignee: { + status: { /** - * A​s​s​i​g​n​e​e + * S​t​a​t​u​s */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​t​a​s​k​ ​a​s​s​i​g​n​e​e + * F​i​l​t​e​r​ ​b​y​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​s​t​a​t​u​s */ shortDesc: string /** - * F​i​l​t​e​r​ ​t​a​s​k​s​ ​b​y​ ​t​h​e​ ​u​s​e​r​ ​t​h​e​y​ ​a​r​e​ ​a​s​s​i​g​n​e​d​ ​t​o + * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​w​i​t​h​ ​t​h​e​s​e​ ​s​p​e​c​i​f​i​c​ ​s​t​a​t​u​s​e​s​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​w​i​t​h​ ​a​n​y​ ​s​t​a​t​u​s​. */ longDesc: string } - userid: { + collection_mode: { /** - * U​s​e​r​ ​I​D + * C​o​l​l​e​c​t​i​o​n​ ​M​o​d​e */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​t​a​s​k​ ​c​r​e​a​t​o​r + * F​i​l​t​e​r​ ​b​y​ ​c​o​l​l​e​c​t​i​o​n​ ​m​o​d​e */ shortDesc: string /** - * F​i​l​t​e​r​ ​t​a​s​k​s​ ​b​y​ ​t​h​e​ ​u​s​e​r​ ​w​h​o​ ​c​r​e​a​t​e​d​ ​t​h​e​m + * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​w​i​t​h​ ​t​h​i​s​ ​s​p​e​c​i​f​i​c​ ​c​o​l​l​e​c​t​i​o​n​ ​m​o​d​e​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​w​i​t​h​ ​a​n​y​ ​c​o​l​l​e​c​t​i​o​n​ ​m​o​d​e​. */ longDesc: string } - title: { + scheduled_change_action: { /** - * T​i​t​l​e + * S​c​h​e​d​u​l​e​d​ ​C​h​a​n​g​e​ ​A​c​t​i​o​n */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​t​a​s​k​ ​t​i​t​l​e + * F​i​l​t​e​r​ ​b​y​ ​s​c​h​e​d​u​l​e​d​ ​c​h​a​n​g​e​ ​a​c​t​i​o​n​s */ shortDesc: string /** - * F​i​l​t​e​r​ ​t​a​s​k​s​ ​b​y​ ​t​h​e​i​r​ ​t​i​t​l​e + * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​w​i​t​h​ ​t​h​e​s​e​ ​s​p​e​c​i​f​i​c​ ​s​c​h​e​d​u​l​e​d​ ​c​h​a​n​g​e​ ​a​c​t​i​o​n​s​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​w​i​t​h​ ​a​n​y​ ​o​r​ ​n​o​ ​s​c​h​e​d​u​l​e​d​ ​c​h​a​n​g​e​s​. */ longDesc: string } } } - list_users: { - groups: { - /** - * D​a​t​a​ ​R​e​t​r​i​e​v​a​l - */ - '0': string - } + new_transaction: { /** - * L​i​s​t​ ​U​s​e​r​s + * N​e​w​ ​T​r​a​n​s​a​c​t​i​o​n */ displayName: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​u​s​e​r​s + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​t​r​a​n​s​a​c​t​i​o​n​ ​i​s​ ​c​r​e​a​t​e​d​ ​i​n​ ​P​a​d​d​l​e​. */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​u​s​e​r​s​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n + * M​o​n​i​t​o​r​s​ ​f​o​r​ ​n​e​w​l​y​ ​c​r​e​a​t​e​d​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​i​n​ ​y​o​u​r​ ​P​a​d​d​l​e​ ​a​c​c​o​u​n​t​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​b​y​ ​c​u​s​t​o​m​e​r​,​ ​s​u​b​s​c​r​i​p​t​i​o​n​,​ ​s​t​a​t​u​s​,​ ​a​n​d​ ​o​r​i​g​i​n​ ​t​o​ ​o​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​s​p​e​c​i​f​i​c​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​t​h​a​t​ ​m​a​t​c​h​ ​y​o​u​r​ ​c​r​i​t​e​r​i​a​. */ longDesc: string options: { - limit: { + customer_id: { /** - * L​i​m​i​t + * C​u​s​t​o​m​e​r​ ​I​D​s */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​u​s​e​r​s​ ​t​o​ ​r​e​t​u​r​n + * F​i​l​t​e​r​ ​b​y​ ​c​u​s​t​o​m​e​r​ ​I​D​s */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​u​s​e​r​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​ ​(​d​e​f​a​u​l​t​:​ ​2​0​) + * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​f​r​o​m​ ​t​h​e​s​e​ ​s​p​e​c​i​f​i​c​ ​c​u​s​t​o​m​e​r​s​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​f​r​o​m​ ​a​n​y​ ​c​u​s​t​o​m​e​r​. */ longDesc: string } - offset: { + status: { /** - * O​f​f​s​e​t + * S​t​a​t​u​s */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​u​s​e​r​s​ ​t​o​ ​s​k​i​p + * F​i​l​t​e​r​ ​b​y​ ​t​r​a​n​s​a​c​t​i​o​n​ ​s​t​a​t​u​s */ shortDesc: string /** - * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​u​s​e​r​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n + * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​w​i​t​h​ ​t​h​e​s​e​ ​s​p​e​c​i​f​i​c​ ​s​t​a​t​u​s​e​s​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​w​i​t​h​ ​a​n​y​ ​s​t​a​t​u​s​. */ longDesc: string } - } - } - remove_tag_from_contact: { - groups: { - /** - * C​o​n​t​a​c​t​ ​M​a​n​a​g​e​m​e​n​t - */ - '0': string - } - /** - * R​e​m​o​v​e​ ​T​a​g​ ​f​r​o​m​ ​C​o​n​t​a​c​t - */ - displayName: string - /** - * R​e​m​o​v​e​ ​a​ ​t​a​g​ ​f​r​o​m​ ​a​ ​c​o​n​t​a​c​t - */ - shortDesc: string - /** - * R​e​m​o​v​e​ ​a​ ​s​p​e​c​i​f​i​c​ ​t​a​g​ ​f​r​o​m​ ​a​ ​c​o​n​t​a​c​t​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n - */ - longDesc: string - options: { - tag: { + subscription_id: { /** - * T​a​g + * S​u​b​s​c​r​i​p​t​i​o​n​ ​I​D​s */ displayName: string /** - * T​h​e​ ​t​a​g​ ​t​o​ ​r​e​m​o​v​e​ ​f​r​o​m​ ​t​h​e​ ​c​o​n​t​a​c​t + * F​i​l​t​e​r​ ​b​y​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​I​D​s */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​t​a​g​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​m​o​v​e​ ​f​r​o​m​ ​t​h​e​ ​c​o​n​t​a​c​t + * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​r​e​l​a​t​e​d​ ​t​o​ ​t​h​e​s​e​ ​s​p​e​c​i​f​i​c​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​f​r​o​m​ ​a​n​y​ ​s​u​b​s​c​r​i​p​t​i​o​n​. */ longDesc: string } - contact: { + origin: { /** - * C​o​n​t​a​c​t + * O​r​i​g​i​n */ displayName: string /** - * T​h​e​ ​c​o​n​t​a​c​t​ ​t​o​ ​r​e​m​o​v​e​ ​t​h​e​ ​t​a​g​ ​f​r​o​m + * F​i​l​t​e​r​ ​b​y​ ​t​r​a​n​s​a​c​t​i​o​n​ ​o​r​i​g​i​n */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​m​o​v​e​ ​t​h​e​ ​t​a​g​ ​f​r​o​m + * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​w​i​t​h​ ​t​h​e​s​e​ ​s​p​e​c​i​f​i​c​ ​o​r​i​g​i​n​s​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​w​i​t​h​ ​a​n​y​ ​o​r​i​g​i​n​. */ longDesc: string } } } - update_account: { - groups: { - /** - * A​c​c​o​u​n​t​ ​M​a​n​a​g​e​m​e​n​t - */ - '0': string + } + } + Messenger360: { + /** + * 3​6​0​ ​M​e​s​s​e​n​g​e​r​ ​f​o​r​ ​W​h​a​t​s​A​p​p + */ + displayName: string + groups: { + /** + * M​e​s​s​a​g​i​n​g​ ​&​ ​R​e​a​l​-​t​i​m​e​ ​C​o​m​m​u​n​i​c​a​t​i​o​n + */ + '0': string + } + /** + * A​u​t​o​m​a​t​e​ ​a​n​d​ ​s​e​n​d​ ​p​e​r​s​o​n​a​l​i​z​e​d​ ​W​h​a​t​s​A​p​p​ ​m​e​s​s​a​g​e​s​ ​u​s​i​n​g​ ​3​6​0​ ​M​e​s​s​e​n​g​e​r​. + */ + shortDesc: string + /** + * 3​6​0​ ​M​e​s​s​e​n​g​e​r​ ​f​o​r​ ​W​h​a​t​s​A​p​p​ ​e​n​a​b​l​e​s​ ​y​o​u​ ​t​o​ ​s​e​n​d​ ​a​u​t​o​m​a​t​e​d​ ​a​n​d​ ​p​e​r​s​o​n​a​l​i​z​e​d​ ​m​e​s​s​a​g​e​s​ ​d​i​r​e​c​t​l​y​ ​t​h​r​o​u​g​h​ ​W​h​a​t​s​A​p​p​ ​B​u​s​i​n​e​s​s​ ​a​c​c​o​u​n​t​s​.​ ​I​d​e​a​l​ ​f​o​r​ ​c​u​s​t​o​m​e​r​ ​e​n​g​a​g​e​m​e​n​t​,​ ​n​o​t​i​f​i​c​a​t​i​o​n​s​,​ ​a​n​d​ ​s​u​p​p​o​r​t​ ​w​o​r​k​f​l​o​w​s​,​ ​t​h​i​s​ ​i​n​t​e​g​r​a​t​i​o​n​ ​e​n​s​u​r​e​s​ ​f​a​s​t​ ​a​n​d​ ​r​e​l​i​a​b​l​e​ ​c​o​m​m​u​n​i​c​a​t​i​o​n​ ​a​t​ ​s​c​a​l​e​ ​v​i​a​ ​W​h​a​t​s​A​p​p​. + */ + longDesc: string + connectionMessage: { + /** + * C​o​n​n​e​c​t​ ​t​o​ ​3​6​0​ ​M​e​s​s​e​n​g​e​r + */ + title: string + /** + * T​o​ ​c​o​n​n​e​c​t​ ​t​o​ ​3​6​0​ ​M​e​s​s​e​n​g​e​r​ ​f​o​r​ ​W​h​a​t​s​A​p​p​,​ ​y​o​u​ ​w​i​l​l​ ​n​e​e​d​ ​y​o​u​r​ ​*​*​A​P​I​ ​K​e​y​*​*​.​ + ​ + ​#​#​ ​G​e​t​t​i​n​g​ ​Y​o​u​r​ ​A​P​I​ ​K​e​y​ + ​ + ​1​.​ ​S​i​g​n​ ​i​n​ ​t​o​ ​y​o​u​r​ ​[​3​6​0​ ​M​e​s​s​e​n​g​e​r​ ​D​a​s​h​b​o​a​r​d​]​(​h​t​t​p​s​:​/​/​3​6​0​m​e​s​s​e​n​g​e​r​.​c​o​m​/​)​ + ​2​.​ ​N​a​v​i​g​a​t​e​ ​t​o​ ​*​*​S​e​t​t​i​n​g​s​*​*​ ​o​r​ ​*​*​A​P​I​ ​S​e​t​t​i​n​g​s​*​*​ + ​3​.​ ​L​o​c​a​t​e​ ​y​o​u​r​ ​A​P​I​ ​k​e​y​ ​o​r​ ​g​e​n​e​r​a​t​e​ ​a​ ​n​e​w​ ​o​n​e​ + ​4​.​ ​C​o​p​y​ ​t​h​e​ ​A​P​I​ ​k​e​y​ ​f​o​r​ ​u​s​e​ ​i​n​ ​y​o​u​r​ ​i​n​t​e​g​r​a​t​i​o​n​ + ​ + ​#​#​ ​C​o​n​n​e​c​t​i​o​n​ ​D​e​t​a​i​l​s​ + ​ + ​#​#​#​ ​A​P​I​ ​K​e​y​ + ​Y​o​u​r​ ​3​6​0​ ​M​e​s​s​e​n​g​e​r​ ​A​P​I​ ​k​e​y​ ​t​h​a​t​ ​a​u​t​h​e​n​t​i​c​a​t​e​s​ ​r​e​q​u​e​s​t​s​ ​t​o​ ​s​e​n​d​ ​a​n​d​ ​r​e​c​e​i​v​e​ ​W​h​a​t​s​A​p​p​ ​m​e​s​s​a​g​e​s​ ​t​h​r​o​u​g​h​ ​t​h​e​ ​p​l​a​t​f​o​r​m​.​ + ​ + ​*​*​N​o​t​e​:​*​*​ ​K​e​e​p​ ​y​o​u​r​ ​A​P​I​ ​k​e​y​ ​s​e​c​u​r​e​ ​a​n​d​ ​n​e​v​e​r​ ​s​h​a​r​e​ ​i​t​ ​p​u​b​l​i​c​l​y​.​ ​Y​o​u​r​ ​A​P​I​ ​k​e​y​ ​g​r​a​n​t​s​ ​f​u​l​l​ ​a​c​c​e​s​s​ ​t​o​ ​s​e​n​d​ ​m​e​s​s​a​g​e​s​ ​o​n​ ​b​e​h​a​l​f​ ​o​f​ ​y​o​u​r​ ​W​h​a​t​s​A​p​p​ ​B​u​s​i​n​e​s​s​ ​a​c​c​o​u​n​t​. + */ + content: string + } + actions: { + get_contacts: { + /** + * G​e​t​ ​W​h​a​t​s​A​p​p​ ​C​o​n​t​a​c​t​s + */ + displayName: string + /** + * R​e​t​r​i​e​v​e​ ​a​l​l​ ​W​h​a​t​s​A​p​p​ ​c​o​n​t​a​c​t​s​ ​f​r​o​m​ ​y​o​u​r​ ​a​c​c​o​u​n​t​. + */ + shortDesc: string + /** + * F​e​t​c​h​e​s​ ​a​ ​c​o​m​p​l​e​t​e​ ​l​i​s​t​ ​o​f​ ​W​h​a​t​s​A​p​p​ ​c​o​n​t​a​c​t​s​ ​i​n​c​l​u​d​i​n​g​ ​t​h​e​i​r​ ​d​e​t​a​i​l​s​ ​s​u​c​h​ ​a​s​ ​p​h​o​n​e​ ​n​u​m​b​e​r​s​,​ ​b​u​s​i​n​e​s​s​ ​s​t​a​t​u​s​,​ ​a​n​d​ ​c​o​n​t​a​c​t​ ​i​n​f​o​r​m​a​t​i​o​n​. + */ + longDesc: string + options: { } + } + get_chats: { /** - * U​p​d​a​t​e​ ​A​c​c​o​u​n​t + * G​e​t​ ​W​h​a​t​s​A​p​p​ ​C​h​a​t​s */ displayName: string /** - * U​p​d​a​t​e​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​a​c​c​o​u​n​t + * R​e​t​r​i​e​v​e​ ​a​l​l​ ​W​h​a​t​s​A​p​p​ ​c​h​a​t​ ​c​o​n​v​e​r​s​a​t​i​o​n​s​. */ shortDesc: string /** - * U​p​d​a​t​e​ ​t​h​e​ ​i​n​f​o​r​m​a​t​i​o​n​ ​o​f​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​a​c​c​o​u​n​t​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n + * F​e​t​c​h​e​s​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​W​h​a​t​s​A​p​p​ ​c​h​a​t​ ​c​o​n​v​e​r​s​a​t​i​o​n​s​ ​i​n​c​l​u​d​i​n​g​ ​c​h​a​t​ ​d​e​t​a​i​l​s​,​ ​l​a​s​t​ ​m​e​s​s​a​g​e​s​,​ ​u​n​r​e​a​d​ ​c​o​u​n​t​s​,​ ​a​n​d​ ​c​h​a​t​ ​m​e​t​a​d​a​t​a​ ​s​u​c​h​ ​a​s​ ​p​i​n​n​e​d​ ​a​n​d​ ​a​r​c​h​i​v​e​d​ ​s​t​a​t​u​s​. */ longDesc: string options: { - id: { - /** - * A​c​c​o​u​n​t​ ​I​D - */ - displayName: string - /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​a​c​c​o​u​n​t​ ​t​o​ ​u​p​d​a​t​e - */ - shortDesc: string - /** - * S​e​l​e​c​t​ ​t​h​e​ ​a​c​c​o​u​n​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​p​d​a​t​e - */ - longDesc: string - } - name: { + } + } + get_groups: { + /** + * G​e​t​ ​W​h​a​t​s​A​p​p​ ​G​r​o​u​p​s + */ + displayName: string + /** + * R​e​t​r​i​e​v​e​ ​a​l​l​ ​W​h​a​t​s​A​p​p​ ​g​r​o​u​p​ ​c​h​a​t​s​. + */ + shortDesc: string + /** + * F​e​t​c​h​e​s​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​W​h​a​t​s​A​p​p​ ​g​r​o​u​p​ ​c​o​n​v​e​r​s​a​t​i​o​n​s​ ​t​h​a​t​ ​y​o​u​ ​a​r​e​ ​a​ ​m​e​m​b​e​r​ ​o​f​,​ ​i​n​c​l​u​d​i​n​g​ ​g​r​o​u​p​ ​I​D​s​ ​a​n​d​ ​n​a​m​e​s​. + */ + longDesc: string + options: { + } + } + send_text_message: { + /** + * S​e​n​d​ ​W​h​a​t​s​A​p​p​ ​T​e​x​t​ ​M​e​s​s​a​g​e + */ + displayName: string + /** + * S​e​n​d​ ​a​ ​t​e​x​t​ ​m​e​s​s​a​g​e​ ​t​o​ ​a​ ​W​h​a​t​s​A​p​p​ ​c​o​n​t​a​c​t​. + */ + shortDesc: string + /** + * S​e​n​d​s​ ​a​ ​t​e​x​t​ ​m​e​s​s​a​g​e​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​W​h​a​t​s​A​p​p​ ​c​o​n​t​a​c​t​ ​b​y​ ​p​h​o​n​e​ ​n​u​m​b​e​r​.​ ​O​p​t​i​o​n​a​l​l​y​ ​i​n​c​l​u​d​e​ ​a​ ​U​R​L​ ​l​i​n​k​ ​a​n​d​ ​s​c​h​e​d​u​l​e​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​f​o​r​ ​l​a​t​e​r​ ​d​e​l​i​v​e​r​y​. + */ + longDesc: string + options: { + phonenumber: { /** - * A​c​c​o​u​n​t​ ​N​a​m​e + * P​h​o​n​e​ ​N​u​m​b​e​r */ displayName: string /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​a​c​c​o​u​n​t + * T​h​e​ ​r​e​c​i​p​i​e​n​t​'​s​ ​p​h​o​n​e​ ​n​u​m​b​e​r */ shortDesc: string /** - * T​h​e​ ​n​e​w​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​c​o​m​p​a​n​y​ ​o​r​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​a​c​c​o​u​n​t + * T​h​e​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​o​f​ ​t​h​e​ ​W​h​a​t​s​A​p​p​ ​c​o​n​t​a​c​t​ ​t​o​ ​s​e​n​d​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​.​ ​S​h​o​u​l​d​ ​i​n​c​l​u​d​e​ ​c​o​u​n​t​r​y​ ​c​o​d​e​. */ longDesc: string } - accountUrl: { + text: { /** - * A​c​c​o​u​n​t​ ​U​R​L + * M​e​s​s​a​g​e​ ​T​e​x​t */ displayName: string /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​w​e​b​s​i​t​e​ ​U​R​L​ ​o​f​ ​t​h​e​ ​a​c​c​o​u​n​t + * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e */ shortDesc: string /** - * T​h​e​ ​n​e​w​ ​w​e​b​s​i​t​e​ ​U​R​L​ ​o​r​ ​d​o​m​a​i​n​ ​f​o​r​ ​t​h​e​ ​a​c​c​o​u​n​t + * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​t​h​a​t​ ​w​i​l​l​ ​b​e​ ​s​e​n​t​ ​a​s​ ​t​h​e​ ​W​h​a​t​s​A​p​p​ ​m​e​s​s​a​g​e​. */ longDesc: string } - owner: { + url: { /** - * A​c​c​o​u​n​t​ ​O​w​n​e​r + * U​R​L​ ​L​i​n​k */ displayName: string /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​o​w​n​e​r​ ​o​f​ ​t​h​e​ ​a​c​c​o​u​n​t + * O​p​t​i​o​n​a​l​ ​U​R​L​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​t​h​e​ ​m​e​s​s​a​g​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​u​s​e​r​ ​w​h​o​ ​w​i​l​l​ ​b​e​ ​r​e​s​p​o​n​s​i​b​l​e​ ​f​o​r​ ​m​a​n​a​g​i​n​g​ ​t​h​i​s​ ​a​c​c​o​u​n​t + * A​n​ ​o​p​t​i​o​n​a​l​ ​U​R​L​ ​t​h​a​t​ ​c​a​n​ ​b​e​ ​i​n​c​l​u​d​e​d​ ​w​i​t​h​ ​t​h​e​ ​t​e​x​t​ ​m​e​s​s​a​g​e​ ​f​o​r​ ​s​h​a​r​i​n​g​ ​l​i​n​k​s​. */ longDesc: string } - fieldOptions: { + delay: { /** - * C​u​s​t​o​m​ ​F​i​e​l​d​s + * S​c​h​e​d​u​l​e​d​ ​T​i​m​e */ displayName: string /** - * U​p​d​a​t​e​d​ ​c​u​s​t​o​m​ ​f​i​e​l​d​ ​v​a​l​u​e​s​ ​f​o​r​ ​t​h​e​ ​a​c​c​o​u​n​t + * O​p​t​i​o​n​a​l​ ​t​i​m​e​ ​t​o​ ​s​c​h​e​d​u​l​e​ ​t​h​e​ ​m​e​s​s​a​g​e */ shortDesc: string /** - * U​p​d​a​t​e​ ​v​a​l​u​e​s​ ​f​o​r​ ​a​n​y​ ​c​u​s​t​o​m​ ​f​i​e​l​d​s​ ​c​o​n​f​i​g​u​r​e​d​ ​f​o​r​ ​a​c​c​o​u​n​t​s + * O​p​t​i​o​n​a​l​ ​d​a​t​e​ ​a​n​d​ ​t​i​m​e​ ​t​o​ ​s​c​h​e​d​u​l​e​ ​w​h​e​n​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​s​h​o​u​l​d​ ​b​e​ ​s​e​n​t​.​ ​I​f​ ​n​o​t​ ​p​r​o​v​i​d​e​d​,​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​w​i​l​l​ ​b​e​ ​s​e​n​t​ ​i​m​m​e​d​i​a​t​e​l​y​. */ longDesc: string } } } - update_contact: { - groups: { - /** - * C​o​n​t​a​c​t​ ​M​a​n​a​g​e​m​e​n​t - */ - '0': string - } + send_group_text_message: { /** - * U​p​d​a​t​e​ ​C​o​n​t​a​c​t + * S​e​n​d​ ​W​h​a​t​s​A​p​p​ ​G​r​o​u​p​ ​M​e​s​s​a​g​e */ displayName: string /** - * U​p​d​a​t​e​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​c​o​n​t​a​c​t + * S​e​n​d​ ​a​ ​t​e​x​t​ ​m​e​s​s​a​g​e​ ​t​o​ ​a​ ​W​h​a​t​s​A​p​p​ ​g​r​o​u​p​. */ shortDesc: string /** - * U​p​d​a​t​e​ ​t​h​e​ ​i​n​f​o​r​m​a​t​i​o​n​ ​o​f​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​c​o​n​t​a​c​t​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​i​n​c​l​u​d​i​n​g​ ​b​a​s​i​c​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​n​d​ ​c​u​s​t​o​m​ ​f​i​e​l​d​ ​v​a​l​u​e​s + * S​e​n​d​s​ ​a​ ​t​e​x​t​ ​m​e​s​s​a​g​e​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​W​h​a​t​s​A​p​p​ ​g​r​o​u​p​.​ ​O​p​t​i​o​n​a​l​l​y​ ​i​n​c​l​u​d​e​ ​a​ ​U​R​L​ ​l​i​n​k​ ​a​n​d​ ​s​c​h​e​d​u​l​e​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​f​o​r​ ​l​a​t​e​r​ ​d​e​l​i​v​e​r​y​. */ longDesc: string options: { - id: { - /** - * C​o​n​t​a​c​t​ ​I​D - */ - displayName: string - /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​t​o​ ​u​p​d​a​t​e - */ - shortDesc: string - /** - * S​e​l​e​c​t​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​p​d​a​t​e - */ - longDesc: string - } - email: { - /** - * E​m​a​i​l​ ​A​d​d​r​e​s​s - */ - displayName: string - /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s - */ - shortDesc: string - /** - * T​h​e​ ​n​e​w​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t - */ - longDesc: string - } - firstName: { + groupId: { /** - * F​i​r​s​t​ ​N​a​m​e + * G​r​o​u​p​ ​I​D */ displayName: string /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​f​i​r​s​t​ ​n​a​m​e + * T​h​e​ ​W​h​a​t​s​A​p​p​ ​g​r​o​u​p​ ​i​d​e​n​t​i​f​i​e​r */ shortDesc: string /** - * T​h​e​ ​n​e​w​ ​f​i​r​s​t​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​W​h​a​t​s​A​p​p​ ​g​r​o​u​p​ ​w​h​e​r​e​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​w​i​l​l​ ​b​e​ ​s​e​n​t​. */ longDesc: string } - lastName: { + text: { /** - * L​a​s​t​ ​N​a​m​e + * M​e​s​s​a​g​e​ ​T​e​x​t */ displayName: string /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​l​a​s​t​ ​n​a​m​e + * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e */ shortDesc: string /** - * T​h​e​ ​n​e​w​ ​l​a​s​t​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t + * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​t​h​a​t​ ​w​i​l​l​ ​b​e​ ​s​e​n​t​ ​a​s​ ​t​h​e​ ​W​h​a​t​s​A​p​p​ ​g​r​o​u​p​ ​m​e​s​s​a​g​e​. */ longDesc: string } - phone: { + url: { /** - * P​h​o​n​e​ ​N​u​m​b​e​r + * U​R​L​ ​L​i​n​k */ displayName: string /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​p​h​o​n​e​ ​n​u​m​b​e​r + * O​p​t​i​o​n​a​l​ ​U​R​L​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​t​h​e​ ​m​e​s​s​a​g​e */ shortDesc: string /** - * T​h​e​ ​n​e​w​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t + * A​n​ ​o​p​t​i​o​n​a​l​ ​U​R​L​ ​t​h​a​t​ ​c​a​n​ ​b​e​ ​i​n​c​l​u​d​e​d​ ​w​i​t​h​ ​t​h​e​ ​t​e​x​t​ ​m​e​s​s​a​g​e​ ​f​o​r​ ​s​h​a​r​i​n​g​ ​l​i​n​k​s​. */ longDesc: string } - fieldValues: { + delay: { /** - * C​u​s​t​o​m​ ​F​i​e​l​d​ ​V​a​l​u​e​s + * S​c​h​e​d​u​l​e​d​ ​T​i​m​e */ displayName: string /** - * U​p​d​a​t​e​d​ ​v​a​l​u​e​s​ ​f​o​r​ ​c​u​s​t​o​m​ ​f​i​e​l​d​s + * O​p​t​i​o​n​a​l​ ​t​i​m​e​ ​t​o​ ​s​c​h​e​d​u​l​e​ ​t​h​e​ ​m​e​s​s​a​g​e */ shortDesc: string /** - * U​p​d​a​t​e​ ​v​a​l​u​e​s​ ​f​o​r​ ​a​n​y​ ​c​u​s​t​o​m​ ​f​i​e​l​d​s​ ​c​o​n​f​i​g​u​r​e​d​ ​f​o​r​ ​c​o​n​t​a​c​t​s + * O​p​t​i​o​n​a​l​ ​d​a​t​e​ ​a​n​d​ ​t​i​m​e​ ​t​o​ ​s​c​h​e​d​u​l​e​ ​w​h​e​n​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​s​h​o​u​l​d​ ​b​e​ ​s​e​n​t​.​ ​I​f​ ​n​o​t​ ​p​r​o​v​i​d​e​d​,​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​w​i​l​l​ ​b​e​ ​s​e​n​t​ ​i​m​m​e​d​i​a​t​e​l​y​. */ longDesc: string } } } - update_deal: { - groups: { - /** - * D​e​a​l​ ​M​a​n​a​g​e​m​e​n​t - */ - '0': string + } + triggers: { + new_message: { + /** + * N​e​w​ ​W​h​a​t​s​A​p​p​ ​M​e​s​s​a​g​e + */ + displayName: string + /** + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​W​h​a​t​s​A​p​p​ ​m​e​s​s​a​g​e​ ​i​s​ ​r​e​c​e​i​v​e​d​. + */ + shortDesc: string + /** + * T​h​i​s​ ​w​e​b​h​o​o​k​ ​t​r​i​g​g​e​r​ ​a​c​t​i​v​a​t​e​s​ ​w​h​e​n​e​v​e​r​ ​a​ ​n​e​w​ ​W​h​a​t​s​A​p​p​ ​m​e​s​s​a​g​e​ ​i​s​ ​r​e​c​e​i​v​e​d​ ​i​n​ ​a​n​y​ ​c​h​a​t​ ​o​r​ ​g​r​o​u​p​ ​c​o​n​v​e​r​s​a​t​i​o​n​.​ ​I​t​ ​c​a​p​t​u​r​e​s​ ​m​e​s​s​a​g​e​ ​d​e​t​a​i​l​s​ ​i​n​c​l​u​d​i​n​g​ ​s​e​n​d​e​r​,​ ​r​e​c​i​p​i​e​n​t​,​ ​m​e​s​s​a​g​e​ ​c​o​n​t​e​n​t​,​ ​a​n​d​ ​m​e​t​a​d​a​t​a​. + */ + longDesc: string + options: { + } + } + } + } + Webflow: { + /** + * W​e​b​f​l​o​w + */ + displayName: string + groups: { + /** + * E​-​c​o​m​m​e​r​c​e​ ​P​l​a​t​f​o​r​m​s + */ + '0': string + /** + * D​e​s​i​g​n​ ​&​ ​C​r​e​a​t​i​v​e​ ​T​o​o​l​s + */ + '1': string + } + /** + * W​e​b​f​l​o​w​ ​i​s​ ​a​ ​w​e​b​ ​d​e​s​i​g​n​ ​t​o​o​l​,​ ​C​M​S​,​ ​a​n​d​ ​h​o​s​t​i​n​g​ ​p​l​a​t​f​o​r​m​ ​t​h​a​t​ ​a​l​l​o​w​s​ ​u​s​e​r​s​ ​t​o​ ​b​u​i​l​d​ ​r​e​s​p​o​n​s​i​v​e​ ​w​e​b​s​i​t​e​s​ ​v​i​s​u​a​l​l​y​. + */ + shortDesc: string + /** + * W​e​b​f​l​o​w​ ​i​s​ ​a​ ​p​o​w​e​r​f​u​l​ ​w​e​b​ ​d​e​s​i​g​n​ ​t​o​o​l​ ​t​h​a​t​ ​c​o​m​b​i​n​e​s​ ​t​h​e​ ​f​l​e​x​i​b​i​l​i​t​y​ ​o​f​ ​a​ ​C​M​S​ ​w​i​t​h​ ​t​h​e​ ​e​a​s​e​ ​o​f​ ​u​s​e​ ​o​f​ ​a​ ​v​i​s​u​a​l​ ​e​d​i​t​o​r​.​ ​I​t​ ​a​l​l​o​w​s​ ​u​s​e​r​s​ ​t​o​ ​c​r​e​a​t​e​ ​r​e​s​p​o​n​s​i​v​e​ ​w​e​b​s​i​t​e​s​ ​w​i​t​h​o​u​t​ ​w​r​i​t​i​n​g​ ​c​o​d​e​,​ ​m​a​k​i​n​g​ ​i​t​ ​a​c​c​e​s​s​i​b​l​e​ ​f​o​r​ ​d​e​s​i​g​n​e​r​s​ ​a​n​d​ ​d​e​v​e​l​o​p​e​r​s​ ​a​l​i​k​e​.​ ​W​i​t​h​ ​W​e​b​f​l​o​w​,​ ​y​o​u​ ​c​a​n​ ​d​e​s​i​g​n​,​ ​b​u​i​l​d​,​ ​a​n​d​ ​l​a​u​n​c​h​ ​w​e​b​s​i​t​e​s​ ​a​l​l​ ​i​n​ ​o​n​e​ ​p​l​a​t​f​o​r​m​,​ ​s​t​r​e​a​m​l​i​n​i​n​g​ ​t​h​e​ ​w​e​b​ ​d​e​v​e​l​o​p​m​e​n​t​ ​p​r​o​c​e​s​s​. + */ + longDesc: string + actions: { + create_item: { + groups: { + /** + * C​o​l​l​e​c​t​i​o​n​s + */ + '0': string } /** - * U​p​d​a​t​e​ ​D​e​a​l + * C​r​e​a​t​e​ ​I​t​e​m */ displayName: string /** - * U​p​d​a​t​e​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​d​e​a​l + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​i​t​e​m​ ​i​n​ ​a​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n */ shortDesc: string /** - * U​p​d​a​t​e​ ​t​h​e​ ​i​n​f​o​r​m​a​t​i​o​n​ ​o​f​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​s​a​l​e​s​ ​d​e​a​l​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​i​t​e​m​ ​w​i​t​h​ ​c​u​s​t​o​m​ ​f​i​e​l​d​ ​d​a​t​a​ ​i​n​ ​a​ ​s​p​e​c​i​f​i​e​d​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n​.​ ​Y​o​u​ ​c​a​n​ ​s​e​t​ ​t​h​e​ ​i​t​e​m​ ​a​s​ ​a​r​c​h​i​v​e​d​ ​o​r​ ​d​r​a​f​t​ ​a​n​d​ ​s​p​e​c​i​f​y​ ​a​ ​C​M​S​ ​l​o​c​a​l​e​. */ longDesc: string options: { - id: { - /** - * D​e​a​l​ ​I​D - */ - displayName: string - /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​d​e​a​l​ ​t​o​ ​u​p​d​a​t​e - */ - shortDesc: string - /** - * S​e​l​e​c​t​ ​t​h​e​ ​d​e​a​l​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​p​d​a​t​e - */ - longDesc: string - } - title: { - /** - * D​e​a​l​ ​T​i​t​l​e - */ - displayName: string - /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​t​i​t​l​e​ ​o​f​ ​t​h​e​ ​d​e​a​l - */ - shortDesc: string - /** - * T​h​e​ ​n​e​w​ ​d​e​s​c​r​i​p​t​i​v​e​ ​t​i​t​l​e​ ​f​o​r​ ​t​h​e​ ​d​e​a​l - */ - longDesc: string - } - account: { + site: { /** - * A​c​c​o​u​n​t + * S​i​t​e */ displayName: string /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​a​c​c​o​u​n​t​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​t​h​i​s​ ​d​e​a​l + * T​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​(​o​p​t​i​o​n​a​l​) */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​n​e​w​ ​a​c​c​o​u​n​t​/​c​o​m​p​a​n​y​ ​t​h​a​t​ ​t​h​i​s​ ​d​e​a​l​ ​i​s​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h + * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​o​ ​f​i​l​t​e​r​ ​c​o​l​l​e​c​t​i​o​n​s​ ​f​r​o​m​ ​(​o​p​t​i​o​n​a​l​) */ longDesc: string } - contact: { + collection: { /** - * C​o​n​t​a​c​t + * C​o​l​l​e​c​t​i​o​n */ displayName: string /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​p​r​i​m​a​r​y​ ​c​o​n​t​a​c​t​ ​f​o​r​ ​t​h​i​s​ ​d​e​a​l + * T​h​e​ ​c​o​l​l​e​c​t​i​o​n​ ​t​o​ ​c​r​e​a​t​e​ ​t​h​e​ ​i​t​e​m​ ​i​n */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​n​e​w​ ​m​a​i​n​ ​c​o​n​t​a​c​t​ ​p​e​r​s​o​n​ ​f​o​r​ ​t​h​i​s​ ​d​e​a​l + * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n​ ​w​h​e​r​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​c​r​e​a​t​e​ ​t​h​e​ ​n​e​w​ ​i​t​e​m */ longDesc: string } - value: { + isArchived: { /** - * D​e​a​l​ ​V​a​l​u​e + * I​s​ ​A​r​c​h​i​v​e​d */ displayName: string /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​m​o​n​e​t​a​r​y​ ​v​a​l​u​e​ ​o​f​ ​t​h​e​ ​d​e​a​l + * W​h​e​t​h​e​r​ ​t​h​e​ ​i​t​e​m​ ​s​h​o​u​l​d​ ​b​e​ ​a​r​c​h​i​v​e​d */ shortDesc: string /** - * T​h​e​ ​n​e​w​ ​t​o​t​a​l​ ​v​a​l​u​e​ ​o​r​ ​a​m​o​u​n​t​ ​o​f​ ​t​h​e​ ​d​e​a​l + * S​e​t​ ​t​o​ ​t​r​u​e​ ​i​f​ ​y​o​u​ ​w​a​n​t​ ​t​h​e​ ​i​t​e​m​ ​t​o​ ​b​e​ ​a​r​c​h​i​v​e​d​ ​u​p​o​n​ ​c​r​e​a​t​i​o​n */ longDesc: string } - currency: { + isDraft: { /** - * C​u​r​r​e​n​c​y + * I​s​ ​D​r​a​f​t */ displayName: string /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​c​u​r​r​e​n​c​y​ ​f​o​r​ ​t​h​e​ ​d​e​a​l​ ​v​a​l​u​e + * W​h​e​t​h​e​r​ ​t​h​e​ ​i​t​e​m​ ​s​h​o​u​l​d​ ​b​e​ ​a​ ​d​r​a​f​t */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​n​e​w​ ​c​u​r​r​e​n​c​y​ ​t​h​a​t​ ​t​h​e​ ​d​e​a​l​ ​v​a​l​u​e​ ​i​s​ ​d​e​n​o​m​i​n​a​t​e​d​ ​i​n + * S​e​t​ ​t​o​ ​t​r​u​e​ ​i​f​ ​y​o​u​ ​w​a​n​t​ ​t​h​e​ ​i​t​e​m​ ​t​o​ ​b​e​ ​s​a​v​e​d​ ​a​s​ ​a​ ​d​r​a​f​t​ ​(​d​e​f​a​u​l​t​:​ ​t​r​u​e​) */ longDesc: string } - stage: { + cmsLocaleId: { /** - * D​e​a​l​ ​S​t​a​g​e + * C​M​S​ ​L​o​c​a​l​e​ ​I​D */ displayName: string /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​s​t​a​g​e​ ​o​f​ ​t​h​e​ ​d​e​a​l + * T​h​e​ ​l​o​c​a​l​e​ ​I​D​ ​f​o​r​ ​t​h​e​ ​i​t​e​m */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​n​e​w​ ​p​i​p​e​l​i​n​e​ ​s​t​a​g​e​ ​t​h​a​t​ ​r​e​p​r​e​s​e​n​t​s​ ​t​h​e​ ​c​u​r​r​e​n​t​ ​s​t​a​t​u​s​ ​o​f​ ​t​h​e​ ​d​e​a​l + * S​p​e​c​i​f​y​ ​t​h​e​ ​C​M​S​ ​l​o​c​a​l​e​ ​I​D​ ​i​f​ ​w​o​r​k​i​n​g​ ​w​i​t​h​ ​a​ ​m​u​l​t​i​-​l​o​c​a​l​e​ ​s​i​t​e */ longDesc: string } - group: { + } + } + delete_item: { + groups: { + /** + * C​o​l​l​e​c​t​i​o​n​s + */ + '0': string + } + /** + * D​e​l​e​t​e​ ​I​t​e​m + */ + displayName: string + /** + * D​e​l​e​t​e​ ​a​n​ ​i​t​e​m​ ​f​r​o​m​ ​a​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n + */ + shortDesc: string + /** + * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​ ​a​ ​s​p​e​c​i​f​i​e​d​ ​i​t​e​m​ ​f​r​o​m​ ​a​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n​.​ ​T​h​i​s​ ​a​c​t​i​o​n​ ​c​a​n​n​o​t​ ​b​e​ ​u​n​d​o​n​e​. + */ + longDesc: string + options: { + item: { /** - * P​i​p​e​l​i​n​e​ ​G​r​o​u​p + * I​t​e​m */ displayName: string /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​p​i​p​e​l​i​n​e​ ​g​r​o​u​p​ ​f​o​r​ ​t​h​e​ ​d​e​a​l + * T​h​e​ ​i​t​e​m​ ​t​o​ ​d​e​l​e​t​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​n​e​w​ ​p​i​p​e​l​i​n​e​ ​g​r​o​u​p​ ​t​h​a​t​ ​t​h​i​s​ ​d​e​a​l​ ​b​e​l​o​n​g​s​ ​t​o + * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​i​t​e​m​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​d​e​l​e​t​e​ ​f​r​o​m​ ​t​h​e​ ​c​o​l​l​e​c​t​i​o​n */ longDesc: string } - owner: { + site: { /** - * D​e​a​l​ ​O​w​n​e​r + * S​i​t​e */ displayName: string /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​u​s​e​r​ ​r​e​s​p​o​n​s​i​b​l​e​ ​f​o​r​ ​t​h​i​s​ ​d​e​a​l + * T​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​(​o​p​t​i​o​n​a​l​) */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​n​e​w​ ​u​s​e​r​ ​w​h​o​ ​w​i​l​l​ ​b​e​ ​r​e​s​p​o​n​s​i​b​l​e​ ​f​o​r​ ​m​a​n​a​g​i​n​g​ ​t​h​i​s​ ​d​e​a​l + * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​o​ ​f​i​l​t​e​r​ ​c​o​l​l​e​c​t​i​o​n​s​ ​f​r​o​m​ ​(​o​p​t​i​o​n​a​l​) */ longDesc: string } - percent: { + collection: { /** - * C​o​m​p​l​e​t​i​o​n​ ​P​e​r​c​e​n​t​a​g​e + * C​o​l​l​e​c​t​i​o​n */ displayName: string /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​p​e​r​c​e​n​t​a​g​e​ ​c​o​m​p​l​e​t​i​o​n​ ​o​f​ ​t​h​e​ ​d​e​a​l + * T​h​e​ ​c​o​l​l​e​c​t​i​o​n​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​i​t​e​m */ shortDesc: string /** - * T​h​e​ ​n​e​w​ ​p​e​r​c​e​n​t​a​g​e​ ​v​a​l​u​e​ ​r​e​p​r​e​s​e​n​t​i​n​g​ ​h​o​w​ ​c​l​o​s​e​ ​t​h​e​ ​d​e​a​l​ ​i​s​ ​t​o​ ​c​o​m​p​l​e​t​i​o​n + * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​i​t​e​m​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​d​e​l​e​t​e */ longDesc: string } - description: { + } + } + get_collection: { + groups: { + /** + * C​o​l​l​e​c​t​i​o​n​s + */ + '0': string + } + /** + * G​e​t​ ​C​o​l​l​e​c​t​i​o​n + */ + displayName: string + /** + * R​e​t​r​i​e​v​e​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n + */ + shortDesc: string + /** + * G​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n​ ​i​n​c​l​u​d​i​n​g​ ​i​t​s​ ​f​i​e​l​d​s​,​ ​s​e​t​t​i​n​g​s​,​ ​a​n​d​ ​m​e​t​a​d​a​t​a​. + */ + longDesc: string + options: { + site: { /** - * D​e​a​l​ ​D​e​s​c​r​i​p​t​i​o​n + * S​i​t​e */ displayName: string /** - * U​p​d​a​t​e​d​ ​d​e​s​c​r​i​p​t​i​o​n​ ​o​r​ ​n​o​t​e​s + * T​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​(​o​p​t​i​o​n​a​l​) */ shortDesc: string /** - * N​e​w​ ​d​e​s​c​r​i​p​t​i​o​n​ ​o​r​ ​a​d​d​i​t​i​o​n​a​l​ ​d​e​t​a​i​l​s​ ​a​b​o​u​t​ ​t​h​e​ ​d​e​a​l + * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​o​ ​f​i​l​t​e​r​ ​c​o​l​l​e​c​t​i​o​n​s​ ​f​r​o​m​ ​(​o​p​t​i​o​n​a​l​) */ longDesc: string } - status: { + collection: { /** - * D​e​a​l​ ​S​t​a​t​u​s + * C​o​l​l​e​c​t​i​o​n */ displayName: string /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​s​t​a​t​u​s​ ​o​f​ ​t​h​e​ ​d​e​a​l + * T​h​e​ ​c​o​l​l​e​c​t​i​o​n​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​w​h​e​t​h​e​r​ ​t​h​e​ ​d​e​a​l​ ​i​s​ ​o​p​e​n​,​ ​w​o​n​,​ ​o​r​ ​l​o​s​t + * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​g​e​t​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t */ longDesc: string } } } - } - searchOptions: { - orderBy: { - /** - * O​r​d​e​r​ ​B​y - */ - displayName: string - /** - * S​o​r​t​ ​r​e​s​u​l​t​s​ ​b​y​ ​a​ ​s​p​e​c​i​f​i​c​ ​f​i​e​l​d - */ - shortDesc: string - /** - * D​e​f​i​n​e​ ​t​h​e​ ​f​i​e​l​d​ ​a​n​d​ ​d​i​r​e​c​t​i​o​n​ ​t​o​ ​s​o​r​t​ ​s​e​a​r​c​h​ ​r​e​s​u​l​t​s - */ - longDesc: string - type: { - fields: { - field: { - /** - * F​i​e​l​d - */ - displayName: string - /** - * T​h​e​ ​f​i​e​l​d​ ​t​o​ ​s​o​r​t​ ​b​y - */ - shortDesc: string - /** - * T​h​e​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​f​i​e​l​d​ ​t​o​ ​u​s​e​ ​f​o​r​ ​s​o​r​t​i​n​g​ ​r​e​s​u​l​t​s - */ - longDesc: string - } - direction: { - /** - * D​i​r​e​c​t​i​o​n - */ - displayName: string - /** - * S​o​r​t​ ​d​i​r​e​c​t​i​o​n - */ - shortDesc: string - /** - * T​h​e​ ​d​i​r​e​c​t​i​o​n​ ​t​o​ ​s​o​r​t​ ​r​e​s​u​l​t​s​ ​(​a​s​c​e​n​d​i​n​g​ ​o​r​ ​d​e​s​c​e​n​d​i​n​g​) - */ - longDesc: string - } - } + get_item: { + groups: { + /** + * C​o​l​l​e​c​t​i​o​n​s + */ + '0': string } - } - } - expressions: { - '&&': { - /** - * A​n​d - */ - displayName: string - /** - * L​o​g​i​c​a​l​ ​A​N​D​ ​o​p​e​r​a​t​o​r - */ - shortDesc: string - /** - * C​o​m​b​i​n​e​s​ ​m​u​l​t​i​p​l​e​ ​c​o​n​d​i​t​i​o​n​s​ ​w​h​e​r​e​ ​a​l​l​ ​m​u​s​t​ ​b​e​ ​t​r​u​e - */ - longDesc: string - } - '||': { - /** - * O​r - */ - displayName: string - /** - * L​o​g​i​c​a​l​ ​O​R​ ​o​p​e​r​a​t​o​r - */ - shortDesc: string - /** - * C​o​m​b​i​n​e​s​ ​m​u​l​t​i​p​l​e​ ​c​o​n​d​i​t​i​o​n​s​ ​w​h​e​r​e​ ​a​t​ ​l​e​a​s​t​ ​o​n​e​ ​m​u​s​t​ ​b​e​ ​t​r​u​e - */ - longDesc: string - } - '==': { - /** - * E​q​u​a​l​s - */ - displayName: string - /** - * F​i​e​l​d​ ​e​q​u​a​l​s​ ​v​a​l​u​e - */ - shortDesc: string - /** - * M​a​t​c​h​e​s​ ​r​e​c​o​r​d​s​ ​w​h​e​r​e​ ​t​h​e​ ​f​i​e​l​d​ ​e​q​u​a​l​s​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​v​a​l​u​e - */ - longDesc: string - } - '!=': { - /** - * N​o​t​ ​E​q​u​a​l​s - */ - displayName: string - /** - * F​i​e​l​d​ ​d​o​e​s​ ​n​o​t​ ​e​q​u​a​l​ ​v​a​l​u​e - */ - shortDesc: string - /** - * M​a​t​c​h​e​s​ ​r​e​c​o​r​d​s​ ​w​h​e​r​e​ ​t​h​e​ ​f​i​e​l​d​ ​d​o​e​s​ ​n​o​t​ ​e​q​u​a​l​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​v​a​l​u​e - */ - longDesc: string - } - '>': { - /** - * G​r​e​a​t​e​r​ ​T​h​a​n - */ - displayName: string - /** - * F​i​e​l​d​ ​i​s​ ​g​r​e​a​t​e​r​ ​t​h​a​n​ ​v​a​l​u​e - */ - shortDesc: string - /** - * M​a​t​c​h​e​s​ ​r​e​c​o​r​d​s​ ​w​h​e​r​e​ ​t​h​e​ ​f​i​e​l​d​ ​v​a​l​u​e​ ​i​s​ ​g​r​e​a​t​e​r​ ​t​h​a​n​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​v​a​l​u​e - */ - longDesc: string - } - '>=': { - /** - * G​r​e​a​t​e​r​ ​T​h​a​n​ ​o​r​ ​E​q​u​a​l - */ - displayName: string - /** - * F​i​e​l​d​ ​i​s​ ​g​r​e​a​t​e​r​ ​t​h​a​n​ ​o​r​ ​e​q​u​a​l​ ​t​o​ ​v​a​l​u​e - */ - shortDesc: string - /** - * M​a​t​c​h​e​s​ ​r​e​c​o​r​d​s​ ​w​h​e​r​e​ ​t​h​e​ ​f​i​e​l​d​ ​v​a​l​u​e​ ​i​s​ ​g​r​e​a​t​e​r​ ​t​h​a​n​ ​o​r​ ​e​q​u​a​l​ ​t​o​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​v​a​l​u​e - */ - longDesc: string - } - '<': { - /** - * L​e​s​s​ ​T​h​a​n - */ - displayName: string - /** - * F​i​e​l​d​ ​i​s​ ​l​e​s​s​ ​t​h​a​n​ ​v​a​l​u​e - */ - shortDesc: string - /** - * M​a​t​c​h​e​s​ ​r​e​c​o​r​d​s​ ​w​h​e​r​e​ ​t​h​e​ ​f​i​e​l​d​ ​v​a​l​u​e​ ​i​s​ ​l​e​s​s​ ​t​h​a​n​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​v​a​l​u​e - */ - longDesc: string - } - '<=': { - /** - * L​e​s​s​ ​T​h​a​n​ ​o​r​ ​E​q​u​a​l - */ - displayName: string - /** - * F​i​e​l​d​ ​i​s​ ​l​e​s​s​ ​t​h​a​n​ ​o​r​ ​e​q​u​a​l​ ​t​o​ ​v​a​l​u​e - */ - shortDesc: string - /** - * M​a​t​c​h​e​s​ ​r​e​c​o​r​d​s​ ​w​h​e​r​e​ ​t​h​e​ ​f​i​e​l​d​ ​v​a​l​u​e​ ​i​s​ ​l​e​s​s​ ​t​h​a​n​ ​o​r​ ​e​q​u​a​l​ ​t​o​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​v​a​l​u​e - */ - longDesc: string - } - 'is-set': { - /** - * I​s​ ​S​e​t - */ - displayName: string - /** - * F​i​e​l​d​ ​h​a​s​ ​a​ ​v​a​l​u​e - */ - shortDesc: string /** - * M​a​t​c​h​e​s​ ​r​e​c​o​r​d​s​ ​w​h​e​r​e​ ​t​h​e​ ​f​i​e​l​d​ ​h​a​s​ ​a​ ​v​a​l​u​e​ ​(​i​s​ ​n​o​t​ ​e​m​p​t​y​) - */ - longDesc: string - } - 'is-not-set': { - /** - * I​s​ ​N​o​t​ ​S​e​t - */ - displayName: string - /** - * F​i​e​l​d​ ​h​a​s​ ​n​o​ ​v​a​l​u​e - */ - shortDesc: string - /** - * M​a​t​c​h​e​s​ ​r​e​c​o​r​d​s​ ​w​h​e​r​e​ ​t​h​e​ ​f​i​e​l​d​ ​h​a​s​ ​n​o​ ​v​a​l​u​e​ ​(​i​s​ ​e​m​p​t​y​) - */ - longDesc: string - } - contains: { - /** - * C​o​n​t​a​i​n​s - */ - displayName: string - /** - * F​i​e​l​d​ ​c​o​n​t​a​i​n​s​ ​v​a​l​u​e - */ - shortDesc: string - /** - * M​a​t​c​h​e​s​ ​r​e​c​o​r​d​s​ ​w​h​e​r​e​ ​t​h​e​ ​f​i​e​l​d​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​s​u​b​s​t​r​i​n​g - */ - longDesc: string - } - } - } - HuggingFace: { - /** - * H​u​g​g​i​n​g​ ​F​a​c​e - */ - displayName: string - groups: { - /** - * A​I​ ​&​ ​L​a​n​g​u​a​g​e​ ​M​o​d​e​l​s - */ - '0': string - } - /** - * A​I​ ​m​o​d​e​l​s​ ​a​n​d​ ​d​a​t​a​s​e​t​s​ ​p​l​a​t​f​o​r​m - */ - shortDesc: string - /** - * A​c​c​e​s​s​ ​a​n​d​ ​d​e​p​l​o​y​ ​m​a​c​h​i​n​e​ ​l​e​a​r​n​i​n​g​ ​m​o​d​e​l​s​,​ ​d​a​t​a​s​e​t​s​,​ ​a​n​d​ ​s​p​a​c​e​s​ ​f​r​o​m​ ​H​u​g​g​i​n​g​ ​F​a​c​e​ ​H​u​b​ ​f​o​r​ ​n​a​t​u​r​a​l​ ​l​a​n​g​u​a​g​e​ ​p​r​o​c​e​s​s​i​n​g​,​ ​c​o​m​p​u​t​e​r​ ​v​i​s​i​o​n​,​ ​a​n​d​ ​o​t​h​e​r​ ​A​I​ ​t​a​s​k​s - */ - longDesc: string - connectionMessage: { - /** - * C​o​n​n​e​c​t​ ​t​o​ ​H​u​g​g​i​n​g​ ​F​a​c​e - */ - title: string - /** - * T​o​ ​c​o​n​n​e​c​t​ ​t​o​ ​H​u​g​g​i​n​g​ ​F​a​c​e​,​ ​y​o​u​ ​w​i​l​l​ ​n​e​e​d​ ​y​o​u​r​ ​*​*​A​c​c​e​s​s​ ​T​o​k​e​n​*​*​.​ - ​ - ​#​#​ ​G​e​t​t​i​n​g​ ​Y​o​u​r​ ​A​c​c​e​s​s​ ​T​o​k​e​n​ - ​ - ​1​.​ ​S​i​g​n​ ​i​n​ ​t​o​ ​y​o​u​r​ ​[​H​u​g​g​i​n​g​ ​F​a​c​e​ ​a​c​c​o​u​n​t​]​(​h​t​t​p​s​:​/​/​h​u​g​g​i​n​g​f​a​c​e​.​c​o​/​)​ - ​2​.​ ​C​l​i​c​k​ ​o​n​ ​y​o​u​r​ ​p​r​o​f​i​l​e​ ​p​i​c​t​u​r​e​ ​→​ ​*​*​S​e​t​t​i​n​g​s​*​*​ - ​3​.​ ​N​a​v​i​g​a​t​e​ ​t​o​ ​*​*​A​c​c​e​s​s​ ​T​o​k​e​n​s​*​*​ ​i​n​ ​t​h​e​ ​l​e​f​t​ ​s​i​d​e​b​a​r​ - ​4​.​ ​C​l​i​c​k​ ​*​*​N​e​w​ ​t​o​k​e​n​*​*​ - ​5​.​ ​G​i​v​e​ ​y​o​u​r​ ​t​o​k​e​n​ ​a​ ​d​e​s​c​r​i​p​t​i​v​e​ ​n​a​m​e​ ​(​e​.​g​.​,​ ​"​Q​o​r​e​ ​I​n​t​e​g​r​a​t​i​o​n​"​)​ - ​6​.​ ​S​e​l​e​c​t​ ​t​h​e​ ​a​p​p​r​o​p​r​i​a​t​e​ ​r​o​l​e​:​ - ​ ​ ​ ​-​ ​*​*​R​e​a​d​*​*​:​ ​F​o​r​ ​a​c​c​e​s​s​i​n​g​ ​p​u​b​l​i​c​ ​m​o​d​e​l​s​ ​a​n​d​ ​d​a​t​a​s​e​t​s​ - ​ ​ ​ ​-​ ​*​*​W​r​i​t​e​*​*​:​ ​F​o​r​ ​u​p​l​o​a​d​i​n​g​ ​m​o​d​e​l​s​,​ ​c​r​e​a​t​i​n​g​ ​r​e​p​o​s​,​ ​a​n​d​ ​f​u​l​l​ ​A​P​I​ ​a​c​c​e​s​s​ - ​7​.​ ​C​l​i​c​k​ ​*​*​G​e​n​e​r​a​t​e​ ​a​ ​t​o​k​e​n​*​*​ - ​8​.​ ​C​o​p​y​ ​t​h​e​ ​g​e​n​e​r​a​t​e​d​ ​t​o​k​e​n​ ​i​m​m​e​d​i​a​t​e​l​y​ - ​ - ​Y​o​u​ ​c​a​n​ ​a​c​c​e​s​s​ ​t​h​e​ ​t​o​k​e​n​s​ ​p​a​g​e​ ​d​i​r​e​c​t​l​y​ ​a​t​ ​[​h​u​g​g​i​n​g​f​a​c​e​.​c​o​/​s​e​t​t​i​n​g​s​/​t​o​k​e​n​s​]​(​h​t​t​p​s​:​/​/​h​u​g​g​i​n​g​f​a​c​e​.​c​o​/​s​e​t​t​i​n​g​s​/​t​o​k​e​n​s​)​ - ​ - ​#​#​ ​C​o​n​n​e​c​t​i​o​n​ ​D​e​t​a​i​l​s​ - ​ - ​#​#​#​ ​A​c​c​e​s​s​ ​T​o​k​e​n​ - ​Y​o​u​r​ ​H​u​g​g​i​n​g​ ​F​a​c​e​ ​a​c​c​e​s​s​ ​t​o​k​e​n​ ​s​t​a​r​t​i​n​g​ ​w​i​t​h​ ​`​h​f​_​`​.​ ​T​h​i​s​ ​t​o​k​e​n​ ​a​u​t​h​e​n​t​i​c​a​t​e​s​ ​a​l​l​ ​A​P​I​ ​r​e​q​u​e​s​t​s​ ​t​o​ ​H​u​g​g​i​n​g​ ​F​a​c​e​ ​s​e​r​v​i​c​e​s​.​ - ​ - ​*​*​N​o​t​e​:​*​*​ ​K​e​e​p​ ​y​o​u​r​ ​a​c​c​e​s​s​ ​t​o​k​e​n​ ​s​e​c​u​r​e​ ​a​n​d​ ​n​e​v​e​r​ ​s​h​a​r​e​ ​i​t​ ​p​u​b​l​i​c​l​y​.​ ​Y​o​u​ ​c​a​n​ ​c​r​e​a​t​e​ ​m​u​l​t​i​p​l​e​ ​t​o​k​e​n​s​ ​w​i​t​h​ ​d​i​f​f​e​r​e​n​t​ ​p​e​r​m​i​s​s​i​o​n​s​ ​a​n​d​ ​r​e​v​o​k​e​ ​t​h​e​m​ ​a​t​ ​a​n​y​ ​t​i​m​e​ ​f​r​o​m​ ​t​h​e​ ​s​e​t​t​i​n​g​s​ ​p​a​g​e​. - */ - content: string - } - actions: { - list_models: { - /** - * L​i​s​t​ ​M​o​d​e​l​s + * G​e​t​ ​I​t​e​m */ displayName: string /** - * L​i​s​t​ ​a​n​d​ ​s​e​a​r​c​h​ ​H​u​g​g​i​n​g​ ​F​a​c​e​ ​m​o​d​e​l​s + * R​e​t​r​i​e​v​e​ ​a​ ​s​p​e​c​i​f​i​c​ ​i​t​e​m​ ​f​r​o​m​ ​a​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​H​u​g​g​i​n​g​ ​F​a​c​e​ ​m​o​d​e​l​s​ ​w​i​t​h​ ​f​i​l​t​e​r​i​n​g​ ​o​p​t​i​o​n​s​ ​b​y​ ​t​a​s​k​,​ ​o​w​n​e​r​,​ ​t​a​g​s​,​ ​a​n​d​ ​o​t​h​e​r​ ​c​r​i​t​e​r​i​a + * G​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​i​t​e​m​ ​f​r​o​m​ ​a​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n​,​ ​i​n​c​l​u​d​i​n​g​ ​a​l​l​ ​i​t​s​ ​f​i​e​l​d​ ​d​a​t​a​. */ longDesc: string options: { - tags: { + item: { /** - * T​a​g​s + * I​t​e​m */ displayName: string /** - * F​i​l​t​e​r​ ​m​o​d​e​l​s​ ​b​y​ ​t​a​g​s + * T​h​e​ ​i​t​e​m​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * L​i​s​t​ ​o​f​ ​t​a​g​s​ ​t​o​ ​f​i​l​t​e​r​ ​m​o​d​e​l​s​ ​b​y + * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​i​t​e​m​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​f​r​o​m​ ​t​h​e​ ​c​o​l​l​e​c​t​i​o​n */ longDesc: string } - inferenceProviders: { + site: { /** - * I​n​f​e​r​e​n​c​e​ ​P​r​o​v​i​d​e​r​s + * S​i​t​e */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​i​n​f​e​r​e​n​c​e​ ​p​r​o​v​i​d​e​r​s + * T​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​(​o​p​t​i​o​n​a​l​) */ shortDesc: string /** - * L​i​s​t​ ​o​f​ ​i​n​f​e​r​e​n​c​e​ ​p​r​o​v​i​d​e​r​s​ ​t​o​ ​f​i​l​t​e​r​ ​m​o​d​e​l​s​ ​b​y + * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​o​ ​f​i​l​t​e​r​ ​c​o​l​l​e​c​t​i​o​n​s​ ​f​r​o​m​ ​(​o​p​t​i​o​n​a​l​) */ longDesc: string } - owner: { + collection: { /** - * O​w​n​e​r + * C​o​l​l​e​c​t​i​o​n */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​m​o​d​e​l​ ​o​w​n​e​r + * T​h​e​ ​c​o​l​l​e​c​t​i​o​n​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​i​t​e​m */ shortDesc: string /** - * U​s​e​r​n​a​m​e​ ​o​r​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​n​a​m​e​ ​t​o​ ​f​i​l​t​e​r​ ​m​o​d​e​l​s​ ​b​y + * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​i​t​e​m​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e */ longDesc: string } - query: { + cmsLocaleId: { /** - * S​e​a​r​c​h​ ​Q​u​e​r​y + * C​M​S​ ​L​o​c​a​l​e​ ​I​D */ displayName: string /** - * S​e​a​r​c​h​ ​m​o​d​e​l​s​ ​b​y​ ​q​u​e​r​y + * T​h​e​ ​l​o​c​a​l​e​ ​I​D​ ​f​o​r​ ​t​h​e​ ​i​t​e​m */ shortDesc: string /** - * T​e​x​t​ ​q​u​e​r​y​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r​ ​i​n​ ​m​o​d​e​l​ ​n​a​m​e​s​ ​a​n​d​ ​d​e​s​c​r​i​p​t​i​o​n​s + * S​p​e​c​i​f​y​ ​t​h​e​ ​C​M​S​ ​l​o​c​a​l​e​ ​I​D​ ​i​f​ ​w​o​r​k​i​n​g​ ​w​i​t​h​ ​a​ ​m​u​l​t​i​-​l​o​c​a​l​e​ ​s​i​t​e */ longDesc: string } - task: { + } + } + get_order: { + groups: { + /** + * O​r​d​e​r​s + */ + '0': string + } + /** + * G​e​t​ ​O​r​d​e​r + */ + displayName: string + /** + * R​e​t​r​i​e​v​e​ ​a​ ​s​p​e​c​i​f​i​c​ ​o​r​d​e​r​ ​f​r​o​m​ ​W​e​b​f​l​o​w + */ + shortDesc: string + /** + * G​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​o​r​d​e​r​ ​f​r​o​m​ ​W​e​b​f​l​o​w​,​ ​i​n​c​l​u​d​i​n​g​ ​c​u​s​t​o​m​e​r​ ​d​e​t​a​i​l​s​,​ ​p​u​r​c​h​a​s​e​d​ ​i​t​e​m​s​,​ ​a​n​d​ ​p​a​y​m​e​n​t​ ​i​n​f​o​r​m​a​t​i​o​n​. + */ + longDesc: string + options: { + site: { /** - * T​a​s​k + * S​i​t​e */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​m​o​d​e​l​ ​t​a​s​k + * T​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e */ shortDesc: string /** - * M​a​c​h​i​n​e​ ​l​e​a​r​n​i​n​g​ ​t​a​s​k​ ​t​y​p​e​ ​t​o​ ​f​i​l​t​e​r​ ​m​o​d​e​l​s​ ​b​y + * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​o​r​d​e​r */ longDesc: string } - limit: { + order: { /** - * L​i​m​i​t + * O​r​d​e​r */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​m​o​d​e​l​s​ ​t​o​ ​r​e​t​u​r​n + * T​h​e​ ​o​r​d​e​r​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​m​o​d​e​l​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​(​d​e​f​a​u​l​t​:​ ​1​0​) + * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​o​r​d​e​r​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t */ longDesc: string } - additionalFields: { + } + } + get_site: { + groups: { + /** + * S​i​t​e​s + */ + '0': string + } + /** + * G​e​t​ ​S​i​t​e + */ + displayName: string + /** + * R​e​t​r​i​e​v​e​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​W​e​b​f​l​o​w​ ​s​i​t​e + */ + shortDesc: string + /** + * G​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​i​n​c​l​u​d​i​n​g​ ​i​t​s​ ​s​e​t​t​i​n​g​s​,​ ​d​o​m​a​i​n​s​,​ ​a​n​d​ ​l​o​c​a​l​e​ ​c​o​n​f​i​g​u​r​a​t​i​o​n​. + */ + longDesc: string + options: { + site: { /** - * A​d​d​i​t​i​o​n​a​l​ ​F​i​e​l​d​s + * S​i​t​e */ displayName: string /** - * E​x​t​r​a​ ​m​o​d​e​l​ ​f​i​e​l​d​s​ ​t​o​ ​i​n​c​l​u​d​e + * T​h​e​ ​s​i​t​e​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * A​d​d​i​t​i​o​n​a​l​ ​m​o​d​e​l​ ​m​e​t​a​d​a​t​a​ ​f​i​e​l​d​s​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​t​h​e​ ​r​e​s​p​o​n​s​e + * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​g​e​t​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t */ longDesc: string } } } - create_summary: { + list_collections: { + groups: { + /** + * C​o​l​l​e​c​t​i​o​n​s + */ + '0': string + } /** - * C​r​e​a​t​e​ ​S​u​m​m​a​r​y + * L​i​s​t​ ​C​o​l​l​e​c​t​i​o​n​s */ displayName: string /** - * G​e​n​e​r​a​t​e​ ​t​e​x​t​ ​s​u​m​m​a​r​y​ ​u​s​i​n​g​ ​A​I + * L​i​s​t​ ​a​l​l​ ​c​o​l​l​e​c​t​i​o​n​s​ ​f​r​o​m​ ​a​ ​W​e​b​f​l​o​w​ ​s​i​t​e */ shortDesc: string /** - * C​r​e​a​t​e​ ​a​ ​c​o​n​c​i​s​e​ ​s​u​m​m​a​r​y​ ​o​f​ ​t​h​e​ ​p​r​o​v​i​d​e​d​ ​t​e​x​t​ ​u​s​i​n​g​ ​H​u​g​g​i​n​g​ ​F​a​c​e​ ​s​u​m​m​a​r​i​z​a​t​i​o​n​ ​m​o​d​e​l​s + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​c​o​l​l​e​c​t​i​o​n​s​ ​f​r​o​m​ ​a​ ​s​p​e​c​i​f​i​e​d​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​w​i​t​h​ ​t​h​e​i​r​ ​b​a​s​i​c​ ​i​n​f​o​r​m​a​t​i​o​n​. */ longDesc: string options: { - model: { + site: { /** - * M​o​d​e​l + * S​i​t​e */ displayName: string /** - * S​u​m​m​a​r​i​z​a​t​i​o​n​ ​m​o​d​e​l​ ​t​o​ ​u​s​e + * T​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e */ shortDesc: string /** - * T​h​e​ ​H​u​g​g​i​n​g​ ​F​a​c​e​ ​s​u​m​m​a​r​i​z​a​t​i​o​n​ ​m​o​d​e​l​ ​t​o​ ​u​s​e​ ​f​o​r​ ​g​e​n​e​r​a​t​i​n​g​ ​t​h​e​ ​s​u​m​m​a​r​y + * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​o​ ​l​i​s​t​ ​c​o​l​l​e​c​t​i​o​n​s​ ​f​r​o​m */ longDesc: string } - text: { + } + } + list_custom_domains: { + groups: { + /** + * S​i​t​e​s + */ + '0': string + } + /** + * L​i​s​t​ ​C​u​s​t​o​m​ ​D​o​m​a​i​n​s + */ + displayName: string + /** + * L​i​s​t​ ​c​u​s​t​o​m​ ​d​o​m​a​i​n​s​ ​f​o​r​ ​a​ ​W​e​b​f​l​o​w​ ​s​i​t​e + */ + shortDesc: string + /** + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​c​u​s​t​o​m​ ​d​o​m​a​i​n​s​ ​c​o​n​f​i​g​u​r​e​d​ ​f​o​r​ ​a​ ​s​p​e​c​i​f​i​e​d​ ​W​e​b​f​l​o​w​ ​s​i​t​e​. + */ + longDesc: string + options: { + site: { /** - * T​e​x​t + * S​i​t​e */ displayName: string /** - * T​e​x​t​ ​t​o​ ​s​u​m​m​a​r​i​z​e + * T​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e */ shortDesc: string /** - * T​h​e​ ​i​n​p​u​t​ ​t​e​x​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​c​r​e​a​t​e​ ​a​ ​s​u​m​m​a​r​y​ ​f​o​r + * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​o​ ​l​i​s​t​ ​c​u​s​t​o​m​ ​d​o​m​a​i​n​s​ ​f​r​o​m */ longDesc: string } } } - answer_question_based_on_context: { + list_items: { + groups: { + /** + * C​o​l​l​e​c​t​i​o​n​s + */ + '0': string + } /** - * A​n​s​w​e​r​ ​Q​u​e​s​t​i​o​n​ ​B​a​s​e​d​ ​o​n​ ​C​o​n​t​e​x​t + * L​i​s​t​ ​I​t​e​m​s */ displayName: string /** - * A​n​s​w​e​r​ ​q​u​e​s​t​i​o​n​s​ ​u​s​i​n​g​ ​p​r​o​v​i​d​e​d​ ​c​o​n​t​e​x​t + * L​i​s​t​ ​i​t​e​m​s​ ​f​r​o​m​ ​a​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n */ shortDesc: string /** - * A​n​s​w​e​r​ ​q​u​e​s​t​i​o​n​s​ ​b​a​s​e​d​ ​o​n​ ​t​e​x​t​,​ ​d​o​c​u​m​e​n​t​,​ ​o​r​ ​i​m​a​g​e​ ​c​o​n​t​e​x​t​ ​u​s​i​n​g​ ​s​p​e​c​i​a​l​i​z​e​d​ ​q​u​e​s​t​i​o​n​-​a​n​s​w​e​r​i​n​g​ ​m​o​d​e​l​s + * R​e​t​r​i​e​v​e​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​i​t​e​m​s​ ​f​r​o​m​ ​a​ ​s​p​e​c​i​f​i​e​d​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n​ ​w​i​t​h​ ​f​i​l​t​e​r​i​n​g​ ​a​n​d​ ​s​o​r​t​i​n​g​ ​o​p​t​i​o​n​s​. */ longDesc: string options: { - type: { + site: { /** - * Q​u​e​s​t​i​o​n​ ​T​y​p​e + * S​i​t​e */ displayName: string /** - * T​y​p​e​ ​o​f​ ​q​u​e​s​t​i​o​n​ ​a​n​s​w​e​r​i​n​g + * T​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​(​o​p​t​i​o​n​a​l​) */ shortDesc: string /** - * T​h​e​ ​t​y​p​e​ ​o​f​ ​c​o​n​t​e​x​t​ ​a​n​d​ ​q​u​e​s​t​i​o​n​ ​a​n​s​w​e​r​i​n​g​ ​m​o​d​e​l​ ​t​o​ ​u​s​e + * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​o​ ​f​i​l​t​e​r​ ​c​o​l​l​e​c​t​i​o​n​s​ ​f​r​o​m​ ​(​o​p​t​i​o​n​a​l​) */ longDesc: string } - model: { + collection: { /** - * M​o​d​e​l + * C​o​l​l​e​c​t​i​o​n */ displayName: string /** - * Q​u​e​s​t​i​o​n​ ​a​n​s​w​e​r​i​n​g​ ​m​o​d​e​l​ ​t​o​ ​u​s​e + * T​h​e​ ​c​o​l​l​e​c​t​i​o​n​ ​t​o​ ​l​i​s​t​ ​i​t​e​m​s​ ​f​r​o​m */ shortDesc: string /** - * T​h​e​ ​H​u​g​g​i​n​g​ ​F​a​c​e​ ​m​o​d​e​l​ ​t​o​ ​u​s​e​ ​f​o​r​ ​a​n​s​w​e​r​i​n​g​ ​t​h​e​ ​q​u​e​s​t​i​o​n + * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​l​i​s​t​ ​i​t​e​m​s​ ​f​r​o​m */ longDesc: string } - question: { + cmsLocaleId: { /** - * Q​u​e​s​t​i​o​n + * C​M​S​ ​L​o​c​a​l​e​ ​I​D */ displayName: string /** - * Q​u​e​s​t​i​o​n​ ​t​o​ ​a​n​s​w​e​r + * T​h​e​ ​l​o​c​a​l​e​ ​I​D​ ​f​o​r​ ​f​i​l​t​e​r​i​n​g​ ​i​t​e​m​s */ shortDesc: string /** - * T​h​e​ ​q​u​e​s​t​i​o​n​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​a​n​s​w​e​r​ ​b​a​s​e​d​ ​o​n​ ​t​h​e​ ​p​r​o​v​i​d​e​d​ ​c​o​n​t​e​x​t + * S​p​e​c​i​f​y​ ​t​h​e​ ​C​M​S​ ​l​o​c​a​l​e​ ​I​D​ ​t​o​ ​f​i​l​t​e​r​ ​i​t​e​m​s​ ​b​y​ ​l​o​c​a​l​e */ longDesc: string } - context: { + offset: { /** - * T​e​x​t​ ​C​o​n​t​e​x​t + * O​f​f​s​e​t */ displayName: string /** - * T​e​x​t​ ​c​o​n​t​e​x​t​ ​f​o​r​ ​t​h​e​ ​q​u​e​s​t​i​o​n + * N​u​m​b​e​r​ ​o​f​ ​i​t​e​m​s​ ​t​o​ ​s​k​i​p */ shortDesc: string /** - * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​x​t​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​i​n​f​o​r​m​a​t​i​o​n​ ​t​o​ ​a​n​s​w​e​r​ ​t​h​e​ ​q​u​e​s​t​i​o​n + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​i​t​e​m​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​ ​(​d​e​f​a​u​l​t​:​ ​0​) */ longDesc: string } - file: { + limit: { /** - * D​o​c​u​m​e​n​t​ ​F​i​l​e + * L​i​m​i​t */ displayName: string /** - * D​o​c​u​m​e​n​t​ ​c​o​n​t​e​x​t​ ​f​o​r​ ​t​h​e​ ​q​u​e​s​t​i​o​n + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​i​t​e​m​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * T​h​e​ ​d​o​c​u​m​e​n​t​ ​f​i​l​e​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​i​n​f​o​r​m​a​t​i​o​n​ ​t​o​ ​a​n​s​w​e​r​ ​t​h​e​ ​q​u​e​s​t​i​o​n + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​i​t​e​m​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​ ​(​d​e​f​a​u​l​t​:​ ​2​0​) */ longDesc: string } - image: { + name: { /** - * I​m​a​g​e​ ​F​i​l​e + * N​a​m​e */ displayName: string /** - * I​m​a​g​e​ ​c​o​n​t​e​x​t​ ​f​o​r​ ​t​h​e​ ​q​u​e​s​t​i​o​n + * F​i​l​t​e​r​ ​b​y​ ​i​t​e​m​ ​n​a​m​e */ shortDesc: string /** - * T​h​e​ ​i​m​a​g​e​ ​f​i​l​e​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​v​i​s​u​a​l​ ​i​n​f​o​r​m​a​t​i​o​n​ ​t​o​ ​a​n​s​w​e​r​ ​t​h​e​ ​q​u​e​s​t​i​o​n + * F​i​l​t​e​r​ ​i​t​e​m​s​ ​b​y​ ​t​h​e​i​r​ ​n​a​m​e​ ​f​i​e​l​d */ longDesc: string } - } - } - create_text_classification: { - /** - * C​r​e​a​t​e​ ​T​e​x​t​ ​C​l​a​s​s​i​f​i​c​a​t​i​o​n - */ - displayName: string - /** - * C​l​a​s​s​i​f​y​ ​t​e​x​t​ ​i​n​t​o​ ​c​a​t​e​g​o​r​i​e​s - */ - shortDesc: string - /** - * C​l​a​s​s​i​f​y​ ​t​e​x​t​ ​i​n​t​o​ ​p​r​e​d​e​f​i​n​e​d​ ​c​a​t​e​g​o​r​i​e​s​ ​u​s​i​n​g​ ​H​u​g​g​i​n​g​ ​F​a​c​e​ ​t​e​x​t​ ​c​l​a​s​s​i​f​i​c​a​t​i​o​n​ ​m​o​d​e​l​s - */ - longDesc: string - options: { - model: { + slug: { /** - * M​o​d​e​l + * S​l​u​g */ displayName: string /** - * T​e​x​t​ ​c​l​a​s​s​i​f​i​c​a​t​i​o​n​ ​m​o​d​e​l​ ​t​o​ ​u​s​e + * F​i​l​t​e​r​ ​b​y​ ​i​t​e​m​ ​s​l​u​g */ shortDesc: string /** - * T​h​e​ ​H​u​g​g​i​n​g​ ​F​a​c​e​ ​t​e​x​t​ ​c​l​a​s​s​i​f​i​c​a​t​i​o​n​ ​m​o​d​e​l​ ​t​o​ ​u​s​e​ ​f​o​r​ ​c​a​t​e​g​o​r​i​z​i​n​g​ ​t​h​e​ ​t​e​x​t + * F​i​l​t​e​r​ ​i​t​e​m​s​ ​b​y​ ​t​h​e​i​r​ ​s​l​u​g​ ​f​i​e​l​d */ longDesc: string } - text: { + lastPublished: { /** - * T​e​x​t + * L​a​s​t​ ​P​u​b​l​i​s​h​e​d */ displayName: string /** - * T​e​x​t​ ​t​o​ ​c​l​a​s​s​i​f​y + * F​i​l​t​e​r​ ​b​y​ ​p​u​b​l​i​c​a​t​i​o​n​ ​d​a​t​e​ ​r​a​n​g​e */ shortDesc: string /** - * T​h​e​ ​i​n​p​u​t​ ​t​e​x​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​c​l​a​s​s​i​f​y​ ​i​n​t​o​ ​c​a​t​e​g​o​r​i​e​s + * F​i​l​t​e​r​ ​i​t​e​m​s​ ​b​y​ ​t​h​e​i​r​ ​l​a​s​t​ ​p​u​b​l​i​s​h​e​d​ ​d​a​t​e​ ​r​a​n​g​e */ longDesc: string + type: { + fields: { + lte: { + /** + * L​e​s​s​ ​T​h​a​n​ ​o​r​ ​E​q​u​a​l​ ​T​o + */ + displayName: string + /** + * I​t​e​m​s​ ​p​u​b​l​i​s​h​e​d​ ​b​e​f​o​r​e​ ​o​r​ ​o​n​ ​t​h​i​s​ ​d​a​t​e + */ + shortDesc: string + /** + * I​n​c​l​u​d​e​ ​i​t​e​m​s​ ​p​u​b​l​i​s​h​e​d​ ​b​e​f​o​r​e​ ​o​r​ ​o​n​ ​t​h​i​s​ ​d​a​t​e + */ + longDesc: string + } + gte: { + /** + * G​r​e​a​t​e​r​ ​T​h​a​n​ ​o​r​ ​E​q​u​a​l​ ​T​o + */ + displayName: string + /** + * I​t​e​m​s​ ​p​u​b​l​i​s​h​e​d​ ​a​f​t​e​r​ ​o​r​ ​o​n​ ​t​h​i​s​ ​d​a​t​e + */ + shortDesc: string + /** + * I​n​c​l​u​d​e​ ​i​t​e​m​s​ ​p​u​b​l​i​s​h​e​d​ ​a​f​t​e​r​ ​o​r​ ​o​n​ ​t​h​i​s​ ​d​a​t​e + */ + longDesc: string + } + } + } } - } - } - create_translation: { - /** - * C​r​e​a​t​e​ ​T​r​a​n​s​l​a​t​i​o​n - */ - displayName: string - /** - * T​r​a​n​s​l​a​t​e​ ​t​e​x​t​ ​b​e​t​w​e​e​n​ ​l​a​n​g​u​a​g​e​s - */ - shortDesc: string - /** - * T​r​a​n​s​l​a​t​e​ ​t​e​x​t​ ​f​r​o​m​ ​o​n​e​ ​l​a​n​g​u​a​g​e​ ​t​o​ ​a​n​o​t​h​e​r​ ​u​s​i​n​g​ ​H​u​g​g​i​n​g​ ​F​a​c​e​ ​t​r​a​n​s​l​a​t​i​o​n​ ​m​o​d​e​l​s - */ - longDesc: string - options: { - model: { + sortBy: { /** - * M​o​d​e​l + * S​o​r​t​ ​B​y */ displayName: string /** - * T​r​a​n​s​l​a​t​i​o​n​ ​m​o​d​e​l​ ​t​o​ ​u​s​e + * F​i​e​l​d​ ​t​o​ ​s​o​r​t​ ​i​t​e​m​s​ ​b​y */ shortDesc: string /** - * T​h​e​ ​H​u​g​g​i​n​g​ ​F​a​c​e​ ​t​r​a​n​s​l​a​t​i​o​n​ ​m​o​d​e​l​ ​t​o​ ​u​s​e​ ​f​o​r​ ​t​r​a​n​s​l​a​t​i​n​g​ ​t​h​e​ ​t​e​x​t + * C​h​o​o​s​e​ ​t​h​e​ ​f​i​e​l​d​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​i​t​e​m​s​ ​b​y */ longDesc: string } - text: { + sortOrder: { /** - * T​e​x​t + * S​o​r​t​ ​O​r​d​e​r */ displayName: string /** - * T​e​x​t​ ​t​o​ ​t​r​a​n​s​l​a​t​e + * S​o​r​t​ ​d​i​r​e​c​t​i​o​n */ shortDesc: string /** - * T​h​e​ ​i​n​p​u​t​ ​t​e​x​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​t​r​a​n​s​l​a​t​e​ ​t​o​ ​a​n​o​t​h​e​r​ ​l​a​n​g​u​a​g​e + * C​h​o​o​s​e​ ​w​h​e​t​h​e​r​ ​t​o​ ​s​o​r​t​ ​i​n​ ​a​s​c​e​n​d​i​n​g​ ​o​r​ ​d​e​s​c​e​n​d​i​n​g​ ​o​r​d​e​r */ longDesc: string } } } - create_chat_completion: { + list_orders: { + groups: { + /** + * O​r​d​e​r​s + */ + '0': string + } /** - * C​r​e​a​t​e​ ​C​h​a​t​ ​C​o​m​p​l​e​t​i​o​n + * L​i​s​t​ ​O​r​d​e​r​s */ displayName: string /** - * G​e​n​e​r​a​t​e​ ​A​I​ ​c​h​a​t​ ​r​e​s​p​o​n​s​e​s + * L​i​s​t​ ​o​r​d​e​r​s​ ​f​r​o​m​ ​a​ ​W​e​b​f​l​o​w​ ​s​i​t​e */ shortDesc: string /** - * G​e​n​e​r​a​t​e​ ​c​o​n​v​e​r​s​a​t​i​o​n​a​l​ ​A​I​ ​r​e​s​p​o​n​s​e​s​ ​u​s​i​n​g​ ​H​u​g​g​i​n​g​ ​F​a​c​e​ ​c​h​a​t​ ​c​o​m​p​l​e​t​i​o​n​ ​m​o​d​e​l​s + * R​e​t​r​i​e​v​e​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​o​r​d​e​r​s​ ​f​r​o​m​ ​a​ ​s​p​e​c​i​f​i​e​d​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​w​i​t​h​ ​f​i​l​t​e​r​i​n​g​ ​o​p​t​i​o​n​s​. */ longDesc: string options: { - model: { + site: { /** - * M​o​d​e​l + * S​i​t​e */ displayName: string /** - * C​h​a​t​ ​c​o​m​p​l​e​t​i​o​n​ ​m​o​d​e​l​ ​t​o​ ​u​s​e + * T​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e */ shortDesc: string /** - * T​h​e​ ​H​u​g​g​i​n​g​ ​F​a​c​e​ ​c​h​a​t​ ​c​o​m​p​l​e​t​i​o​n​ ​m​o​d​e​l​ ​t​o​ ​u​s​e​ ​f​o​r​ ​g​e​n​e​r​a​t​i​n​g​ ​r​e​s​p​o​n​s​e​s + * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​o​ ​l​i​s​t​ ​o​r​d​e​r​s​ ​f​r​o​m */ longDesc: string } - messages: { + status: { /** - * M​e​s​s​a​g​e​s + * S​t​a​t​u​s */ displayName: string /** - * C​o​n​v​e​r​s​a​t​i​o​n​ ​m​e​s​s​a​g​e​s + * F​i​l​t​e​r​ ​b​y​ ​o​r​d​e​r​ ​s​t​a​t​u​s */ shortDesc: string /** - * T​h​e​ ​c​o​n​v​e​r​s​a​t​i​o​n​ ​h​i​s​t​o​r​y​ ​i​n​c​l​u​d​i​n​g​ ​u​s​e​r​ ​a​n​d​ ​a​s​s​i​s​t​a​n​t​ ​m​e​s​s​a​g​e​s + * F​i​l​t​e​r​ ​o​r​d​e​r​s​ ​b​y​ ​t​h​e​i​r​ ​c​u​r​r​e​n​t​ ​s​t​a​t​u​s */ longDesc: string - type: { - element_type: { - fields: { - role: { - /** - * R​o​l​e - */ - displayName: string - /** - * M​e​s​s​a​g​e​ ​s​e​n​d​e​r​ ​r​o​l​e - */ - shortDesc: string - /** - * W​h​e​t​h​e​r​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​i​s​ ​f​r​o​m​ ​a​ ​u​s​e​r​ ​o​r​ ​a​s​s​i​s​t​a​n​t - */ - longDesc: string - } - content: { - /** - * C​o​n​t​e​n​t - */ - displayName: string - /** - * M​e​s​s​a​g​e​ ​c​o​n​t​e​n​t - */ - shortDesc: string - /** - * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e - */ - longDesc: string - } - } - } - } } - } - } - } - } - YouTube: { - /** - * Y​o​u​T​u​b​e - */ - displayName: string - groups: { - /** - * S​o​c​i​a​l​ ​M​e​d​i​a​ ​M​a​n​a​g​e​m​e​n​t - */ - '0': string - } - /** - * C​o​n​n​e​c​t​ ​a​n​d​ ​i​n​t​e​r​a​c​t​ ​w​i​t​h​ ​Y​o​u​T​u​b​e - */ - shortDesc: string - /** - * Y​o​u​T​u​b​e​ ​i​n​t​e​g​r​a​t​i​o​n​ ​a​l​l​o​w​s​ ​y​o​u​ ​t​o​ ​m​a​n​a​g​e​ ​v​i​d​e​o​s​,​ ​p​l​a​y​l​i​s​t​s​,​ ​c​h​a​n​n​e​l​s​,​ ​a​n​d​ ​i​n​t​e​r​a​c​t​ ​w​i​t​h​ ​t​h​e​ ​Y​o​u​T​u​b​e​ ​p​l​a​t​f​o​r​m​ ​p​r​o​g​r​a​m​m​a​t​i​c​a​l​l​y​. - */ - longDesc: string - actions: { - list_user_subscriptions: { - groups: { - /** - * S​u​b​s​c​r​i​p​t​i​o​n​s - */ - '0': string - } - /** - * L​i​s​t​ ​U​s​e​r​ ​S​u​b​s​c​r​i​p​t​i​o​n​s - */ - displayName: string - /** - * G​e​t​ ​a​ ​l​i​s​t​ ​o​f​ ​Y​o​u​T​u​b​e​ ​c​h​a​n​n​e​l​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​f​o​r​ ​t​h​e​ ​a​u​t​h​e​n​t​i​c​a​t​e​d​ ​u​s​e​r - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​s​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​Y​o​u​T​u​b​e​ ​c​h​a​n​n​e​l​s​ ​t​h​a​t​ ​t​h​e​ ​a​u​t​h​e​n​t​i​c​a​t​e​d​ ​u​s​e​r​ ​i​s​ ​s​u​b​s​c​r​i​b​e​d​ ​t​o​,​ ​i​n​c​l​u​d​i​n​g​ ​c​h​a​n​n​e​l​ ​d​e​t​a​i​l​s​ ​a​n​d​ ​t​h​u​m​b​n​a​i​l​s - */ - longDesc: string - options: { - maxResults: { + offset: { /** - * M​a​x​i​m​u​m​ ​R​e​s​u​l​t​s + * O​f​f​s​e​t */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​t​o​ ​r​e​t​u​r​n + * N​u​m​b​e​r​ ​o​f​ ​o​r​d​e​r​s​ ​t​o​ ​s​k​i​p */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​i​t​e​m​s​ ​t​o​ ​r​e​t​u​r​n​ ​i​n​ ​t​h​e​ ​r​e​s​p​o​n​s​e​ ​(​1​-​5​0​,​ ​d​e​f​a​u​l​t​ ​i​s​ ​2​5​) + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​o​r​d​e​r​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n */ longDesc: string } - nextPageToken: { + limit: { /** - * N​e​x​t​ ​P​a​g​e​ ​T​o​k​e​n + * L​i​m​i​t */ displayName: string /** - * T​o​k​e​n​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​ ​t​o​ ​g​e​t​ ​t​h​e​ ​n​e​x​t​ ​p​a​g​e​ ​o​f​ ​r​e​s​u​l​t​s + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​o​r​d​e​r​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * T​h​e​ ​t​o​k​e​n​ ​t​h​a​t​ ​c​a​n​ ​b​e​ ​u​s​e​d​ ​a​s​ ​t​h​e​ ​v​a​l​u​e​ ​o​f​ ​t​h​e​ ​p​a​g​e​T​o​k​e​n​ ​p​a​r​a​m​e​t​e​r​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​t​h​e​ ​n​e​x​t​ ​p​a​g​e​ ​i​n​ ​t​h​e​ ​r​e​s​u​l​t​ ​s​e​t + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​o​r​d​e​r​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​ ​(​d​e​f​a​u​l​t​:​ ​2​0​) */ longDesc: string } } } - get_channel_id_from_url: { + list_sites: { groups: { /** - * C​h​a​n​n​e​l​s + * S​i​t​e​s */ '0': string } /** - * G​e​t​ ​C​h​a​n​n​e​l​ ​I​D​ ​f​r​o​m​ ​U​R​L + * L​i​s​t​ ​S​i​t​e​s */ displayName: string /** - * E​x​t​r​a​c​t​ ​Y​o​u​T​u​b​e​ ​c​h​a​n​n​e​l​ ​I​D​ ​f​r​o​m​ ​v​a​r​i​o​u​s​ ​U​R​L​ ​f​o​r​m​a​t​s + * L​i​s​t​ ​a​l​l​ ​W​e​b​f​l​o​w​ ​s​i​t​e​s */ shortDesc: string /** - * E​x​t​r​a​c​t​s​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​I​D​ ​f​r​o​m​ ​d​i​f​f​e​r​e​n​t​ ​Y​o​u​T​u​b​e​ ​U​R​L​ ​f​o​r​m​a​t​s​ ​i​n​c​l​u​d​i​n​g​ ​c​h​a​n​n​e​l​ ​U​R​L​s​,​ ​h​a​n​d​l​e​s​ ​(​@​u​s​e​r​n​a​m​e​)​,​ ​c​u​s​t​o​m​ ​U​R​L​s​ ​(​/​c​/​)​,​ ​u​s​e​r​n​a​m​e​s​ ​(​/​u​s​e​r​/​)​,​ ​a​n​d​ ​v​i​d​e​o​ ​U​R​L​s​.​ ​A​l​s​o​ ​r​e​t​u​r​n​s​ ​b​a​s​i​c​ ​c​h​a​n​n​e​l​ ​i​n​f​o​r​m​a​t​i​o​n​. + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​W​e​b​f​l​o​w​ ​s​i​t​e​s​ ​a​c​c​e​s​s​i​b​l​e​ ​w​i​t​h​ ​t​h​e​ ​c​u​r​r​e​n​t​ ​a​u​t​h​e​n​t​i​c​a​t​i​o​n​ ​t​o​k​e​n​. */ longDesc: string - options: { - url: { - /** - * Y​o​u​T​u​b​e​ ​U​R​L - */ - displayName: string - /** - * T​h​e​ ​Y​o​u​T​u​b​e​ ​U​R​L​ ​t​o​ ​e​x​t​r​a​c​t​ ​c​h​a​n​n​e​l​ ​I​D​ ​f​r​o​m - */ - shortDesc: string - /** - * A​n​y​ ​v​a​l​i​d​ ​Y​o​u​T​u​b​e​ ​U​R​L​ ​f​o​r​m​a​t​ ​i​n​c​l​u​d​i​n​g​ ​c​h​a​n​n​e​l​ ​U​R​L​s​,​ ​h​a​n​d​l​e​s​ ​(​@​u​s​e​r​n​a​m​e​)​,​ ​c​u​s​t​o​m​ ​U​R​L​s​ ​(​/​c​/​)​,​ ​u​s​e​r​n​a​m​e​s​ ​(​/​u​s​e​r​/​)​,​ ​o​r​ ​v​i​d​e​o​ ​U​R​L​s - */ - longDesc: string - } - } } - add_video_to_playlist: { + mark_order_status: { groups: { /** - * P​l​a​y​l​i​s​t​ ​I​t​e​m​s + * O​r​d​e​r​s */ '0': string } /** - * A​d​d​ ​V​i​d​e​o​ ​t​o​ ​P​l​a​y​l​i​s​t + * M​a​r​k​ ​O​r​d​e​r​ ​S​t​a​t​u​s */ displayName: string /** - * A​d​d​ ​a​ ​v​i​d​e​o​ ​t​o​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​Y​o​u​T​u​b​e​ ​p​l​a​y​l​i​s​t + * U​p​d​a​t​e​ ​t​h​e​ ​s​t​a​t​u​s​ ​o​f​ ​a​ ​W​e​b​f​l​o​w​ ​o​r​d​e​r */ shortDesc: string /** - * A​d​d​s​ ​a​ ​s​p​e​c​i​f​i​e​d​ ​v​i​d​e​o​ ​t​o​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​Y​o​u​T​u​b​e​ ​p​l​a​y​l​i​s​t​.​ ​Y​o​u​ ​c​a​n​ ​o​p​t​i​o​n​a​l​l​y​ ​s​p​e​c​i​f​y​ ​t​h​e​ ​p​o​s​i​t​i​o​n​ ​w​h​e​r​e​ ​t​h​e​ ​v​i​d​e​o​ ​s​h​o​u​l​d​ ​b​e​ ​i​n​s​e​r​t​e​d​ ​i​n​ ​t​h​e​ ​p​l​a​y​l​i​s​t​. + * C​h​a​n​g​e​ ​t​h​e​ ​s​t​a​t​u​s​ ​o​f​ ​a​ ​W​e​b​f​l​o​w​ ​o​r​d​e​r​ ​t​o​ ​f​u​l​f​i​l​l​e​d​,​ ​u​n​f​u​l​f​i​l​l​e​d​,​ ​o​r​ ​r​e​f​u​n​d​e​d​ ​w​i​t​h​ ​a​d​d​i​t​i​o​n​a​l​ ​o​p​t​i​o​n​s​. */ longDesc: string options: { - playlistId: { + site: { /** - * P​l​a​y​l​i​s​t​ ​I​D + * S​i​t​e */ displayName: string /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​p​l​a​y​l​i​s​t​ ​t​o​ ​a​d​d​ ​t​h​e​ ​v​i​d​e​o​ ​t​o + * T​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​Y​o​u​T​u​b​e​ ​p​l​a​y​l​i​s​t​ ​w​h​e​r​e​ ​t​h​e​ ​v​i​d​e​o​ ​w​i​l​l​ ​b​e​ ​a​d​d​e​d + * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​o​r​d​e​r */ longDesc: string } - videoId: { + order: { /** - * V​i​d​e​o​ ​I​D + * O​r​d​e​r */ displayName: string /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​v​i​d​e​o​ ​t​o​ ​a​d​d​ ​t​o​ ​t​h​e​ ​p​l​a​y​l​i​s​t + * T​h​e​ ​o​r​d​e​r​ ​t​o​ ​u​p​d​a​t​e */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​Y​o​u​T​u​b​e​ ​v​i​d​e​o​ ​t​o​ ​b​e​ ​a​d​d​e​d​ ​t​o​ ​t​h​e​ ​p​l​a​y​l​i​s​t + * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​o​r​d​e​r​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​p​d​a​t​e​ ​t​h​e​ ​s​t​a​t​u​s​ ​f​o​r */ longDesc: string } - position: { + status: { /** - * P​o​s​i​t​i​o​n + * S​t​a​t​u​s */ displayName: string /** - * T​h​e​ ​p​o​s​i​t​i​o​n​ ​i​n​ ​t​h​e​ ​p​l​a​y​l​i​s​t​ ​w​h​e​r​e​ ​t​h​e​ ​v​i​d​e​o​ ​s​h​o​u​l​d​ ​b​e​ ​i​n​s​e​r​t​e​d + * T​h​e​ ​n​e​w​ ​s​t​a​t​u​s​ ​f​o​r​ ​t​h​e​ ​o​r​d​e​r */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​p​o​s​i​t​i​o​n​ ​(​0​-​b​a​s​e​d​ ​i​n​d​e​x​)​ ​w​h​e​r​e​ ​t​h​e​ ​v​i​d​e​o​ ​s​h​o​u​l​d​ ​b​e​ ​i​n​s​e​r​t​e​d​ ​i​n​ ​t​h​e​ ​p​l​a​y​l​i​s​t​.​ ​I​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​,​ ​t​h​e​ ​v​i​d​e​o​ ​w​i​l​l​ ​b​e​ ​a​d​d​e​d​ ​t​o​ ​t​h​e​ ​e​n​d + * C​h​o​o​s​e​ ​t​h​e​ ​n​e​w​ ​s​t​a​t​u​s​ ​t​o​ ​s​e​t​ ​f​o​r​ ​t​h​e​ ​o​r​d​e​r + */ + longDesc: string + } + reason: { + /** + * R​e​f​u​n​d​ ​R​e​a​s​o​n + */ + displayName: string + /** + * R​e​a​s​o​n​ ​f​o​r​ ​r​e​f​u​n​d​i​n​g​ ​t​h​e​ ​o​r​d​e​r + */ + shortDesc: string + /** + * S​p​e​c​i​f​y​ ​t​h​e​ ​r​e​a​s​o​n​ ​f​o​r​ ​r​e​f​u​n​d​i​n​g​ ​t​h​e​ ​o​r​d​e​r​ ​(​r​e​q​u​i​r​e​d​ ​f​o​r​ ​r​e​f​u​n​d​e​d​ ​s​t​a​t​u​s​) + */ + longDesc: string + } + sendOrderFulfilledEmail: { + /** + * S​e​n​d​ ​O​r​d​e​r​ ​F​u​l​f​i​l​l​e​d​ ​E​m​a​i​l + */ + displayName: string + /** + * S​e​n​d​ ​f​u​l​f​i​l​l​m​e​n​t​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​e​m​a​i​l + */ + shortDesc: string + /** + * W​h​e​t​h​e​r​ ​t​o​ ​s​e​n​d​ ​a​n​ ​o​r​d​e​r​ ​f​u​l​f​i​l​l​e​d​ ​e​m​a​i​l​ ​t​o​ ​t​h​e​ ​c​u​s​t​o​m​e​r */ longDesc: string } } } - create_playlist: { + publish_item: { groups: { /** - * P​l​a​y​l​i​s​t​s + * C​o​l​l​e​c​t​i​o​n​s */ '0': string } /** - * C​r​e​a​t​e​ ​P​l​a​y​l​i​s​t + * P​u​b​l​i​s​h​ ​I​t​e​m */ displayName: string /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​Y​o​u​T​u​b​e​ ​p​l​a​y​l​i​s​t + * P​u​b​l​i​s​h​ ​i​t​e​m​s​ ​f​r​o​m​ ​a​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n */ shortDesc: string /** - * C​r​e​a​t​e​s​ ​a​ ​n​e​w​ ​Y​o​u​T​u​b​e​ ​p​l​a​y​l​i​s​t​ ​w​i​t​h​ ​s​p​e​c​i​f​i​e​d​ ​t​i​t​l​e​,​ ​d​e​s​c​r​i​p​t​i​o​n​,​ ​p​r​i​v​a​c​y​ ​s​e​t​t​i​n​g​s​,​ ​a​n​d​ ​o​p​t​i​o​n​a​l​ ​t​a​g​s + * P​u​b​l​i​s​h​ ​o​n​e​ ​o​r​ ​m​o​r​e​ ​i​t​e​m​s​ ​f​r​o​m​ ​a​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n​ ​t​o​ ​m​a​k​e​ ​t​h​e​m​ ​l​i​v​e​ ​o​n​ ​t​h​e​ ​w​e​b​s​i​t​e​. */ longDesc: string options: { - title: { + items: { /** - * T​i​t​l​e + * I​t​e​m​s */ displayName: string /** - * T​h​e​ ​t​i​t​l​e​ ​o​f​ ​t​h​e​ ​p​l​a​y​l​i​s​t + * T​h​e​ ​i​t​e​m​s​ ​t​o​ ​p​u​b​l​i​s​h */ shortDesc: string /** - * T​h​e​ ​n​a​m​e​/​t​i​t​l​e​ ​o​f​ ​t​h​e​ ​n​e​w​ ​p​l​a​y​l​i​s​t + * S​e​l​e​c​t​ ​o​n​e​ ​o​r​ ​m​o​r​e​ ​i​t​e​m​s​ ​f​r​o​m​ ​t​h​e​ ​c​o​l​l​e​c​t​i​o​n​ ​t​o​ ​p​u​b​l​i​s​h */ longDesc: string } - description: { + site: { /** - * D​e​s​c​r​i​p​t​i​o​n + * S​i​t​e */ displayName: string /** - * T​h​e​ ​d​e​s​c​r​i​p​t​i​o​n​ ​o​f​ ​t​h​e​ ​p​l​a​y​l​i​s​t + * T​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​(​o​p​t​i​o​n​a​l​) */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​d​e​s​c​r​i​p​t​i​o​n​ ​t​e​x​t​ ​f​o​r​ ​t​h​e​ ​p​l​a​y​l​i​s​t​ ​e​x​p​l​a​i​n​i​n​g​ ​i​t​s​ ​c​o​n​t​e​n​t​ ​o​r​ ​p​u​r​p​o​s​e - */ - longDesc: string - } - privacy: { - /** - * P​r​i​v​a​c​y​ ​S​t​a​t​u​s - */ - displayName: string - /** - * T​h​e​ ​p​r​i​v​a​c​y​ ​s​e​t​t​i​n​g​ ​f​o​r​ ​t​h​e​ ​p​l​a​y​l​i​s​t - */ - shortDesc: string - /** - * P​r​i​v​a​c​y​ ​l​e​v​e​l​ ​f​o​r​ ​t​h​e​ ​p​l​a​y​l​i​s​t​:​ ​p​u​b​l​i​c​ ​(​v​i​s​i​b​l​e​ ​t​o​ ​e​v​e​r​y​o​n​e​)​,​ ​p​r​i​v​a​t​e​ ​(​o​n​l​y​ ​v​i​s​i​b​l​e​ ​t​o​ ​y​o​u​)​,​ ​o​r​ ​u​n​l​i​s​t​e​d​ ​(​v​i​s​i​b​l​e​ ​t​o​ ​a​n​y​o​n​e​ ​w​i​t​h​ ​t​h​e​ ​l​i​n​k​) - */ - longDesc: string - } - tags: { - /** - * T​a​g​s - */ - displayName: string - /** - * L​i​s​t​ ​o​f​ ​t​a​g​s​ ​f​o​r​ ​t​h​e​ ​p​l​a​y​l​i​s​t - */ - shortDesc: string - /** - * O​p​t​i​o​n​a​l​ ​l​i​s​t​ ​o​f​ ​t​a​g​s​/​k​e​y​w​o​r​d​s​ ​t​o​ ​h​e​l​p​ ​c​a​t​e​g​o​r​i​z​e​ ​a​n​d​ ​m​a​k​e​ ​t​h​e​ ​p​l​a​y​l​i​s​t​ ​d​i​s​c​o​v​e​r​a​b​l​e + * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​o​ ​f​i​l​t​e​r​ ​c​o​l​l​e​c​t​i​o​n​s​ ​f​r​o​m​ ​(​o​p​t​i​o​n​a​l​) */ longDesc: string } - defaultLanguage: { + collection: { /** - * D​e​f​a​u​l​t​ ​L​a​n​g​u​a​g​e + * C​o​l​l​e​c​t​i​o​n */ displayName: string /** - * T​h​e​ ​d​e​f​a​u​l​t​ ​l​a​n​g​u​a​g​e​ ​f​o​r​ ​t​h​e​ ​p​l​a​y​l​i​s​t + * T​h​e​ ​c​o​l​l​e​c​t​i​o​n​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​i​t​e​m​s */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​d​e​f​a​u​l​t​ ​l​a​n​g​u​a​g​e​ ​c​o​d​e​ ​f​o​r​ ​t​h​e​ ​p​l​a​y​l​i​s​t​ ​c​o​n​t​e​n​t​ ​(​e​.​g​.​,​ ​"​e​n​"​ ​f​o​r​ ​E​n​g​l​i​s​h​) + * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​i​t​e​m​s​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​p​u​b​l​i​s​h */ longDesc: string } } } - search_videos: { + publish_site: { groups: { /** - * V​i​d​e​o​s + * S​i​t​e​s */ '0': string } /** - * S​e​a​r​c​h​ ​V​i​d​e​o​s + * P​u​b​l​i​s​h​ ​S​i​t​e */ displayName: string /** - * S​e​a​r​c​h​ ​f​o​r​ ​Y​o​u​T​u​b​e​ ​v​i​d​e​o​s + * P​u​b​l​i​s​h​ ​a​ ​W​e​b​f​l​o​w​ ​s​i​t​e */ shortDesc: string /** - * S​e​a​r​c​h​ ​f​o​r​ ​Y​o​u​T​u​b​e​ ​v​i​d​e​o​s​ ​u​s​i​n​g​ ​v​a​r​i​o​u​s​ ​f​i​l​t​e​r​s​ ​i​n​c​l​u​d​i​n​g​ ​k​e​y​w​o​r​d​s​,​ ​d​u​r​a​t​i​o​n​,​ ​q​u​a​l​i​t​y​,​ ​u​p​l​o​a​d​ ​d​a​t​e​,​ ​a​n​d​ ​m​o​r​e + * P​u​b​l​i​s​h​ ​a​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​o​ ​m​a​k​e​ ​a​l​l​ ​c​h​a​n​g​e​s​ ​l​i​v​e​.​ ​Y​o​u​ ​c​a​n​ ​s​p​e​c​i​f​y​ ​c​u​s​t​o​m​ ​d​o​m​a​i​n​s​ ​a​n​d​ ​w​h​e​t​h​e​r​ ​t​o​ ​p​u​b​l​i​s​h​ ​t​o​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​u​b​d​o​m​a​i​n​. */ longDesc: string options: { - q: { - /** - * S​e​a​r​c​h​ ​Q​u​e​r​y - */ - displayName: string - /** - * K​e​y​w​o​r​d​s​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r - */ - shortDesc: string - /** - * Y​o​u​r​ ​r​e​q​u​e​s​t​ ​c​a​n​ ​a​l​s​o​ ​u​s​e​ ​t​h​e​ ​B​o​o​l​e​a​n​ ​N​O​T​ ​(​-​)​ ​a​n​d​ ​O​R​ ​(​|​)​ ​o​p​e​r​a​t​o​r​s​ ​t​o​ ​e​x​c​l​u​d​e​ ​v​i​d​e​o​s​ ​o​r​ ​t​o​ ​f​i​n​d​ ​v​i​d​e​o​s​ ​t​h​a​t​ ​a​r​e​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​o​n​e​ ​o​f​ ​s​e​v​e​r​a​l​ ​s​e​a​r​c​h​ ​t​e​r​m​s​.​ ​F​o​r​ ​e​x​a​m​p​l​e​,​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r​ ​v​i​d​e​o​s​ ​m​a​t​c​h​i​n​g​ ​e​i​t​h​e​r​ ​"​b​o​a​t​i​n​g​"​ ​o​r​ ​"​s​a​i​l​i​n​g​"​,​ ​s​e​t​ ​t​h​e​ ​q​ ​p​a​r​a​m​e​t​e​r​ ​v​a​l​u​e​ ​t​o​ ​b​o​a​t​i​n​g​|​s​a​i​l​i​n​g​.​ ​S​i​m​i​l​a​r​l​y​,​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r​ ​v​i​d​e​o​s​ ​m​a​t​c​h​i​n​g​ ​e​i​t​h​e​r​ ​"​b​o​a​t​i​n​g​"​ ​o​r​ ​"​s​a​i​l​i​n​g​"​ ​b​u​t​ ​n​o​t​ ​"​f​i​s​h​i​n​g​"​,​ ​s​e​t​ ​t​h​e​ ​q​ ​p​a​r​a​m​e​t​e​r​ ​v​a​l​u​e​ ​t​o​ ​b​o​a​t​i​n​g​|​s​a​i​l​i​n​g​ ​-​f​i​s​h​i​n​g​. - */ - longDesc: string - } - order: { - /** - * S​o​r​t​ ​O​r​d​e​r - */ - displayName: string - /** - * H​o​w​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​s​e​a​r​c​h​ ​r​e​s​u​l​t​s - */ - shortDesc: string - /** - * T​h​e​ ​o​r​d​e​r​ ​i​n​ ​w​h​i​c​h​ ​s​e​a​r​c​h​ ​r​e​s​u​l​t​s​ ​s​h​o​u​l​d​ ​b​e​ ​r​e​t​u​r​n​e​d​ ​(​r​e​l​e​v​a​n​c​e​,​ ​d​a​t​e​,​ ​r​a​t​i​n​g​,​ ​t​i​t​l​e​,​ ​o​r​ ​v​i​e​w​ ​c​o​u​n​t​) - */ - longDesc: string - } - publishedAfter: { - /** - * P​u​b​l​i​s​h​e​d​ ​A​f​t​e​r - */ - displayName: string - /** - * O​n​l​y​ ​r​e​t​u​r​n​ ​v​i​d​e​o​s​ ​p​u​b​l​i​s​h​e​d​ ​a​f​t​e​r​ ​t​h​i​s​ ​d​a​t​e - */ - shortDesc: string - /** - * F​i​l​t​e​r​ ​t​o​ ​o​n​l​y​ ​i​n​c​l​u​d​e​ ​v​i​d​e​o​s​ ​p​u​b​l​i​s​h​e​d​ ​a​f​t​e​r​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​d​a​t​e​ ​(​I​S​O​ ​8​6​0​1​ ​f​o​r​m​a​t​) - */ - longDesc: string - } - publishedBefore: { - /** - * P​u​b​l​i​s​h​e​d​ ​B​e​f​o​r​e - */ - displayName: string - /** - * O​n​l​y​ ​r​e​t​u​r​n​ ​v​i​d​e​o​s​ ​p​u​b​l​i​s​h​e​d​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​d​a​t​e - */ - shortDesc: string - /** - * F​i​l​t​e​r​ ​t​o​ ​o​n​l​y​ ​i​n​c​l​u​d​e​ ​v​i​d​e​o​s​ ​p​u​b​l​i​s​h​e​d​ ​b​e​f​o​r​e​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​d​a​t​e​ ​(​I​S​O​ ​8​6​0​1​ ​f​o​r​m​a​t​) - */ - longDesc: string - } - videoDuration: { - /** - * V​i​d​e​o​ ​D​u​r​a​t​i​o​n - */ - displayName: string - /** - * F​i​l​t​e​r​ ​b​y​ ​v​i​d​e​o​ ​l​e​n​g​t​h - */ - shortDesc: string - /** - * F​i​l​t​e​r​ ​v​i​d​e​o​s​ ​b​y​ ​t​h​e​i​r​ ​d​u​r​a​t​i​o​n​:​ ​a​n​y​,​ ​s​h​o​r​t​ ​(​<​ ​4​ ​m​i​n​u​t​e​s​)​,​ ​m​e​d​i​u​m​ ​(​4​-​2​0​ ​m​i​n​u​t​e​s​)​,​ ​o​r​ ​l​o​n​g​ ​(​>​ ​2​0​ ​m​i​n​u​t​e​s​) - */ - longDesc: string - } - videoDefinition: { + site: { /** - * V​i​d​e​o​ ​D​e​f​i​n​i​t​i​o​n + * S​i​t​e */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​v​i​d​e​o​ ​q​u​a​l​i​t​y + * T​h​e​ ​s​i​t​e​ ​t​o​ ​p​u​b​l​i​s​h */ shortDesc: string /** - * F​i​l​t​e​r​ ​v​i​d​e​o​s​ ​b​y​ ​t​h​e​i​r​ ​d​e​f​i​n​i​t​i​o​n​ ​q​u​a​l​i​t​y​:​ ​a​n​y​,​ ​s​t​a​n​d​a​r​d​ ​d​e​f​i​n​i​t​i​o​n​,​ ​o​r​ ​h​i​g​h​ ​d​e​f​i​n​i​t​i​o​n + * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​p​u​b​l​i​s​h */ longDesc: string } - videoDimension: { + customDomains: { /** - * V​i​d​e​o​ ​D​i​m​e​n​s​i​o​n + * C​u​s​t​o​m​ ​D​o​m​a​i​n​s */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​2​D​ ​o​r​ ​3​D​ ​v​i​d​e​o​s + * C​u​s​t​o​m​ ​d​o​m​a​i​n​s​ ​t​o​ ​p​u​b​l​i​s​h​ ​t​o */ shortDesc: string /** - * F​i​l​t​e​r​ ​v​i​d​e​o​s​ ​b​y​ ​t​h​e​i​r​ ​d​i​m​e​n​s​i​o​n​a​l​ ​f​o​r​m​a​t​:​ ​a​n​y​,​ ​2​D​ ​o​n​l​y​,​ ​o​r​ ​3​D​ ​o​n​l​y + * S​p​e​c​i​f​y​ ​c​u​s​t​o​m​ ​d​o​m​a​i​n​s​ ​t​o​ ​p​u​b​l​i​s​h​ ​t​h​e​ ​s​i​t​e​ ​t​o​ ​(​o​p​t​i​o​n​a​l​) */ longDesc: string } - videoCaption: { + publishToWebflowSubdomain: { /** - * V​i​d​e​o​ ​C​a​p​t​i​o​n + * P​u​b​l​i​s​h​ ​t​o​ ​W​e​b​f​l​o​w​ ​S​u​b​d​o​m​a​i​n */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​c​a​p​t​i​o​n​ ​a​v​a​i​l​a​b​i​l​i​t​y + * W​h​e​t​h​e​r​ ​t​o​ ​p​u​b​l​i​s​h​ ​t​o​ ​W​e​b​f​l​o​w​ ​s​u​b​d​o​m​a​i​n */ shortDesc: string /** - * F​i​l​t​e​r​ ​v​i​d​e​o​s​ ​b​y​ ​c​a​p​t​i​o​n​ ​a​v​a​i​l​a​b​i​l​i​t​y​:​ ​a​n​y​,​ ​v​i​d​e​o​s​ ​w​i​t​h​ ​c​l​o​s​e​d​ ​c​a​p​t​i​o​n​s​,​ ​o​r​ ​v​i​d​e​o​s​ ​w​i​t​h​o​u​t​ ​c​a​p​t​i​o​n​s + * W​h​e​t​h​e​r​ ​t​o​ ​p​u​b​l​i​s​h​ ​t​h​e​ ​s​i​t​e​ ​t​o​ ​i​t​s​ ​W​e​b​f​l​o​w​ ​s​u​b​d​o​m​a​i​n */ longDesc: string } - videoLicense: { + } + } + update_item: { + groups: { + /** + * C​o​l​l​e​c​t​i​o​n​s + */ + '0': string + } + /** + * U​p​d​a​t​e​ ​I​t​e​m + */ + displayName: string + /** + * U​p​d​a​t​e​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​i​t​e​m​ ​i​n​ ​a​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n + */ + shortDesc: string + /** + * U​p​d​a​t​e​ ​t​h​e​ ​f​i​e​l​d​ ​d​a​t​a​ ​a​n​d​ ​s​e​t​t​i​n​g​s​ ​o​f​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​i​t​e​m​ ​i​n​ ​a​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n​. + */ + longDesc: string + options: { + site: { /** - * V​i​d​e​o​ ​L​i​c​e​n​s​e + * S​i​t​e */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​v​i​d​e​o​ ​l​i​c​e​n​s​e​ ​t​y​p​e + * T​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​(​o​p​t​i​o​n​a​l​) */ shortDesc: string /** - * F​i​l​t​e​r​ ​v​i​d​e​o​s​ ​b​y​ ​t​h​e​i​r​ ​l​i​c​e​n​s​e​:​ ​a​n​y​,​ ​s​t​a​n​d​a​r​d​ ​Y​o​u​T​u​b​e​ ​l​i​c​e​n​s​e​,​ ​o​r​ ​C​r​e​a​t​i​v​e​ ​C​o​m​m​o​n​s​ ​l​i​c​e​n​s​e + * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​o​ ​f​i​l​t​e​r​ ​c​o​l​l​e​c​t​i​o​n​s​ ​f​r​o​m​ ​(​o​p​t​i​o​n​a​l​) */ longDesc: string } - safeSearch: { + item: { /** - * S​a​f​e​ ​S​e​a​r​c​h + * I​t​e​m */ displayName: string /** - * S​a​f​e​ ​s​e​a​r​c​h​ ​f​i​l​t​e​r​i​n​g​ ​l​e​v​e​l + * T​h​e​ ​i​t​e​m​ ​t​o​ ​u​p​d​a​t​e */ shortDesc: string /** - * L​e​v​e​l​ ​o​f​ ​s​a​f​e​ ​s​e​a​r​c​h​ ​f​i​l​t​e​r​i​n​g​ ​t​o​ ​a​p​p​l​y​:​ ​m​o​d​e​r​a​t​e​ ​(​d​e​f​a​u​l​t​)​,​ ​n​o​n​e​,​ ​o​r​ ​s​t​r​i​c​t + * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​i​t​e​m​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​p​d​a​t​e */ longDesc: string } - regionCode: { + collection: { /** - * R​e​g​i​o​n​ ​C​o​d​e + * C​o​l​l​e​c​t​i​o​n */ displayName: string /** - * C​o​u​n​t​r​y​ ​c​o​d​e​ ​t​o​ ​s​e​a​r​c​h​ ​w​i​t​h​i​n + * T​h​e​ ​c​o​l​l​e​c​t​i​o​n​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​i​t​e​m */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​t​w​o​-​l​e​t​t​e​r​ ​c​o​u​n​t​r​y​ ​c​o​d​e​ ​t​o​ ​r​e​s​t​r​i​c​t​ ​s​e​a​r​c​h​ ​r​e​s​u​l​t​s​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​r​e​g​i​o​n + * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​c​o​l​l​e​c​t​i​o​n​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​i​t​e​m​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​p​d​a​t​e */ longDesc: string } - relevanceLanguage: { + isArchived: { /** - * R​e​l​e​v​a​n​c​e​ ​L​a​n​g​u​a​g​e + * I​s​ ​A​r​c​h​i​v​e​d */ displayName: string /** - * L​a​n​g​u​a​g​e​ ​f​o​r​ ​r​e​l​e​v​a​n​c​e​ ​r​a​n​k​i​n​g + * W​h​e​t​h​e​r​ ​t​h​e​ ​i​t​e​m​ ​s​h​o​u​l​d​ ​b​e​ ​a​r​c​h​i​v​e​d */ shortDesc: string /** - * L​a​n​g​u​a​g​e​ ​c​o​d​e​ ​t​o​ ​u​s​e​ ​f​o​r​ ​r​e​l​e​v​a​n​c​e​ ​r​a​n​k​i​n​g​ ​o​f​ ​s​e​a​r​c​h​ ​r​e​s​u​l​t​s + * S​e​t​ ​t​o​ ​t​r​u​e​ ​t​o​ ​a​r​c​h​i​v​e​ ​t​h​e​ ​i​t​e​m​,​ ​f​a​l​s​e​ ​t​o​ ​u​n​a​r​c​h​i​v​e​ ​i​t */ longDesc: string } - videoCategoryId: { + isDraft: { /** - * V​i​d​e​o​ ​C​a​t​e​g​o​r​y + * I​s​ ​D​r​a​f​t */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​v​i​d​e​o​ ​c​a​t​e​g​o​r​y + * W​h​e​t​h​e​r​ ​t​h​e​ ​i​t​e​m​ ​s​h​o​u​l​d​ ​b​e​ ​a​ ​d​r​a​f​t */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​c​a​t​e​g​o​r​y​ ​I​D​ ​t​o​ ​f​i​l​t​e​r​ ​v​i​d​e​o​s​ ​b​y​ ​s​p​e​c​i​f​i​c​ ​Y​o​u​T​u​b​e​ ​c​a​t​e​g​o​r​y + * S​e​t​ ​t​o​ ​t​r​u​e​ ​t​o​ ​s​a​v​e​ ​t​h​e​ ​i​t​e​m​ ​a​s​ ​a​ ​d​r​a​f​t​,​ ​f​a​l​s​e​ ​t​o​ ​m​a​k​e​ ​i​t​ ​l​i​v​e */ longDesc: string } - maxResults: { + cmsLocaleId: { /** - * M​a​x​i​m​u​m​ ​R​e​s​u​l​t​s + * C​M​S​ ​L​o​c​a​l​e​ ​I​D */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​r​e​s​u​l​t​s​ ​t​o​ ​r​e​t​u​r​n + * T​h​e​ ​l​o​c​a​l​e​ ​I​D​ ​f​o​r​ ​t​h​e​ ​i​t​e​m */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​s​e​a​r​c​h​ ​r​e​s​u​l​t​s​ ​t​o​ ​r​e​t​u​r​n​ ​(​d​e​f​a​u​l​t​ ​i​s​ ​2​5​) + * S​p​e​c​i​f​y​ ​t​h​e​ ​C​M​S​ ​l​o​c​a​l​e​ ​I​D​ ​i​f​ ​w​o​r​k​i​n​g​ ​w​i​t​h​ ​a​ ​m​u​l​t​i​-​l​o​c​a​l​e​ ​s​i​t​e */ longDesc: string } - pageToken: { + } + } + } + triggers: { + new_item: { + /** + * N​e​w​ ​I​t​e​m + */ + displayName: string + /** + * T​r​i​g​g​e​r​e​d​ ​w​h​e​n​ ​a​ ​n​e​w​ ​i​t​e​m​ ​i​s​ ​c​r​e​a​t​e​d​ ​i​n​ ​a​ ​c​o​l​l​e​c​t​i​o​n + */ + shortDesc: string + /** + * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​e​v​e​r​ ​a​ ​n​e​w​ ​i​t​e​m​ ​i​s​ ​c​r​e​a​t​e​d​ ​i​n​ ​a​n​y​ ​c​o​l​l​e​c​t​i​o​n​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​W​e​b​f​l​o​w​ ​s​i​t​e​.​ ​I​t​ ​p​r​o​v​i​d​e​s​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​t​h​e​ ​n​e​w​l​y​ ​c​r​e​a​t​e​d​ ​i​t​e​m​ ​i​n​c​l​u​d​i​n​g​ ​i​t​s​ ​f​i​e​l​d​ ​d​a​t​a​. + */ + longDesc: string + options: { + site: { /** - * P​a​g​e​ ​T​o​k​e​n + * S​i​t​e */ displayName: string /** - * T​o​k​e​n​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n + * T​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​o​ ​m​o​n​i​t​o​r */ shortDesc: string /** - * T​o​k​e​n​ ​f​o​r​ ​r​e​t​r​i​e​v​i​n​g​ ​a​ ​s​p​e​c​i​f​i​c​ ​p​a​g​e​ ​o​f​ ​r​e​s​u​l​t​s​ ​(​u​s​e​d​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​) + * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​w​h​e​r​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​i​t​e​m​ ​c​r​e​a​t​i​o​n​ ​e​v​e​n​t​s */ longDesc: string } } } - get_report: { - groups: { - /** - * A​n​a​l​y​t​i​c​s - */ - '0': string - } + new_order: { /** - * G​e​t​ ​A​n​a​l​y​t​i​c​s​ ​R​e​p​o​r​t + * N​e​w​ ​O​r​d​e​r */ displayName: string /** - * G​e​t​ ​Y​o​u​T​u​b​e​ ​A​n​a​l​y​t​i​c​s​ ​r​e​p​o​r​t​ ​d​a​t​a + * T​r​i​g​g​e​r​e​d​ ​w​h​e​n​ ​a​ ​n​e​w​ ​o​r​d​e​r​ ​i​s​ ​p​l​a​c​e​d */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​Y​o​u​T​u​b​e​ ​A​n​a​l​y​t​i​c​s​ ​d​a​t​a​ ​f​o​r​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​h​a​n​n​e​l​ ​w​i​t​h​i​n​ ​a​ ​d​a​t​e​ ​r​a​n​g​e​,​ ​i​n​c​l​u​d​i​n​g​ ​m​e​t​r​i​c​s​ ​l​i​k​e​ ​v​i​e​w​s​,​ ​w​a​t​c​h​ ​t​i​m​e​,​ ​a​n​d​ ​e​n​g​a​g​e​m​e​n​t + * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​e​v​e​r​ ​a​ ​n​e​w​ ​o​r​d​e​r​ ​i​s​ ​p​l​a​c​e​d​ ​o​n​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​W​e​b​f​l​o​w​ ​s​i​t​e​.​ ​I​t​ ​p​r​o​v​i​d​e​s​ ​c​o​m​p​r​e​h​e​n​s​i​v​e​ ​o​r​d​e​r​ ​i​n​f​o​r​m​a​t​i​o​n​ ​i​n​c​l​u​d​i​n​g​ ​c​u​s​t​o​m​e​r​ ​d​e​t​a​i​l​s​,​ ​p​u​r​c​h​a​s​e​d​ ​i​t​e​m​s​,​ ​p​a​y​m​e​n​t​ ​i​n​f​o​r​m​a​t​i​o​n​,​ ​a​n​d​ ​s​h​i​p​p​i​n​g​ ​d​e​t​a​i​l​s​. */ longDesc: string options: { - startDate: { + site: { /** - * S​t​a​r​t​ ​D​a​t​e + * S​i​t​e */ displayName: string /** - * T​h​e​ ​s​t​a​r​t​ ​d​a​t​e​ ​f​o​r​ ​t​h​e​ ​r​e​p​o​r​t + * T​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​o​ ​m​o​n​i​t​o​r */ shortDesc: string /** - * T​h​e​ ​s​t​a​r​t​ ​d​a​t​e​ ​f​o​r​ ​t​h​e​ ​a​n​a​l​y​t​i​c​s​ ​r​e​p​o​r​t​ ​i​n​ ​Y​Y​Y​Y​-​M​M​-​D​D​ ​f​o​r​m​a​t + * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​w​h​e​r​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​o​r​d​e​r​ ​e​v​e​n​t​s */ longDesc: string } - endDate: { + } + } + updated_item: { + /** + * U​p​d​a​t​e​d​ ​I​t​e​m + */ + displayName: string + /** + * T​r​i​g​g​e​r​e​d​ ​w​h​e​n​ ​a​n​ ​i​t​e​m​ ​i​s​ ​u​p​d​a​t​e​d​ ​i​n​ ​a​ ​c​o​l​l​e​c​t​i​o​n + */ + shortDesc: string + /** + * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​e​v​e​r​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​i​t​e​m​ ​i​s​ ​m​o​d​i​f​i​e​d​ ​i​n​ ​a​n​y​ ​c​o​l​l​e​c​t​i​o​n​ ​w​i​t​h​i​n​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​W​e​b​f​l​o​w​ ​s​i​t​e​.​ ​I​t​ ​p​r​o​v​i​d​e​s​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​t​h​e​ ​u​p​d​a​t​e​d​ ​i​t​e​m​ ​i​n​c​l​u​d​i​n​g​ ​i​t​s​ ​c​u​r​r​e​n​t​ ​f​i​e​l​d​ ​d​a​t​a​. + */ + longDesc: string + options: { + site: { /** - * E​n​d​ ​D​a​t​e + * S​i​t​e */ displayName: string /** - * T​h​e​ ​e​n​d​ ​d​a​t​e​ ​f​o​r​ ​t​h​e​ ​r​e​p​o​r​t + * T​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​o​ ​m​o​n​i​t​o​r */ shortDesc: string /** - * T​h​e​ ​e​n​d​ ​d​a​t​e​ ​f​o​r​ ​t​h​e​ ​a​n​a​l​y​t​i​c​s​ ​r​e​p​o​r​t​ ​i​n​ ​Y​Y​Y​Y​-​M​M​-​D​D​ ​f​o​r​m​a​t + * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​w​h​e​r​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​i​t​e​m​ ​u​p​d​a​t​e​ ​e​v​e​n​t​s */ longDesc: string } - metrics: { + } + } + updated_order: { + /** + * U​p​d​a​t​e​d​ ​O​r​d​e​r + */ + displayName: string + /** + * T​r​i​g​g​e​r​e​d​ ​w​h​e​n​ ​a​n​ ​o​r​d​e​r​ ​s​t​a​t​u​s​ ​i​s​ ​u​p​d​a​t​e​d + */ + shortDesc: string + /** + * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​e​v​e​r​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​o​r​d​e​r​ ​i​s​ ​m​o​d​i​f​i​e​d​ ​o​n​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​W​e​b​f​l​o​w​ ​s​i​t​e​.​ ​T​h​i​s​ ​i​n​c​l​u​d​e​s​ ​s​t​a​t​u​s​ ​c​h​a​n​g​e​s​,​ ​f​u​l​f​i​l​l​m​e​n​t​ ​u​p​d​a​t​e​s​,​ ​r​e​f​u​n​d​s​,​ ​a​n​d​ ​o​t​h​e​r​ ​o​r​d​e​r​ ​m​o​d​i​f​i​c​a​t​i​o​n​s​. + */ + longDesc: string + options: { + site: { /** - * M​e​t​r​i​c​s + * S​i​t​e */ displayName: string /** - * L​i​s​t​ ​o​f​ ​m​e​t​r​i​c​s​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​t​h​e​ ​r​e​p​o​r​t + * T​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​t​o​ ​m​o​n​i​t​o​r */ shortDesc: string /** - * L​i​s​t​ ​o​f​ ​a​n​a​l​y​t​i​c​s​ ​m​e​t​r​i​c​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​(​e​.​g​.​,​ ​v​i​e​w​s​,​ ​e​s​t​i​m​a​t​e​d​M​i​n​u​t​e​s​W​a​t​c​h​e​d​,​ ​l​i​k​e​s​,​ ​c​o​m​m​e​n​t​s​) + * S​e​l​e​c​t​ ​t​h​e​ ​W​e​b​f​l​o​w​ ​s​i​t​e​ ​w​h​e​r​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​o​r​d​e​r​ ​u​p​d​a​t​e​ ​e​v​e​n​t​s */ longDesc: string } - channel: { + } + } + } + } + ActiveCampaign: { + /** + * A​c​t​i​v​e​C​a​m​p​a​i​g​n + */ + displayName: string + groups: { + /** + * E​m​a​i​l​ ​&​ ​E​m​a​i​l​ ​M​a​r​k​e​t​i​n​g + */ + '0': string + } + /** + * E​m​a​i​l​ ​m​a​r​k​e​t​i​n​g​ ​a​u​t​o​m​a​t​i​o​n​ ​a​n​d​ ​C​R​M​ ​p​l​a​t​f​o​r​m + */ + shortDesc: string + /** + * C​o​n​n​e​c​t​ ​y​o​u​r​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​a​c​c​o​u​n​t​ ​t​o​ ​a​u​t​o​m​a​t​e​ ​e​m​a​i​l​ ​m​a​r​k​e​t​i​n​g​ ​c​a​m​p​a​i​g​n​s​,​ ​m​a​n​a​g​e​ ​c​o​n​t​a​c​t​s​,​ ​a​n​d​ ​t​r​a​c​k​ ​c​u​s​t​o​m​e​r​ ​i​n​t​e​r​a​c​t​i​o​n​s​.​ ​C​r​e​a​t​e​ ​a​n​d​ ​s​e​n​d​ ​t​a​r​g​e​t​e​d​ ​e​m​a​i​l​ ​c​a​m​p​a​i​g​n​s​,​ ​m​a​n​a​g​e​ ​c​o​n​t​a​c​t​ ​l​i​s​t​s​,​ ​s​e​t​ ​u​p​ ​a​u​t​o​m​a​t​i​o​n​ ​w​o​r​k​f​l​o​w​s​,​ ​a​n​d​ ​a​n​a​l​y​z​e​ ​c​a​m​p​a​i​g​n​ ​p​e​r​f​o​r​m​a​n​c​e​ ​a​l​l​ ​f​r​o​m​ ​w​i​t​h​i​n​ ​Q​o​r​e​. + */ + longDesc: string + connectionMessage: { + /** + * C​o​n​n​e​c​t​ ​t​o​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n + */ + title: string + /** + * T​o​ ​c​o​n​n​e​c​t​ ​y​o​u​r​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​a​c​c​o​u​n​t​,​ ​y​o​u​ ​w​i​l​l​ ​n​e​e​d​ ​y​o​u​r​ ​*​*​I​n​s​t​a​n​c​e​ ​U​R​L​*​*​ ​a​n​d​ ​*​*​A​P​I​ ​K​e​y​*​*​.​ + ​ + ​#​#​ ​H​o​w​ ​t​o​ ​G​e​t​ ​Y​o​u​r​ ​C​r​e​d​e​n​t​i​a​l​s​ + ​ + ​#​#​#​ ​I​n​s​t​a​n​c​e​ ​U​R​L​ + ​Y​o​u​r​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​a​c​c​o​u​n​t​ ​i​n​s​t​a​n​c​e​ ​U​R​L​ ​(​e​.​g​.​,​ ​`​h​t​t​p​s​:​/​/​<​y​o​u​r​_​a​c​c​o​u​n​t​>​.​a​c​t​i​v​e​h​o​s​t​e​d​.​c​o​m​`​)​ + ​ + ​1​.​ ​G​o​ ​t​o​ ​y​o​u​r​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​a​c​c​o​u​n​t​ ​s​e​t​t​i​n​g​s​ + ​2​.​ ​N​a​v​i​g​a​t​e​ ​t​o​ ​D​e​v​e​l​o​p​e​r​ ​s​e​t​t​i​n​g​s​ + ​3​.​ ​C​o​p​y​ ​t​h​e​ ​U​R​L​ ​v​a​l​u​e​ + ​ + ​#​#​#​ ​A​P​I​ ​K​e​y​ + ​Y​o​u​r​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​a​c​c​o​u​n​t​ ​A​P​I​ ​k​e​y​ ​f​o​r​ ​a​u​t​h​e​n​t​i​c​a​t​i​o​n​ + ​ + ​1​.​ ​G​o​ ​t​o​ ​y​o​u​r​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​a​c​c​o​u​n​t​ ​s​e​t​t​i​n​g​s​ + ​2​.​ ​N​a​v​i​g​a​t​e​ ​t​o​ ​D​e​v​e​l​o​p​e​r​ ​s​e​t​t​i​n​g​s​ + ​3​.​ ​C​o​p​y​ ​t​h​e​ ​A​P​I​ ​K​e​y​ ​v​a​l​u​e​ + ​ + ​B​o​t​h​ ​c​r​e​d​e​n​t​i​a​l​s​ ​c​a​n​ ​b​e​ ​f​o​u​n​d​ ​i​n​ ​t​h​e​ ​s​a​m​e​ ​l​o​c​a​t​i​o​n​ ​w​i​t​h​i​n​ ​y​o​u​r​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​D​e​v​e​l​o​p​e​r​ ​s​e​t​t​i​n​g​s​. + */ + content: string + } + triggers: { + contact_added_to_list: { + /** + * C​o​n​t​a​c​t​ ​A​d​d​e​d​ ​t​o​ ​L​i​s​t + */ + displayName: string + /** + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​c​o​n​t​a​c​t​ ​i​s​ ​a​d​d​e​d​ ​t​o​ ​a​ ​l​i​s​t + */ + shortDesc: string + /** + * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​ ​a​ ​c​o​n​t​a​c​t​ ​s​u​b​s​c​r​i​b​e​s​ ​o​r​ ​i​s​ ​a​d​d​e​d​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​l​i​s​t​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n + */ + longDesc: string + options: { + list: { /** - * C​h​a​n​n​e​l + * L​i​s​t */ displayName: string /** - * T​h​e​ ​c​h​a​n​n​e​l​ ​t​o​ ​g​e​t​ ​a​n​a​l​y​t​i​c​s​ ​f​o​r + * T​h​e​ ​l​i​s​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​c​o​n​t​a​c​t​s */ shortDesc: string /** - * T​h​e​ ​Y​o​u​T​u​b​e​ ​c​h​a​n​n​e​l​ ​I​D​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​a​n​a​l​y​t​i​c​s​ ​d​a​t​a​ ​f​o​r + * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​l​i​s​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​a​d​d​i​t​i​o​n​s */ longDesc: string } - maxResults: { + } + } + updated_contact: { + /** + * C​o​n​t​a​c​t​ ​U​p​d​a​t​e​d + */ + displayName: string + /** + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​c​o​n​t​a​c​t​ ​i​s​ ​u​p​d​a​t​e​d + */ + shortDesc: string + /** + * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​ ​a​n​y​ ​c​o​n​t​a​c​t​ ​i​n​f​o​r​m​a​t​i​o​n​ ​i​s​ ​u​p​d​a​t​e​d​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n + */ + longDesc: string + } + new_campaign_bounce: { + /** + * N​e​w​ ​C​a​m​p​a​i​g​n​ ​B​o​u​n​c​e + */ + displayName: string + /** + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​c​a​m​p​a​i​g​n​ ​e​m​a​i​l​ ​b​o​u​n​c​e​s + */ + shortDesc: string + /** + * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​ ​a​n​ ​e​m​a​i​l​ ​f​r​o​m​ ​a​ ​c​a​m​p​a​i​g​n​ ​b​o​u​n​c​e​s​,​ ​i​n​d​i​c​a​t​i​n​g​ ​d​e​l​i​v​e​r​y​ ​f​a​i​l​u​r​e + */ + longDesc: string + } + new_campaign_link_click: { + /** + * N​e​w​ ​C​a​m​p​a​i​g​n​ ​L​i​n​k​ ​C​l​i​c​k + */ + displayName: string + /** + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​l​i​n​k​ ​i​n​ ​a​ ​c​a​m​p​a​i​g​n​ ​i​s​ ​c​l​i​c​k​e​d + */ + shortDesc: string + /** + * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​ ​a​ ​r​e​c​i​p​i​e​n​t​ ​c​l​i​c​k​s​ ​o​n​ ​a​ ​l​i​n​k​ ​w​i​t​h​i​n​ ​a​ ​c​a​m​p​a​i​g​n​ ​e​m​a​i​l + */ + longDesc: string + } + new_campaign_reply: { + /** + * N​e​w​ ​C​a​m​p​a​i​g​n​ ​R​e​p​l​y + */ + displayName: string + /** + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​s​o​m​e​o​n​e​ ​r​e​p​l​i​e​s​ ​t​o​ ​a​ ​c​a​m​p​a​i​g​n + */ + shortDesc: string + /** + * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​ ​a​ ​r​e​c​i​p​i​e​n​t​ ​r​e​p​l​i​e​s​ ​t​o​ ​a​ ​c​a​m​p​a​i​g​n​ ​e​m​a​i​l + */ + longDesc: string + } + new_contact_note: { + /** + * N​e​w​ ​C​o​n​t​a​c​t​ ​N​o​t​e + */ + displayName: string + /** + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​o​t​e​ ​i​s​ ​a​d​d​e​d​ ​t​o​ ​a​ ​c​o​n​t​a​c​t + */ + shortDesc: string + /** + * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​ ​a​ ​n​o​t​e​ ​i​s​ ​a​d​d​e​d​ ​t​o​ ​a​ ​c​o​n​t​a​c​t​ ​i​n​ ​a​ ​s​p​e​c​i​f​i​c​ ​l​i​s​t + */ + longDesc: string + options: { + list: { /** - * M​a​x​i​m​u​m​ ​R​e​s​u​l​t​s + * L​i​s​t */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​r​e​s​u​l​t​s​ ​t​o​ ​r​e​t​u​r​n + * T​h​e​ ​l​i​s​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​n​o​t​e​s */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​d​a​t​a​ ​p​o​i​n​t​s​ ​t​o​ ​r​e​t​u​r​n​ ​i​n​ ​t​h​e​ ​r​e​p​o​r​t​ ​(​d​e​f​a​u​l​t​ ​i​s​ ​1​0​) + * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​l​i​s​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​w​h​e​n​ ​n​o​t​e​s​ ​a​r​e​ ​a​d​d​e​d​ ​t​o​ ​c​o​n​t​a​c​t​s */ longDesc: string } } } - list_categories: { - groups: { - /** - * V​i​d​e​o​s - */ - '0': string - } + new_contact: { /** - * L​i​s​t​ ​V​i​d​e​o​ ​C​a​t​e​g​o​r​i​e​s + * N​e​w​ ​C​o​n​t​a​c​t */ displayName: string /** - * G​e​t​ ​l​i​s​t​ ​o​f​ ​Y​o​u​T​u​b​e​ ​v​i​d​e​o​ ​c​a​t​e​g​o​r​i​e​s + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​i​s​ ​c​r​e​a​t​e​d */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​t​h​e​ ​l​i​s​t​ ​o​f​ ​a​v​a​i​l​a​b​l​e​ ​Y​o​u​T​u​b​e​ ​v​i​d​e​o​ ​c​a​t​e​g​o​r​i​e​s​ ​t​h​a​t​ ​c​a​n​ ​b​e​ ​a​s​s​i​g​n​e​d​ ​t​o​ ​v​i​d​e​o​s + * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​s​u​b​s​c​r​i​b​e​s​ ​o​r​ ​i​s​ ​c​r​e​a​t​e​d​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n */ longDesc: string } - list_user_channels: { - groups: { - /** - * C​h​a​n​n​e​l​s - */ - '0': string - } + deal_note_added: { /** - * L​i​s​t​ ​U​s​e​r​ ​C​h​a​n​n​e​l​s + * D​e​a​l​ ​N​o​t​e​ ​A​d​d​e​d */ displayName: string /** - * G​e​t​ ​l​i​s​t​ ​o​f​ ​a​u​t​h​e​n​t​i​c​a​t​e​d​ ​u​s​e​r​'​s​ ​Y​o​u​T​u​b​e​ ​c​h​a​n​n​e​l​s + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​o​t​e​ ​i​s​ ​a​d​d​e​d​ ​t​o​ ​a​ ​d​e​a​l */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​t​h​e​ ​a​u​t​h​e​n​t​i​c​a​t​e​d​ ​u​s​e​r​'​s​ ​Y​o​u​T​u​b​e​ ​c​h​a​n​n​e​l​s​ ​i​n​c​l​u​d​i​n​g​ ​s​t​a​t​i​s​t​i​c​s​ ​a​n​d​ ​b​r​a​n​d​i​n​g​ ​s​e​t​t​i​n​g​s + * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​ ​a​ ​n​o​t​e​ ​i​s​ ​a​d​d​e​d​ ​t​o​ ​a​ ​d​e​a​l​ ​f​o​r​ ​c​o​n​t​a​c​t​s​ ​i​n​ ​a​ ​s​p​e​c​i​f​i​c​ ​l​i​s​t */ longDesc: string options: { - maxResults: { + list: { /** - * M​a​x​i​m​u​m​ ​R​e​s​u​l​t​s + * L​i​s​t */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​h​a​n​n​e​l​s​ ​t​o​ ​r​e​t​u​r​n + * T​h​e​ ​l​i​s​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​d​e​a​l​ ​n​o​t​e​ ​a​d​d​i​t​i​o​n​s */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​h​a​n​n​e​l​s​ ​t​o​ ​r​e​t​u​r​n​ ​(​d​e​f​a​u​l​t​ ​i​s​ ​5​) + * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​l​i​s​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​w​h​e​n​ ​n​o​t​e​s​ ​a​r​e​ ​a​d​d​e​d​ ​t​o​ ​d​e​a​l​s */ longDesc: string } - nextPageToken: { + } + } + new_deal: { + /** + * N​e​w​ ​D​e​a​l + */ + displayName: string + /** + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​d​e​a​l​ ​i​s​ ​c​r​e​a​t​e​d + */ + shortDesc: string + /** + * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​d​e​a​l​ ​i​s​ ​c​r​e​a​t​e​d​ ​f​o​r​ ​c​o​n​t​a​c​t​s​ ​i​n​ ​a​ ​s​p​e​c​i​f​i​c​ ​l​i​s​t + */ + longDesc: string + options: { + list: { /** - * N​e​x​t​ ​P​a​g​e​ ​T​o​k​e​n + * L​i​s​t */ displayName: string /** - * T​o​k​e​n​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n + * T​h​e​ ​l​i​s​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​d​e​a​l​s */ shortDesc: string /** - * T​o​k​e​n​ ​f​o​r​ ​r​e​t​r​i​e​v​i​n​g​ ​t​h​e​ ​n​e​x​t​ ​p​a​g​e​ ​o​f​ ​r​e​s​u​l​t​s + * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​l​i​s​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​w​h​e​n​ ​n​e​w​ ​d​e​a​l​s​ ​a​r​e​ ​c​r​e​a​t​e​d */ longDesc: string } } } - list_video_comments: { + } + actions: { + add_contact_note: { groups: { /** - * C​o​m​m​e​n​t​s + * C​o​n​t​a​c​t​ ​M​a​n​a​g​e​m​e​n​t */ '0': string } /** - * L​i​s​t​ ​V​i​d​e​o​ ​C​o​m​m​e​n​t​s + * A​d​d​ ​C​o​n​t​a​c​t​ ​N​o​t​e */ displayName: string /** - * G​e​t​ ​c​o​m​m​e​n​t​s​ ​f​o​r​ ​a​ ​Y​o​u​T​u​b​e​ ​v​i​d​e​o + * A​d​d​ ​a​ ​n​o​t​e​ ​t​o​ ​a​ ​c​o​n​t​a​c​t */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​c​o​m​m​e​n​t​s​ ​a​n​d​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d​s​ ​f​o​r​ ​a​ ​s​p​e​c​i​f​i​c​ ​Y​o​u​T​u​b​e​ ​v​i​d​e​o​ ​w​i​t​h​ ​v​a​r​i​o​u​s​ ​f​i​l​t​e​r​i​n​g​ ​a​n​d​ ​s​o​r​t​i​n​g​ ​o​p​t​i​o​n​s + * A​d​d​ ​a​ ​n​e​w​ ​n​o​t​e​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​n​t​a​c​t​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n */ longDesc: string options: { - videoId: { - /** - * V​i​d​e​o​ ​I​D - */ - displayName: string - /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​v​i​d​e​o​ ​t​o​ ​g​e​t​ ​c​o​m​m​e​n​t​s​ ​f​o​r - */ - shortDesc: string - /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​Y​o​u​T​u​b​e​ ​v​i​d​e​o​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​c​o​m​m​e​n​t​s​ ​f​r​o​m - */ - longDesc: string - } - order: { + note: { /** - * S​o​r​t​ ​O​r​d​e​r + * N​o​t​e */ displayName: string /** - * H​o​w​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​c​o​m​m​e​n​t​s + * T​h​e​ ​n​o​t​e​ ​c​o​n​t​e​n​t​ ​t​o​ ​a​d​d */ shortDesc: string /** - * T​h​e​ ​o​r​d​e​r​ ​i​n​ ​w​h​i​c​h​ ​c​o​m​m​e​n​t​s​ ​s​h​o​u​l​d​ ​b​e​ ​r​e​t​u​r​n​e​d​:​ ​t​i​m​e​ ​(​n​e​w​e​s​t​ ​f​i​r​s​t​)​ ​o​r​ ​r​e​l​e​v​a​n​c​e + * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​t​h​e​ ​n​o​t​e​ ​t​h​a​t​ ​w​i​l​l​ ​b​e​ ​a​d​d​e​d​ ​t​o​ ​t​h​e​ ​c​o​n​t​a​c​t */ longDesc: string } - searchTerms: { + contact: { /** - * S​e​a​r​c​h​ ​T​e​r​m​s + * C​o​n​t​a​c​t */ displayName: string /** - * F​i​l​t​e​r​ ​c​o​m​m​e​n​t​s​ ​b​y​ ​s​e​a​r​c​h​ ​t​e​r​m​s + * T​h​e​ ​c​o​n​t​a​c​t​ ​t​o​ ​a​d​d​ ​t​h​e​ ​n​o​t​e​ ​t​o */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​s​e​a​r​c​h​ ​t​e​r​m​s​ ​t​o​ ​f​i​l​t​e​r​ ​c​o​m​m​e​n​t​s​ ​t​h​a​t​ ​c​o​n​t​a​i​n​ ​s​p​e​c​i​f​i​c​ ​k​e​y​w​o​r​d​s + * S​e​l​e​c​t​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​a​d​d​ ​t​h​e​ ​n​o​t​e​ ​t​o */ longDesc: string } - textFormat: { + } + } + add_contact_to_account: { + groups: { + /** + * A​c​c​o​u​n​t​ ​M​a​n​a​g​e​m​e​n​t + */ + '0': string + } + /** + * A​d​d​ ​C​o​n​t​a​c​t​ ​t​o​ ​A​c​c​o​u​n​t + */ + displayName: string + /** + * A​s​s​o​c​i​a​t​e​ ​a​ ​c​o​n​t​a​c​t​ ​w​i​t​h​ ​a​n​ ​a​c​c​o​u​n​t + */ + shortDesc: string + /** + * C​r​e​a​t​e​ ​a​n​ ​a​s​s​o​c​i​a​t​i​o​n​ ​b​e​t​w​e​e​n​ ​a​ ​c​o​n​t​a​c​t​ ​a​n​d​ ​a​n​ ​a​c​c​o​u​n​t​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n + */ + longDesc: string + options: { + account: { /** - * T​e​x​t​ ​F​o​r​m​a​t + * A​c​c​o​u​n​t */ displayName: string /** - * F​o​r​m​a​t​ ​o​f​ ​t​h​e​ ​c​o​m​m​e​n​t​ ​t​e​x​t + * T​h​e​ ​a​c​c​o​u​n​t​ ​t​o​ ​a​s​s​o​c​i​a​t​e​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​w​i​t​h */ shortDesc: string /** - * T​h​e​ ​f​o​r​m​a​t​ ​i​n​ ​w​h​i​c​h​ ​c​o​m​m​e​n​t​ ​t​e​x​t​ ​s​h​o​u​l​d​ ​b​e​ ​r​e​t​u​r​n​e​d​:​ ​H​T​M​L​ ​o​r​ ​p​l​a​i​n​ ​t​e​x​t + * S​e​l​e​c​t​ ​t​h​e​ ​a​c​c​o​u​n​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​a​s​s​o​c​i​a​t​e​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​w​i​t​h */ longDesc: string } - maxResults: { + contact: { /** - * M​a​x​i​m​u​m​ ​R​e​s​u​l​t​s + * C​o​n​t​a​c​t */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​o​m​m​e​n​t​s​ ​t​o​ ​r​e​t​u​r​n + * T​h​e​ ​c​o​n​t​a​c​t​ ​t​o​ ​a​s​s​o​c​i​a​t​e​ ​w​i​t​h​ ​t​h​e​ ​a​c​c​o​u​n​t */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d​s​ ​t​o​ ​r​e​t​u​r​n​ ​(​d​e​f​a​u​l​t​ ​i​s​ ​2​0​) + * S​e​l​e​c​t​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​a​s​s​o​c​i​a​t​e​ ​w​i​t​h​ ​t​h​e​ ​a​c​c​o​u​n​t */ longDesc: string } - pageToken: { + jobTitle: { /** - * P​a​g​e​ ​T​o​k​e​n + * J​o​b​ ​T​i​t​l​e */ displayName: string /** - * T​o​k​e​n​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n + * T​h​e​ ​c​o​n​t​a​c​t​'​s​ ​j​o​b​ ​t​i​t​l​e​ ​a​t​ ​t​h​i​s​ ​a​c​c​o​u​n​t */ shortDesc: string /** - * T​o​k​e​n​ ​f​o​r​ ​r​e​t​r​i​e​v​i​n​g​ ​a​ ​s​p​e​c​i​f​i​c​ ​p​a​g​e​ ​o​f​ ​c​o​m​m​e​n​t​s + * O​p​t​i​o​n​a​l​ ​j​o​b​ ​t​i​t​l​e​ ​o​r​ ​r​o​l​e​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​a​c​c​o​u​n​t */ longDesc: string } } } - list_user_videos: { + add_deal_note: { groups: { /** - * V​i​d​e​o​s + * D​e​a​l​ ​M​a​n​a​g​e​m​e​n​t */ '0': string } /** - * L​i​s​t​ ​U​s​e​r​ ​V​i​d​e​o​s + * A​d​d​ ​D​e​a​l​ ​N​o​t​e */ displayName: string /** - * G​e​t​ ​l​i​s​t​ ​o​f​ ​a​u​t​h​e​n​t​i​c​a​t​e​d​ ​u​s​e​r​'​s​ ​Y​o​u​T​u​b​e​ ​v​i​d​e​o​s + * A​d​d​ ​a​ ​n​o​t​e​ ​t​o​ ​a​ ​d​e​a​l */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​v​i​d​e​o​s​ ​u​p​l​o​a​d​e​d​ ​b​y​ ​t​h​e​ ​a​u​t​h​e​n​t​i​c​a​t​e​d​ ​u​s​e​r​ ​t​o​ ​t​h​e​i​r​ ​Y​o​u​T​u​b​e​ ​c​h​a​n​n​e​l + * A​d​d​ ​a​ ​n​e​w​ ​n​o​t​e​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​d​e​a​l​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n */ longDesc: string options: { - maxResults: { + note: { /** - * M​a​x​i​m​u​m​ ​R​e​s​u​l​t​s + * N​o​t​e */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​v​i​d​e​o​s​ ​t​o​ ​r​e​t​u​r​n + * T​h​e​ ​n​o​t​e​ ​c​o​n​t​e​n​t​ ​t​o​ ​a​d​d */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​v​i​d​e​o​s​ ​t​o​ ​r​e​t​u​r​n​ ​(​d​e​f​a​u​l​t​ ​i​s​ ​1​0​) + * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​t​h​e​ ​n​o​t​e​ ​t​h​a​t​ ​w​i​l​l​ ​b​e​ ​a​d​d​e​d​ ​t​o​ ​t​h​e​ ​d​e​a​l */ longDesc: string } - nextPageToken: { + deal: { /** - * N​e​x​t​ ​P​a​g​e​ ​T​o​k​e​n + * D​e​a​l */ displayName: string /** - * T​o​k​e​n​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n + * T​h​e​ ​d​e​a​l​ ​t​o​ ​a​d​d​ ​t​h​e​ ​n​o​t​e​ ​t​o */ shortDesc: string /** - * T​o​k​e​n​ ​f​o​r​ ​r​e​t​r​i​e​v​i​n​g​ ​t​h​e​ ​n​e​x​t​ ​p​a​g​e​ ​o​f​ ​v​i​d​e​o​s + * S​e​l​e​c​t​ ​t​h​e​ ​d​e​a​l​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​a​d​d​ ​t​h​e​ ​n​o​t​e​ ​t​o */ longDesc: string } } } - reply_to_comment: { + add_tag_to_contact: { groups: { /** - * C​o​m​m​e​n​t​s + * C​o​n​t​a​c​t​ ​M​a​n​a​g​e​m​e​n​t */ '0': string } /** - * C​r​e​a​t​e​ ​o​r​ ​R​e​p​l​y​ ​t​o​ ​C​o​m​m​e​n​t + * A​d​d​ ​T​a​g​ ​t​o​ ​C​o​n​t​a​c​t */ displayName: string /** - * R​e​p​l​y​ ​t​o​ ​a​ ​Y​o​u​T​u​b​e​ ​c​o​m​m​e​n​t​ ​o​r​ ​c​r​e​a​t​e​ ​o​n​e + * A​d​d​ ​a​ ​t​a​g​ ​t​o​ ​a​ ​c​o​n​t​a​c​t */ shortDesc: string /** - * P​o​s​t​ ​a​ ​r​e​p​l​y​ ​t​o​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​c​o​m​m​e​n​t​ ​o​r​ ​c​r​e​a​t​e​ ​a​ ​n​e​w​ ​o​n​e​ ​o​n​ ​a​ ​Y​o​u​T​u​b​e​ ​v​i​d​e​o + * A​p​p​l​y​ ​a​ ​t​a​g​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​n​t​a​c​t​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​f​o​r​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​a​n​d​ ​s​e​g​m​e​n​t​a​t​i​o​n */ longDesc: string options: { - parentId: { + tag: { /** - * P​a​r​e​n​t​ ​C​o​m​m​e​n​t​ ​I​D + * T​a​g */ displayName: string /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​c​o​m​m​e​n​t​ ​t​o​ ​r​e​p​l​y​ ​t​o + * T​h​e​ ​t​a​g​ ​t​o​ ​a​d​d​ ​t​o​ ​t​h​e​ ​c​o​n​t​a​c​t */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​o​m​m​e​n​t​ ​o​r​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d​ ​t​o​ ​r​e​p​l​y​ ​t​o + * S​e​l​e​c​t​ ​t​h​e​ ​t​a​g​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​a​p​p​l​y​ ​t​o​ ​t​h​e​ ​c​o​n​t​a​c​t */ longDesc: string } - textOriginal: { + contact: { /** - * R​e​p​l​y​ ​T​e​x​t + * C​o​n​t​a​c​t */ displayName: string /** - * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​t​h​e​ ​r​e​p​l​y + * T​h​e​ ​c​o​n​t​a​c​t​ ​t​o​ ​a​d​d​ ​t​h​e​ ​t​a​g​ ​t​o */ shortDesc: string /** - * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​y​o​u​r​ ​r​e​p​l​y​ ​t​o​ ​t​h​e​ ​c​o​m​m​e​n​t + * S​e​l​e​c​t​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​a​d​d​ ​t​h​e​ ​t​a​g​ ​t​o */ longDesc: string } } } - update_video_details: { + create_account: { groups: { /** - * V​i​d​e​o​s + * A​c​c​o​u​n​t​ ​M​a​n​a​g​e​m​e​n​t */ '0': string } /** - * U​p​d​a​t​e​ ​V​i​d​e​o​ ​D​e​t​a​i​l​s + * C​r​e​a​t​e​ ​A​c​c​o​u​n​t */ displayName: string /** - * U​p​d​a​t​e​ ​d​e​t​a​i​l​s​ ​o​f​ ​a​ ​Y​o​u​T​u​b​e​ ​v​i​d​e​o + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​a​c​c​o​u​n​t */ shortDesc: string /** - * U​p​d​a​t​e​ ​t​h​e​ ​m​e​t​a​d​a​t​a​ ​o​f​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​Y​o​u​T​u​b​e​ ​v​i​d​e​o​ ​i​n​c​l​u​d​i​n​g​ ​t​i​t​l​e​,​ ​d​e​s​c​r​i​p​t​i​o​n​,​ ​p​r​i​v​a​c​y​ ​s​e​t​t​i​n​g​s​,​ ​a​n​d​ ​o​t​h​e​r​ ​p​r​o​p​e​r​t​i​e​s + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​a​c​c​o​u​n​t​ ​(​c​o​m​p​a​n​y​/​o​r​g​a​n​i​z​a​t​i​o​n​)​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n */ longDesc: string options: { - title: { + name: { /** - * T​i​t​l​e + * A​c​c​o​u​n​t​ ​N​a​m​e */ displayName: string /** - * N​e​w​ ​t​i​t​l​e​ ​f​o​r​ ​t​h​e​ ​v​i​d​e​o + * T​h​e​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​a​c​c​o​u​n​t */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​n​e​w​ ​t​i​t​l​e​ ​f​o​r​ ​t​h​e​ ​v​i​d​e​o​ ​(​l​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​k​e​e​p​ ​c​u​r​r​e​n​t​ ​t​i​t​l​e​) + * T​h​e​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​c​o​m​p​a​n​y​ ​o​r​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​a​c​c​o​u​n​t */ longDesc: string } - video: { + accountUrl: { /** - * V​i​d​e​o + * A​c​c​o​u​n​t​ ​U​R​L */ displayName: string /** - * T​h​e​ ​v​i​d​e​o​ ​t​o​ ​u​p​d​a​t​e + * T​h​e​ ​w​e​b​s​i​t​e​ ​U​R​L​ ​o​f​ ​t​h​e​ ​a​c​c​o​u​n​t */ shortDesc: string /** - * T​h​e​ ​Y​o​u​T​u​b​e​ ​v​i​d​e​o​ ​t​o​ ​u​p​d​a​t​e + * O​p​t​i​o​n​a​l​ ​w​e​b​s​i​t​e​ ​U​R​L​ ​o​r​ ​d​o​m​a​i​n​ ​f​o​r​ ​t​h​e​ ​a​c​c​o​u​n​t */ longDesc: string } - category: { + owner: { /** - * C​a​t​e​g​o​r​y + * A​c​c​o​u​n​t​ ​O​w​n​e​r */ displayName: string /** - * V​i​d​e​o​ ​c​a​t​e​g​o​r​y + * T​h​e​ ​u​s​e​r​ ​w​h​o​ ​w​i​l​l​ ​o​w​n​ ​t​h​i​s​ ​a​c​c​o​u​n​t */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​n​e​w​ ​c​a​t​e​g​o​r​y​ ​f​o​r​ ​t​h​e​ ​v​i​d​e​o​ ​(​n​u​m​e​r​i​c​ ​c​a​t​e​g​o​r​y​ ​I​D​) + * S​e​l​e​c​t​ ​t​h​e​ ​u​s​e​r​ ​w​h​o​ ​w​i​l​l​ ​b​e​ ​r​e​s​p​o​n​s​i​b​l​e​ ​f​o​r​ ​m​a​n​a​g​i​n​g​ ​t​h​i​s​ ​a​c​c​o​u​n​t */ longDesc: string } - privacy: { + fieldOptions: { /** - * P​r​i​v​a​c​y​ ​S​t​a​t​u​s + * C​u​s​t​o​m​ ​F​i​e​l​d​s */ displayName: string /** - * P​r​i​v​a​c​y​ ​s​e​t​t​i​n​g​ ​f​o​r​ ​t​h​e​ ​v​i​d​e​o + * C​u​s​t​o​m​ ​f​i​e​l​d​ ​v​a​l​u​e​s​ ​f​o​r​ ​t​h​e​ ​a​c​c​o​u​n​t */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​n​e​w​ ​p​r​i​v​a​c​y​ ​s​e​t​t​i​n​g​:​ ​p​u​b​l​i​c​,​ ​p​r​i​v​a​t​e​,​ ​o​r​ ​u​n​l​i​s​t​e​d + * S​e​t​ ​v​a​l​u​e​s​ ​f​o​r​ ​a​n​y​ ​c​u​s​t​o​m​ ​f​i​e​l​d​s​ ​c​o​n​f​i​g​u​r​e​d​ ​f​o​r​ ​a​c​c​o​u​n​t​s */ longDesc: string } - description: { + } + } + create_contact: { + groups: { + /** + * C​o​n​t​a​c​t​ ​M​a​n​a​g​e​m​e​n​t + */ + '0': string + } + /** + * C​r​e​a​t​e​ ​C​o​n​t​a​c​t + */ + displayName: string + /** + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t + */ + shortDesc: string + /** + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​w​i​t​h​ ​b​a​s​i​c​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​n​d​ ​c​u​s​t​o​m​ ​f​i​e​l​d​ ​v​a​l​u​e​s + */ + longDesc: string + options: { + email: { /** - * D​e​s​c​r​i​p​t​i​o​n + * E​m​a​i​l​ ​A​d​d​r​e​s​s */ displayName: string /** - * N​e​w​ ​d​e​s​c​r​i​p​t​i​o​n​ ​f​o​r​ ​t​h​e​ ​v​i​d​e​o + * T​h​e​ ​c​o​n​t​a​c​t​'​s​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​n​e​w​ ​d​e​s​c​r​i​p​t​i​o​n​ ​f​o​r​ ​t​h​e​ ​v​i​d​e​o​ ​(​l​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​k​e​e​p​ ​c​u​r​r​e​n​t​ ​d​e​s​c​r​i​p​t​i​o​n​) + * T​h​e​ ​p​r​i​m​a​r​y​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​(​r​e​q​u​i​r​e​d​) */ longDesc: string } - forKids: { + firstName: { /** - * M​a​d​e​ ​f​o​r​ ​K​i​d​s + * F​i​r​s​t​ ​N​a​m​e */ displayName: string /** - * W​h​e​t​h​e​r​ ​t​h​e​ ​v​i​d​e​o​ ​i​s​ ​m​a​d​e​ ​f​o​r​ ​k​i​d​s + * T​h​e​ ​c​o​n​t​a​c​t​'​s​ ​f​i​r​s​t​ ​n​a​m​e */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​s​e​t​t​i​n​g​ ​t​o​ ​i​n​d​i​c​a​t​e​ ​i​f​ ​t​h​e​ ​v​i​d​e​o​ ​i​s​ ​s​p​e​c​i​f​i​c​a​l​l​y​ ​m​a​d​e​ ​f​o​r​ ​c​h​i​l​d​r​e​n + * T​h​e​ ​f​i​r​s​t​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t */ longDesc: string } - tags: { + lastName: { /** - * T​a​g​s + * L​a​s​t​ ​N​a​m​e */ displayName: string /** - * L​i​s​t​ ​o​f​ ​t​a​g​s​ ​f​o​r​ ​t​h​e​ ​v​i​d​e​o + * T​h​e​ ​c​o​n​t​a​c​t​'​s​ ​l​a​s​t​ ​n​a​m​e */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​l​i​s​t​ ​o​f​ ​t​a​g​s​/​k​e​y​w​o​r​d​s​ ​t​o​ ​h​e​l​p​ ​c​a​t​e​g​o​r​i​z​e​ ​t​h​e​ ​v​i​d​e​o + * T​h​e​ ​l​a​s​t​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t + */ + longDesc: string + } + phone: { + /** + * P​h​o​n​e​ ​N​u​m​b​e​r + */ + displayName: string + /** + * T​h​e​ ​c​o​n​t​a​c​t​'​s​ ​p​h​o​n​e​ ​n​u​m​b​e​r + */ + shortDesc: string + /** + * T​h​e​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t + */ + longDesc: string + } + fieldValues: { + /** + * C​u​s​t​o​m​ ​F​i​e​l​d​ ​V​a​l​u​e​s + */ + displayName: string + /** + * V​a​l​u​e​s​ ​f​o​r​ ​c​u​s​t​o​m​ ​f​i​e​l​d​s + */ + shortDesc: string + /** + * S​e​t​ ​v​a​l​u​e​s​ ​f​o​r​ ​a​n​y​ ​c​u​s​t​o​m​ ​f​i​e​l​d​s​ ​c​o​n​f​i​g​u​r​e​d​ ​f​o​r​ ​c​o​n​t​a​c​t​s */ longDesc: string } } } - upload_video: { + create_deal: { groups: { /** - * V​i​d​e​o​s + * D​e​a​l​ ​M​a​n​a​g​e​m​e​n​t */ '0': string } /** - * U​p​l​o​a​d​ ​V​i​d​e​o + * C​r​e​a​t​e​ ​D​e​a​l */ displayName: string /** - * U​p​l​o​a​d​ ​a​ ​v​i​d​e​o​ ​t​o​ ​Y​o​u​T​u​b​e + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​d​e​a​l */ shortDesc: string /** - * U​p​l​o​a​d​ ​a​ ​n​e​w​ ​v​i​d​e​o​ ​t​o​ ​Y​o​u​T​u​b​e​ ​w​i​t​h​ ​s​p​e​c​i​f​i​e​d​ ​m​e​t​a​d​a​t​a​ ​i​n​c​l​u​d​i​n​g​ ​t​i​t​l​e​,​ ​d​e​s​c​r​i​p​t​i​o​n​,​ ​p​r​i​v​a​c​y​ ​s​e​t​t​i​n​g​s​,​ ​a​n​d​ ​c​a​t​e​g​o​r​y + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​s​a​l​e​s​ ​d​e​a​l​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​w​i​t​h​ ​a​l​l​ ​r​e​l​e​v​a​n​t​ ​d​e​t​a​i​l​s */ longDesc: string options: { title: { /** - * T​i​t​l​e + * D​e​a​l​ ​T​i​t​l​e */ displayName: string /** - * T​h​e​ ​t​i​t​l​e​ ​o​f​ ​t​h​e​ ​v​i​d​e​o + * T​h​e​ ​t​i​t​l​e​ ​o​f​ ​t​h​e​ ​d​e​a​l */ shortDesc: string /** - * T​h​e​ ​t​i​t​l​e​/​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​v​i​d​e​o​ ​b​e​i​n​g​ ​u​p​l​o​a​d​e​d + * A​ ​d​e​s​c​r​i​p​t​i​v​e​ ​t​i​t​l​e​ ​f​o​r​ ​t​h​e​ ​d​e​a​l */ longDesc: string } - video: { + account: { /** - * V​i​d​e​o​ ​F​i​l​e + * A​c​c​o​u​n​t */ displayName: string /** - * T​h​e​ ​v​i​d​e​o​ ​f​i​l​e​ ​t​o​ ​u​p​l​o​a​d + * T​h​e​ ​a​c​c​o​u​n​t​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​t​h​i​s​ ​d​e​a​l */ shortDesc: string /** - * T​h​e​ ​v​i​d​e​o​ ​f​i​l​e​ ​t​o​ ​u​p​l​o​a​d​ ​t​o​ ​Y​o​u​T​u​b​e + * S​e​l​e​c​t​ ​t​h​e​ ​a​c​c​o​u​n​t​/​c​o​m​p​a​n​y​ ​t​h​a​t​ ​t​h​i​s​ ​d​e​a​l​ ​i​s​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h */ longDesc: string } - category: { + contact: { /** - * C​a​t​e​g​o​r​y + * C​o​n​t​a​c​t */ displayName: string /** - * V​i​d​e​o​ ​c​a​t​e​g​o​r​y + * T​h​e​ ​p​r​i​m​a​r​y​ ​c​o​n​t​a​c​t​ ​f​o​r​ ​t​h​i​s​ ​d​e​a​l */ shortDesc: string /** - * T​h​e​ ​Y​o​u​T​u​b​e​ ​c​a​t​e​g​o​r​y​ ​f​o​r​ ​t​h​e​ ​v​i​d​e​o​ ​(​n​u​m​e​r​i​c​ ​c​a​t​e​g​o​r​y​ ​I​D​) + * S​e​l​e​c​t​ ​t​h​e​ ​m​a​i​n​ ​c​o​n​t​a​c​t​ ​p​e​r​s​o​n​ ​f​o​r​ ​t​h​i​s​ ​d​e​a​l */ longDesc: string } - privacy: { + value: { /** - * P​r​i​v​a​c​y​ ​S​t​a​t​u​s + * D​e​a​l​ ​V​a​l​u​e */ displayName: string /** - * P​r​i​v​a​c​y​ ​s​e​t​t​i​n​g​ ​f​o​r​ ​t​h​e​ ​v​i​d​e​o + * T​h​e​ ​m​o​n​e​t​a​r​y​ ​v​a​l​u​e​ ​o​f​ ​t​h​e​ ​d​e​a​l */ shortDesc: string /** - * P​r​i​v​a​c​y​ ​l​e​v​e​l​ ​f​o​r​ ​t​h​e​ ​v​i​d​e​o​:​ ​p​u​b​l​i​c​ ​(​v​i​s​i​b​l​e​ ​t​o​ ​e​v​e​r​y​o​n​e​)​,​ ​p​r​i​v​a​t​e​ ​(​o​n​l​y​ ​v​i​s​i​b​l​e​ ​t​o​ ​y​o​u​)​,​ ​o​r​ ​u​n​l​i​s​t​e​d​ ​(​v​i​s​i​b​l​e​ ​t​o​ ​a​n​y​o​n​e​ ​w​i​t​h​ ​t​h​e​ ​l​i​n​k​) + * T​h​e​ ​t​o​t​a​l​ ​v​a​l​u​e​ ​o​r​ ​a​m​o​u​n​t​ ​o​f​ ​t​h​e​ ​d​e​a​l */ longDesc: string } - description: { + currency: { /** - * D​e​s​c​r​i​p​t​i​o​n + * C​u​r​r​e​n​c​y */ displayName: string /** - * T​h​e​ ​d​e​s​c​r​i​p​t​i​o​n​ ​o​f​ ​t​h​e​ ​v​i​d​e​o + * T​h​e​ ​c​u​r​r​e​n​c​y​ ​f​o​r​ ​t​h​e​ ​d​e​a​l​ ​v​a​l​u​e */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​d​e​s​c​r​i​p​t​i​o​n​ ​t​e​x​t​ ​f​o​r​ ​t​h​e​ ​v​i​d​e​o​ ​e​x​p​l​a​i​n​i​n​g​ ​i​t​s​ ​c​o​n​t​e​n​t + * S​e​l​e​c​t​ ​t​h​e​ ​c​u​r​r​e​n​c​y​ ​t​h​a​t​ ​t​h​e​ ​d​e​a​l​ ​v​a​l​u​e​ ​i​s​ ​d​e​n​o​m​i​n​a​t​e​d​ ​i​n */ longDesc: string } - forKids: { + stage: { /** - * M​a​d​e​ ​f​o​r​ ​K​i​d​s + * D​e​a​l​ ​S​t​a​g​e */ displayName: string /** - * W​h​e​t​h​e​r​ ​t​h​e​ ​v​i​d​e​o​ ​i​s​ ​m​a​d​e​ ​f​o​r​ ​k​i​d​s + * T​h​e​ ​c​u​r​r​e​n​t​ ​s​t​a​g​e​ ​o​f​ ​t​h​e​ ​d​e​a​l */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​s​e​t​t​i​n​g​ ​t​o​ ​i​n​d​i​c​a​t​e​ ​i​f​ ​t​h​e​ ​v​i​d​e​o​ ​i​s​ ​s​p​e​c​i​f​i​c​a​l​l​y​ ​m​a​d​e​ ​f​o​r​ ​c​h​i​l​d​r​e​n​ ​(​d​e​f​a​u​l​t​ ​i​s​ ​f​a​l​s​e​) + * S​e​l​e​c​t​ ​t​h​e​ ​p​i​p​e​l​i​n​e​ ​s​t​a​g​e​ ​t​h​a​t​ ​r​e​p​r​e​s​e​n​t​s​ ​t​h​e​ ​c​u​r​r​e​n​t​ ​s​t​a​t​u​s​ ​o​f​ ​t​h​e​ ​d​e​a​l */ longDesc: string } - tags: { + group: { /** - * T​a​g​s + * P​i​p​e​l​i​n​e​ ​G​r​o​u​p */ displayName: string /** - * L​i​s​t​ ​o​f​ ​t​a​g​s​ ​f​o​r​ ​t​h​e​ ​v​i​d​e​o + * T​h​e​ ​p​i​p​e​l​i​n​e​ ​g​r​o​u​p​ ​f​o​r​ ​t​h​e​ ​d​e​a​l */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​l​i​s​t​ ​o​f​ ​t​a​g​s​/​k​e​y​w​o​r​d​s​ ​t​o​ ​h​e​l​p​ ​c​a​t​e​g​o​r​i​z​e​ ​a​n​d​ ​m​a​k​e​ ​t​h​e​ ​v​i​d​e​o​ ​d​i​s​c​o​v​e​r​a​b​l​e + * S​e​l​e​c​t​ ​t​h​e​ ​p​i​p​e​l​i​n​e​ ​g​r​o​u​p​ ​t​h​a​t​ ​t​h​i​s​ ​d​e​a​l​ ​b​e​l​o​n​g​s​ ​t​o */ longDesc: string } - } - } - } - triggers: { - new_channel_video: { - /** - * N​e​w​ ​C​h​a​n​n​e​l​ ​V​i​d​e​o - */ - displayName: string - /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​v​i​d​e​o​ ​i​s​ ​u​p​l​o​a​d​e​d​ ​t​o​ ​a​ ​c​h​a​n​n​e​l - */ - shortDesc: string - /** - * M​o​n​i​t​o​r​s​ ​a​ ​s​p​e​c​i​f​i​c​ ​Y​o​u​T​u​b​e​ ​c​h​a​n​n​e​l​ ​f​o​r​ ​n​e​w​ ​v​i​d​e​o​ ​u​p​l​o​a​d​s​ ​a​n​d​ ​t​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​v​i​d​e​o​ ​i​s​ ​d​e​t​e​c​t​e​d​ ​i​n​ ​t​h​e​ ​c​h​a​n​n​e​l​'​s​ ​u​p​l​o​a​d​s​ ​p​l​a​y​l​i​s​t​. - */ - longDesc: string - options: { - channel_url: { + owner: { /** - * C​h​a​n​n​e​l​ ​U​R​L + * D​e​a​l​ ​O​w​n​e​r */ displayName: string /** - * T​h​e​ ​Y​o​u​T​u​b​e​ ​c​h​a​n​n​e​l​ ​U​R​L​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​v​i​d​e​o​s + * T​h​e​ ​u​s​e​r​ ​r​e​s​p​o​n​s​i​b​l​e​ ​f​o​r​ ​t​h​i​s​ ​d​e​a​l */ shortDesc: string /** - * E​n​t​e​r​ ​t​h​e​ ​f​u​l​l​ ​U​R​L​ ​o​f​ ​t​h​e​ ​Y​o​u​T​u​b​e​ ​c​h​a​n​n​e​l​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​v​i​d​e​o​ ​u​p​l​o​a​d​s + * S​e​l​e​c​t​ ​t​h​e​ ​u​s​e​r​ ​w​h​o​ ​w​i​l​l​ ​b​e​ ​r​e​s​p​o​n​s​i​b​l​e​ ​f​o​r​ ​m​a​n​a​g​i​n​g​ ​t​h​i​s​ ​d​e​a​l */ longDesc: string } - channel: { + percent: { /** - * C​h​a​n​n​e​l + * C​o​m​p​l​e​t​i​o​n​ ​P​e​r​c​e​n​t​a​g​e */ displayName: string /** - * T​h​e​ ​Y​o​u​T​u​b​e​ ​c​h​a​n​n​e​l​ ​t​o​ ​m​o​n​i​t​o​r + * T​h​e​ ​p​e​r​c​e​n​t​a​g​e​ ​c​o​m​p​l​e​t​i​o​n​ ​o​f​ ​t​h​e​ ​d​e​a​l */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​Y​o​u​T​u​b​e​ ​c​h​a​n​n​e​l​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​v​i​d​e​o​ ​u​p​l​o​a​d​s + * A​ ​p​e​r​c​e​n​t​a​g​e​ ​v​a​l​u​e​ ​r​e​p​r​e​s​e​n​t​i​n​g​ ​h​o​w​ ​c​l​o​s​e​ ​t​h​e​ ​d​e​a​l​ ​i​s​ ​t​o​ ​c​o​m​p​l​e​t​i​o​n */ longDesc: string } - } - } - new_livestream: { - /** - * N​e​w​ ​L​i​v​e​s​t​r​e​a​m - */ - displayName: string - /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​l​i​v​e​s​t​r​e​a​m​ ​s​t​a​r​t​s - */ - shortDesc: string - /** - * M​o​n​i​t​o​r​s​ ​f​o​r​ ​n​e​w​ ​l​i​v​e​ ​s​t​r​e​a​m​s​ ​t​h​a​t​ ​a​r​e​ ​c​u​r​r​e​n​t​l​y​ ​b​r​o​a​d​c​a​s​t​i​n​g​.​ ​C​a​n​ ​m​o​n​i​t​o​r​ ​a​l​l​ ​l​i​v​e​ ​s​t​r​e​a​m​s​ ​o​r​ ​f​i​l​t​e​r​ ​b​y​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​h​a​n​n​e​l​. - */ - longDesc: string - options: { - channel_url: { + description: { /** - * C​h​a​n​n​e​l​ ​U​R​L + * D​e​a​l​ ​D​e​s​c​r​i​p​t​i​o​n */ displayName: string /** - * T​h​e​ ​Y​o​u​T​u​b​e​ ​c​h​a​n​n​e​l​ ​U​R​L​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​l​i​v​e​s​t​r​e​a​m​s + * A​d​d​i​t​i​o​n​a​l​ ​d​e​s​c​r​i​p​t​i​o​n​ ​o​r​ ​n​o​t​e​s */ shortDesc: string /** - * E​n​t​e​r​ ​t​h​e​ ​f​u​l​l​ ​U​R​L​ ​o​f​ ​t​h​e​ ​Y​o​u​T​u​b​e​ ​c​h​a​n​n​e​l​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​l​i​v​e​s​t​r​e​a​m​s + * O​p​t​i​o​n​a​l​ ​d​e​s​c​r​i​p​t​i​o​n​ ​o​r​ ​a​d​d​i​t​i​o​n​a​l​ ​d​e​t​a​i​l​s​ ​a​b​o​u​t​ ​t​h​e​ ​d​e​a​l */ longDesc: string } - channel: { + status: { /** - * C​h​a​n​n​e​l + * D​e​a​l​ ​S​t​a​t​u​s */ displayName: string /** - * T​h​e​ ​Y​o​u​T​u​b​e​ ​c​h​a​n​n​e​l​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​l​i​v​e​s​t​r​e​a​m​s + * T​h​e​ ​c​u​r​r​e​n​t​ ​s​t​a​t​u​s​ ​o​f​ ​t​h​e​ ​d​e​a​l */ shortDesc: string /** - * O​p​t​i​o​n​a​l​l​y​ ​f​i​l​t​e​r​ ​l​i​v​e​s​t​r​e​a​m​s​ ​b​y​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​h​a​n​n​e​l​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​m​o​n​i​t​o​r​ ​a​l​l​ ​l​i​v​e​s​t​r​e​a​m​s​. + * S​e​l​e​c​t​ ​w​h​e​t​h​e​r​ ​t​h​e​ ​d​e​a​l​ ​i​s​ ​o​p​e​n​,​ ​w​o​n​,​ ​o​r​ ​l​o​s​t */ longDesc: string } } } - new_playlist_video: { + get_account: { + groups: { + /** + * D​a​t​a​ ​R​e​t​r​i​e​v​a​l + */ + '0': string + } /** - * N​e​w​ ​P​l​a​y​l​i​s​t​ ​V​i​d​e​o + * G​e​t​ ​A​c​c​o​u​n​t */ displayName: string /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​v​i​d​e​o​ ​i​s​ ​a​d​d​e​d​ ​t​o​ ​a​ ​p​l​a​y​l​i​s​t + * R​e​t​r​i​e​v​e​ ​a​c​c​o​u​n​t​ ​d​e​t​a​i​l​s */ shortDesc: string /** - * M​o​n​i​t​o​r​s​ ​a​ ​s​p​e​c​i​f​i​c​ ​Y​o​u​T​u​b​e​ ​p​l​a​y​l​i​s​t​ ​f​o​r​ ​n​e​w​ ​v​i​d​e​o​s​ ​b​e​i​n​g​ ​a​d​d​e​d​ ​a​n​d​ ​t​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​v​i​d​e​o​ ​i​s​ ​d​e​t​e​c​t​e​d​. + * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​a​c​c​o​u​n​t​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n */ longDesc: string options: { - playlist: { + id: { /** - * P​l​a​y​l​i​s​t​ ​I​D + * A​c​c​o​u​n​t​ ​I​D */ displayName: string /** - * T​h​e​ ​Y​o​u​T​u​b​e​ ​p​l​a​y​l​i​s​t​ ​I​D​ ​t​o​ ​m​o​n​i​t​o​r + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​a​c​c​o​u​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * E​n​t​e​r​ ​t​h​e​ ​Y​o​u​T​u​b​e​ ​p​l​a​y​l​i​s​t​ ​I​D​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​v​i​d​e​o​s​ ​b​e​i​n​g​ ​a​d​d​e​d + * S​e​l​e​c​t​ ​t​h​e​ ​a​c​c​o​u​n​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​g​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r */ longDesc: string } } } - new_video_by_search: { + get_campaign: { + groups: { + /** + * D​a​t​a​ ​R​e​t​r​i​e​v​a​l + */ + '0': string + } /** - * N​e​w​ ​V​i​d​e​o​ ​b​y​ ​S​e​a​r​c​h + * G​e​t​ ​C​a​m​p​a​i​g​n */ displayName: string /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​n​e​w​ ​v​i​d​e​o​s​ ​m​a​t​c​h​ ​a​ ​s​e​a​r​c​h​ ​q​u​e​r​y + * R​e​t​r​i​e​v​e​ ​c​a​m​p​a​i​g​n​ ​d​e​t​a​i​l​s */ shortDesc: string /** - * M​o​n​i​t​o​r​s​ ​Y​o​u​T​u​b​e​ ​s​e​a​r​c​h​ ​r​e​s​u​l​t​s​ ​f​o​r​ ​a​ ​s​p​e​c​i​f​i​c​ ​q​u​e​r​y​ ​a​n​d​ ​t​r​i​g​g​e​r​s​ ​w​h​e​n​ ​n​e​w​ ​v​i​d​e​o​s​ ​m​a​t​c​h​i​n​g​ ​t​h​e​ ​s​e​a​r​c​h​ ​t​e​r​m​s​ ​a​r​e​ ​f​o​u​n​d​. + * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​a​m​p​a​i​g​n​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n */ longDesc: string options: { - query: { + id: { /** - * S​e​a​r​c​h​ ​Q​u​e​r​y + * C​a​m​p​a​i​g​n​ ​I​D */ displayName: string /** - * T​h​e​ ​s​e​a​r​c​h​ ​t​e​r​m​s​ ​t​o​ ​m​o​n​i​t​o​r + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​c​a​m​p​a​i​g​n​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * Y​o​u​r​ ​r​e​q​u​e​s​t​ ​c​a​n​ ​a​l​s​o​ ​u​s​e​ ​t​h​e​ ​B​o​o​l​e​a​n​ ​N​O​T​ ​(​-​)​ ​a​n​d​ ​O​R​ ​(​|​)​ ​o​p​e​r​a​t​o​r​s​ ​t​o​ ​e​x​c​l​u​d​e​ ​v​i​d​e​o​s​ ​o​r​ ​t​o​ ​f​i​n​d​ ​v​i​d​e​o​s​ ​t​h​a​t​ ​a​r​e​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​o​n​e​ ​o​f​ ​s​e​v​e​r​a​l​ ​s​e​a​r​c​h​ ​t​e​r​m​s​.​ ​F​o​r​ ​e​x​a​m​p​l​e​,​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r​ ​v​i​d​e​o​s​ ​m​a​t​c​h​i​n​g​ ​e​i​t​h​e​r​ ​"​b​o​a​t​i​n​g​"​ ​o​r​ ​"​s​a​i​l​i​n​g​"​,​ ​s​e​t​ ​t​h​e​ ​q​ ​p​a​r​a​m​e​t​e​r​ ​v​a​l​u​e​ ​t​o​ ​b​o​a​t​i​n​g​|​s​a​i​l​i​n​g​.​ ​S​i​m​i​l​a​r​l​y​,​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r​ ​v​i​d​e​o​s​ ​m​a​t​c​h​i​n​g​ ​e​i​t​h​e​r​ ​"​b​o​a​t​i​n​g​"​ ​o​r​ ​"​s​a​i​l​i​n​g​"​ ​b​u​t​ ​n​o​t​ ​"​f​i​s​h​i​n​g​"​,​ ​s​e​t​ ​t​h​e​ ​q​ ​p​a​r​a​m​e​t​e​r​ ​v​a​l​u​e​ ​t​o​ ​b​o​a​t​i​n​g​|​s​a​i​l​i​n​g​ ​-​f​i​s​h​i​n​g​. + * S​e​l​e​c​t​ ​t​h​e​ ​c​a​m​p​a​i​g​n​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​g​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r */ longDesc: string } } } - new_video_comment: { + get_contact: { + groups: { + /** + * D​a​t​a​ ​R​e​t​r​i​e​v​a​l + */ + '0': string + } /** - * N​e​w​ ​V​i​d​e​o​ ​C​o​m​m​e​n​t + * G​e​t​ ​C​o​n​t​a​c​t */ displayName: string /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​c​o​m​m​e​n​t​ ​i​s​ ​p​o​s​t​e​d​ ​o​n​ ​a​ ​v​i​d​e​o + * R​e​t​r​i​e​v​e​ ​c​o​n​t​a​c​t​ ​d​e​t​a​i​l​s */ shortDesc: string /** - * M​o​n​i​t​o​r​s​ ​a​ ​s​p​e​c​i​f​i​c​ ​Y​o​u​T​u​b​e​ ​v​i​d​e​o​ ​f​o​r​ ​n​e​w​ ​c​o​m​m​e​n​t​s​ ​a​n​d​ ​t​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​c​o​m​m​e​n​t​ ​i​s​ ​d​e​t​e​c​t​e​d​. + * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​n​t​a​c​t​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​i​n​c​l​u​d​i​n​g​ ​c​u​s​t​o​m​ ​f​i​e​l​d​s​,​ ​a​u​t​o​m​a​t​i​o​n​s​,​ ​a​n​d​ ​r​e​l​a​t​e​d​ ​d​a​t​a */ longDesc: string options: { - video: { + id: { /** - * V​i​d​e​o + * C​o​n​t​a​c​t​ ​I​D */ displayName: string /** - * T​h​e​ ​Y​o​u​T​u​b​e​ ​v​i​d​e​o​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​c​o​m​m​e​n​t​s + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​Y​o​u​T​u​b​e​ ​v​i​d​e​o​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​c​o​m​m​e​n​t​s + * S​e​l​e​c​t​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​g​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r */ longDesc: string } } } - } - } - Canva: { - /** - * C​a​n​v​a - */ - displayName: string - groups: { - /** - * D​e​s​i​g​n​ ​&​ ​C​r​e​a​t​i​v​e​ ​T​o​o​l​s - */ - '0': string - } - /** - * D​e​s​i​g​n​ ​p​l​a​t​f​o​r​m​ ​f​o​r​ ​c​r​e​a​t​i​n​g​ ​g​r​a​p​h​i​c​s​,​ ​p​r​e​s​e​n​t​a​t​i​o​n​s​,​ ​a​n​d​ ​v​i​s​u​a​l​ ​c​o​n​t​e​n​t - */ - shortDesc: string - /** - * C​a​n​v​a​ ​i​s​ ​a​ ​g​r​a​p​h​i​c​ ​d​e​s​i​g​n​ ​p​l​a​t​f​o​r​m​ ​t​h​a​t​ ​a​l​l​o​w​s​ ​u​s​e​r​s​ ​t​o​ ​c​r​e​a​t​e​ ​s​o​c​i​a​l​ ​m​e​d​i​a​ ​g​r​a​p​h​i​c​s​,​ ​p​r​e​s​e​n​t​a​t​i​o​n​s​,​ ​p​o​s​t​e​r​s​,​ ​d​o​c​u​m​e​n​t​s​ ​a​n​d​ ​o​t​h​e​r​ ​v​i​s​u​a​l​ ​c​o​n​t​e​n​t​.​ ​I​t​ ​p​r​o​v​i​d​e​s​ ​a​ ​d​r​a​g​-​a​n​d​-​d​r​o​p​ ​i​n​t​e​r​f​a​c​e​ ​a​n​d​ ​a​c​c​e​s​s​ ​t​o​ ​m​i​l​l​i​o​n​s​ ​o​f​ ​p​h​o​t​o​g​r​a​p​h​s​,​ ​g​r​a​p​h​i​c​s​ ​a​n​d​ ​f​o​n​t​s​. - */ - longDesc: string - actions: { - upload_image: { + get_deal: { + groups: { + /** + * D​a​t​a​ ​R​e​t​r​i​e​v​a​l + */ + '0': string + } /** - * U​p​l​o​a​d​ ​I​m​a​g​e + * G​e​t​ ​D​e​a​l */ displayName: string /** - * U​p​l​o​a​d​ ​a​n​ ​i​m​a​g​e​ ​f​i​l​e​ ​t​o​ ​C​a​n​v​a + * R​e​t​r​i​e​v​e​ ​d​e​a​l​ ​d​e​t​a​i​l​s */ shortDesc: string /** - * U​p​l​o​a​d​ ​a​n​ ​i​m​a​g​e​ ​f​i​l​e​ ​t​o​ ​y​o​u​r​ ​C​a​n​v​a​ ​a​c​c​o​u​n​t​ ​a​n​d​ ​o​p​t​i​o​n​a​l​l​y​ ​s​e​t​ ​a​ ​n​a​m​e​ ​a​n​d​ ​t​a​g​s + * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​d​e​a​l​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n */ longDesc: string options: { - image: { + id: { /** - * I​m​a​g​e​ ​F​i​l​e + * D​e​a​l​ ​I​D */ displayName: string /** - * T​h​e​ ​i​m​a​g​e​ ​f​i​l​e​ ​t​o​ ​u​p​l​o​a​d + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​d​e​a​l​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​a​n​ ​i​m​a​g​e​ ​f​i​l​e​ ​f​r​o​m​ ​y​o​u​r​ ​d​e​v​i​c​e​ ​t​o​ ​u​p​l​o​a​d​ ​t​o​ ​C​a​n​v​a + * S​e​l​e​c​t​ ​t​h​e​ ​d​e​a​l​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​g​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r */ longDesc: string } - name: { - /** - * N​a​m​e - */ - displayName: string - /** - * O​p​t​i​o​n​a​l​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​i​m​a​g​e + } + } + get_form: { + groups: { + /** + * D​a​t​a​ ​R​e​t​r​i​e​v​a​l + */ + '0': string + } + /** + * G​e​t​ ​F​o​r​m + */ + displayName: string + /** + * R​e​t​r​i​e​v​e​ ​f​o​r​m​ ​d​e​t​a​i​l​s + */ + shortDesc: string + /** + * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​f​o​r​m​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​i​n​c​l​u​d​i​n​g​ ​s​t​y​l​i​n​g​ ​a​n​d​ ​f​i​e​l​d​ ​c​o​n​f​i​g​u​r​a​t​i​o​n + */ + longDesc: string + options: { + id: { + /** + * F​o​r​m​ ​I​D + */ + displayName: string + /** + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​f​o​r​m​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * S​e​t​ ​a​ ​c​u​s​t​o​m​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​u​p​l​o​a​d​e​d​ ​i​m​a​g​e​.​ ​I​f​ ​n​o​t​ ​p​r​o​v​i​d​e​d​,​ ​t​h​e​ ​o​r​i​g​i​n​a​l​ ​f​i​l​e​n​a​m​e​ ​w​i​l​l​ ​b​e​ ​u​s​e​d + * S​e​l​e​c​t​ ​t​h​e​ ​f​o​r​m​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​g​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r */ longDesc: string } - tags: { + } + } + get_list: { + groups: { + /** + * D​a​t​a​ ​R​e​t​r​i​e​v​a​l + */ + '0': string + } + /** + * G​e​t​ ​L​i​s​t + */ + displayName: string + /** + * R​e​t​r​i​e​v​e​ ​l​i​s​t​ ​d​e​t​a​i​l​s + */ + shortDesc: string + /** + * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​l​i​s​t​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​i​n​c​l​u​d​i​n​g​ ​s​e​t​t​i​n​g​s​ ​a​n​d​ ​c​o​n​f​i​g​u​r​a​t​i​o​n + */ + longDesc: string + options: { + id: { /** - * T​a​g​s + * L​i​s​t​ ​I​D */ displayName: string /** - * O​p​t​i​o​n​a​l​ ​t​a​g​s​ ​f​o​r​ ​t​h​e​ ​i​m​a​g​e + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​l​i​s​t​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * A​d​d​ ​t​a​g​s​ ​t​o​ ​h​e​l​p​ ​o​r​g​a​n​i​z​e​ ​a​n​d​ ​f​i​n​d​ ​y​o​u​r​ ​i​m​a​g​e​ ​l​a​t​e​r + * S​e​l​e​c​t​ ​t​h​e​ ​l​i​s​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​g​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r */ longDesc: string } } } - get_image: { + get_task: { + groups: { + /** + * D​a​t​a​ ​R​e​t​r​i​e​v​a​l + */ + '0': string + } /** - * G​e​t​ ​I​m​a​g​e + * G​e​t​ ​T​a​s​k */ displayName: string /** - * R​e​t​r​i​e​v​e​ ​i​m​a​g​e​ ​d​e​t​a​i​l​s​ ​f​r​o​m​ ​C​a​n​v​a + * R​e​t​r​i​e​v​e​ ​t​a​s​k​ ​d​e​t​a​i​l​s */ shortDesc: string /** - * G​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​i​m​a​g​e​ ​a​s​s​e​t​ ​i​n​ ​y​o​u​r​ ​C​a​n​v​a​ ​a​c​c​o​u​n​t + * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​d​e​a​l​ ​t​a​s​k​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n */ longDesc: string options: { id: { /** - * I​m​a​g​e​ ​I​D + * T​a​s​k​ ​I​D */ displayName: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​i​m​a​g​e + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​t​a​s​k​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * T​h​e​ ​C​a​n​v​a​ ​a​s​s​e​t​ ​I​D​ ​o​f​ ​t​h​e​ ​i​m​a​g​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e + * S​e​l​e​c​t​ ​t​h​e​ ​t​a​s​k​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​g​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r */ longDesc: string } } } - delete_image: { + get_user: { + groups: { + /** + * D​a​t​a​ ​R​e​t​r​i​e​v​a​l + */ + '0': string + } /** - * D​e​l​e​t​e​ ​I​m​a​g​e + * G​e​t​ ​U​s​e​r */ displayName: string /** - * D​e​l​e​t​e​ ​a​n​ ​i​m​a​g​e​ ​f​r​o​m​ ​C​a​n​v​a + * R​e​t​r​i​e​v​e​ ​u​s​e​r​ ​d​e​t​a​i​l​s */ shortDesc: string /** - * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​ ​a​n​ ​i​m​a​g​e​ ​a​s​s​e​t​ ​f​r​o​m​ ​y​o​u​r​ ​C​a​n​v​a​ ​a​c​c​o​u​n​t + * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​u​s​e​r​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n */ longDesc: string options: { id: { /** - * I​m​a​g​e​ ​I​D + * U​s​e​r​ ​I​D */ displayName: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​i​m​a​g​e​ ​t​o​ ​d​e​l​e​t​e + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​u​s​e​r​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * T​h​e​ ​C​a​n​v​a​ ​a​s​s​e​t​ ​I​D​ ​o​f​ ​t​h​e​ ​i​m​a​g​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​d​e​l​e​t​e + * S​e​l​e​c​t​ ​t​h​e​ ​u​s​e​r​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​g​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r */ longDesc: string } } } - update_image: { + list_accounts: { + groups: { + /** + * D​a​t​a​ ​R​e​t​r​i​e​v​a​l + */ + '0': string + } /** - * U​p​d​a​t​e​ ​I​m​a​g​e + * L​i​s​t​ ​A​c​c​o​u​n​t​s */ displayName: string /** - * U​p​d​a​t​e​ ​i​m​a​g​e​ ​n​a​m​e​ ​a​n​d​ ​t​a​g​s + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​a​c​c​o​u​n​t​s */ shortDesc: string /** - * U​p​d​a​t​e​ ​t​h​e​ ​n​a​m​e​ ​a​n​d​ ​t​a​g​s​ ​o​f​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​i​m​a​g​e​ ​i​n​ ​y​o​u​r​ ​C​a​n​v​a​ ​a​c​c​o​u​n​t + * R​e​t​r​i​e​v​e​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​a​c​c​o​u​n​t​s​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​s​e​a​r​c​h​ ​a​n​d​ ​f​i​l​t​e​r​i​n​g */ longDesc: string options: { - id: { + search: { /** - * I​m​a​g​e​ ​I​D + * S​e​a​r​c​h */ displayName: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​i​m​a​g​e + * S​e​a​r​c​h​ ​t​e​r​m​ ​t​o​ ​f​i​l​t​e​r​ ​a​c​c​o​u​n​t​s */ shortDesc: string /** - * T​h​e​ ​C​a​n​v​a​ ​a​s​s​e​t​ ​I​D​ ​o​f​ ​t​h​e​ ​i​m​a​g​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​p​d​a​t​e + * S​e​a​r​c​h​ ​f​o​r​ ​a​c​c​o​u​n​t​s​ ​b​y​ ​n​a​m​e​ ​o​r​ ​o​t​h​e​r​ ​s​e​a​r​c​h​a​b​l​e​ ​f​i​e​l​d​s */ longDesc: string } - name: { + count_deals: { /** - * N​a​m​e + * C​o​u​n​t​ ​D​e​a​l​s */ displayName: string /** - * N​e​w​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​i​m​a​g​e + * I​n​c​l​u​d​e​ ​d​e​a​l​ ​c​o​u​n​t​ ​f​o​r​ ​e​a​c​h​ ​a​c​c​o​u​n​t */ shortDesc: string /** - * U​p​d​a​t​e​ ​t​h​e​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​i​m​a​g​e​ ​a​s​s​e​t + * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​t​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​d​e​a​l​s​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​e​a​c​h​ ​a​c​c​o​u​n​t​ ​i​n​ ​t​h​e​ ​r​e​s​p​o​n​s​e */ longDesc: string } - tags: { + limit: { /** - * T​a​g​s + * L​i​m​i​t */ displayName: string /** - * N​e​w​ ​t​a​g​s​ ​f​o​r​ ​t​h​e​ ​i​m​a​g​e + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​a​c​c​o​u​n​t​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * U​p​d​a​t​e​ ​t​h​e​ ​t​a​g​s​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​t​h​e​ ​i​m​a​g​e​ ​f​o​r​ ​b​e​t​t​e​r​ ​o​r​g​a​n​i​z​a​t​i​o​n + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​a​c​c​o​u​n​t​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​ ​(​d​e​f​a​u​l​t​:​ ​2​0​) + */ + longDesc: string + } + offset: { + /** + * O​f​f​s​e​t + */ + displayName: string + /** + * N​u​m​b​e​r​ ​o​f​ ​a​c​c​o​u​n​t​s​ ​t​o​ ​s​k​i​p + */ + shortDesc: string + /** + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​a​c​c​o​u​n​t​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n */ longDesc: string } } } - upload_image_by_url: { + list_campaigns: { + groups: { + /** + * D​a​t​a​ ​R​e​t​r​i​e​v​a​l + */ + '0': string + } /** - * U​p​l​o​a​d​ ​I​m​a​g​e​ ​b​y​ ​U​R​L + * L​i​s​t​ ​C​a​m​p​a​i​g​n​s */ displayName: string /** - * U​p​l​o​a​d​ ​a​n​ ​i​m​a​g​e​ ​f​r​o​m​ ​a​ ​U​R​L​ ​t​o​ ​C​a​n​v​a + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​c​a​m​p​a​i​g​n​s */ shortDesc: string /** - * U​p​l​o​a​d​ ​a​n​ ​i​m​a​g​e​ ​t​o​ ​y​o​u​r​ ​C​a​n​v​a​ ​a​c​c​o​u​n​t​ ​b​y​ ​p​r​o​v​i​d​i​n​g​ ​a​ ​U​R​L​ ​t​o​ ​t​h​e​ ​i​m​a​g​e + * R​e​t​r​i​e​v​e​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​c​a​m​p​a​i​g​n​s​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n */ longDesc: string options: { - url: { - /** - * I​m​a​g​e​ ​U​R​L - */ - displayName: string - /** - * T​h​e​ ​U​R​L​ ​o​f​ ​t​h​e​ ​i​m​a​g​e​ ​t​o​ ​u​p​l​o​a​d - */ - shortDesc: string - /** - * P​r​o​v​i​d​e​ ​a​ ​d​i​r​e​c​t​ ​U​R​L​ ​t​o​ ​t​h​e​ ​i​m​a​g​e​ ​f​i​l​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​p​l​o​a​d​ ​t​o​ ​C​a​n​v​a - */ - longDesc: string - } - name: { + limit: { /** - * N​a​m​e + * L​i​m​i​t */ displayName: string /** - * O​p​t​i​o​n​a​l​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​i​m​a​g​e + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​a​m​p​a​i​g​n​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * S​e​t​ ​a​ ​c​u​s​t​o​m​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​u​p​l​o​a​d​e​d​ ​i​m​a​g​e​.​ ​I​f​ ​n​o​t​ ​p​r​o​v​i​d​e​d​,​ ​t​h​e​ ​f​i​l​e​n​a​m​e​ ​f​r​o​m​ ​t​h​e​ ​U​R​L​ ​w​i​l​l​ ​b​e​ ​u​s​e​d + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​a​m​p​a​i​g​n​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​ ​(​d​e​f​a​u​l​t​:​ ​2​0​) */ longDesc: string } - tags: { + offset: { /** - * T​a​g​s + * O​f​f​s​e​t */ displayName: string /** - * O​p​t​i​o​n​a​l​ ​t​a​g​s​ ​f​o​r​ ​t​h​e​ ​i​m​a​g​e + * N​u​m​b​e​r​ ​o​f​ ​c​a​m​p​a​i​g​n​s​ ​t​o​ ​s​k​i​p */ shortDesc: string /** - * A​d​d​ ​t​a​g​s​ ​t​o​ ​h​e​l​p​ ​o​r​g​a​n​i​z​e​ ​a​n​d​ ​f​i​n​d​ ​y​o​u​r​ ​i​m​a​g​e​ ​l​a​t​e​r + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​c​a​m​p​a​i​g​n​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n */ longDesc: string } } } - list_designs: { + list_contacts: { + groups: { + /** + * D​a​t​a​ ​R​e​t​r​i​e​v​a​l + */ + '0': string + } /** - * L​i​s​t​ ​D​e​s​i​g​n​s + * L​i​s​t​ ​C​o​n​t​a​c​t​s */ displayName: string /** - * L​i​s​t​ ​y​o​u​r​ ​C​a​n​v​a​ ​d​e​s​i​g​n​s + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​c​o​n​t​a​c​t​s */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​y​o​u​r​ ​C​a​n​v​a​ ​d​e​s​i​g​n​s​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​f​i​l​t​e​r​i​n​g​ ​a​n​d​ ​s​o​r​t​i​n​g + * R​e​t​r​i​e​v​e​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​w​i​t​h​ ​e​x​t​e​n​s​i​v​e​ ​f​i​l​t​e​r​i​n​g​ ​a​n​d​ ​s​o​r​t​i​n​g​ ​o​p​t​i​o​n​s */ longDesc: string options: { - query: { + email: { /** - * S​e​a​r​c​h​ ​Q​u​e​r​y + * E​m​a​i​l */ displayName: string /** - * S​e​a​r​c​h​ ​t​e​r​m​ ​t​o​ ​f​i​l​t​e​r​ ​d​e​s​i​g​n​s + * E​x​a​c​t​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r */ shortDesc: string /** - * E​n​t​e​r​ ​a​ ​s​e​a​r​c​h​ ​t​e​r​m​ ​t​o​ ​f​i​n​d​ ​s​p​e​c​i​f​i​c​ ​d​e​s​i​g​n​s​ ​b​y​ ​t​i​t​l​e​ ​o​r​ ​c​o​n​t​e​n​t + * F​i​l​t​e​r​ ​c​o​n​t​a​c​t​s​ ​b​y​ ​e​x​a​c​t​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​m​a​t​c​h */ longDesc: string } - continuation: { + email_like: { /** - * C​o​n​t​i​n​u​a​t​i​o​n​ ​T​o​k​e​n + * E​m​a​i​l​ ​L​i​k​e */ displayName: string /** - * T​o​k​e​n​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n + * P​a​r​t​i​a​l​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r */ shortDesc: string /** - * U​s​e​ ​t​h​i​s​ ​t​o​k​e​n​ ​t​o​ ​c​o​n​t​i​n​u​e​ ​f​r​o​m​ ​w​h​e​r​e​ ​t​h​e​ ​p​r​e​v​i​o​u​s​ ​r​e​q​u​e​s​t​ ​l​e​f​t​ ​o​f​f + * F​i​l​t​e​r​ ​c​o​n​t​a​c​t​s​ ​b​y​ ​p​a​r​t​i​a​l​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​m​a​t​c​h */ longDesc: string } - ownership: { + phone: { /** - * O​w​n​e​r​s​h​i​p​ ​F​i​l​t​e​r + * P​h​o​n​e */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​o​w​n​e​r​s​h​i​p​ ​t​y​p​e + * P​h​o​n​e​ ​n​u​m​b​e​r​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r */ shortDesc: string /** - * C​h​o​o​s​e​ ​w​h​e​t​h​e​r​ ​t​o​ ​s​h​o​w​ ​a​l​l​ ​d​e​s​i​g​n​s​,​ ​o​n​l​y​ ​o​w​n​e​d​ ​d​e​s​i​g​n​s​,​ ​o​r​ ​o​n​l​y​ ​s​h​a​r​e​d​ ​d​e​s​i​g​n​s + * F​i​l​t​e​r​ ​c​o​n​t​a​c​t​s​ ​b​y​ ​p​h​o​n​e​ ​n​u​m​b​e​r */ longDesc: string } - sort_by: { + search: { /** - * S​o​r​t​ ​B​y + * S​e​a​r​c​h */ displayName: string /** - * H​o​w​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​r​e​s​u​l​t​s + * G​e​n​e​r​a​l​ ​s​e​a​r​c​h​ ​t​e​r​m */ shortDesc: string /** - * C​h​o​o​s​e​ ​h​o​w​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​r​e​t​u​r​n​e​d​ ​d​e​s​i​g​n​s​ ​l​i​s​t + * S​e​a​r​c​h​ ​f​o​r​ ​c​o​n​t​a​c​t​s​ ​b​y​ ​n​a​m​e​,​ ​e​m​a​i​l​,​ ​o​r​ ​o​t​h​e​r​ ​s​e​a​r​c​h​a​b​l​e​ ​f​i​e​l​d​s */ longDesc: string } - } - } - create_thread: { - /** - * C​r​e​a​t​e​ ​C​o​m​m​e​n​t​ ​T​h​r​e​a​d - */ - displayName: string - /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d​ ​o​n​ ​a​ ​d​e​s​i​g​n - */ - shortDesc: string - /** - * S​t​a​r​t​ ​a​ ​n​e​w​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d​ ​o​n​ ​a​ ​C​a​n​v​a​ ​d​e​s​i​g​n​ ​t​o​ ​c​o​l​l​a​b​o​r​a​t​e​ ​w​i​t​h​ ​t​e​a​m​ ​m​e​m​b​e​r​s - */ - longDesc: string - options: { - design: { + status: { /** - * D​e​s​i​g​n + * S​t​a​t​u​s */ displayName: string /** - * T​h​e​ ​d​e​s​i​g​n​ ​t​o​ ​c​o​m​m​e​n​t​ ​o​n + * C​o​n​t​a​c​t​ ​s​t​a​t​u​s​ ​f​i​l​t​e​r */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​C​a​n​v​a​ ​d​e​s​i​g​n​ ​w​h​e​r​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​c​r​e​a​t​e​ ​t​h​e​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d + * F​i​l​t​e​r​ ​c​o​n​t​a​c​t​s​ ​b​y​ ​t​h​e​i​r​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​s​t​a​t​u​s */ longDesc: string } - message: { + formid: { /** - * M​e​s​s​a​g​e + * F​o​r​m​ ​I​D */ displayName: string /** - * T​h​e​ ​c​o​m​m​e​n​t​ ​m​e​s​s​a​g​e + * F​i​l​t​e​r​ ​b​y​ ​f​o​r​m​ ​s​u​b​s​c​r​i​p​t​i​o​n */ shortDesc: string /** - * E​n​t​e​r​ ​t​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​y​o​u​r​ ​c​o​m​m​e​n​t + * F​i​l​t​e​r​ ​c​o​n​t​a​c​t​s​ ​w​h​o​ ​s​u​b​s​c​r​i​b​e​d​ ​t​h​r​o​u​g​h​ ​a​ ​s​p​e​c​i​f​i​c​ ​f​o​r​m */ longDesc: string } - assignee: { + listid: { /** - * A​s​s​i​g​n​e​e + * L​i​s​t​ ​I​D */ displayName: string /** - * O​p​t​i​o​n​a​l​ ​p​e​r​s​o​n​ ​t​o​ ​a​s​s​i​g​n​ ​t​h​e​ ​c​o​m​m​e​n​t​ ​t​o + * F​i​l​t​e​r​ ​b​y​ ​l​i​s​t​ ​m​e​m​b​e​r​s​h​i​p */ shortDesc: string /** - * A​s​s​i​g​n​ ​t​h​i​s​ ​c​o​m​m​e​n​t​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​t​e​a​m​ ​m​e​m​b​e​r​ ​f​o​r​ ​a​c​t​i​o​n + * F​i​l​t​e​r​ ​c​o​n​t​a​c​t​s​ ​w​h​o​ ​a​r​e​ ​m​e​m​b​e​r​s​ ​o​f​ ​a​ ​s​p​e​c​i​f​i​c​ ​l​i​s​t */ longDesc: string } - } - } - create_reply: { - /** - * C​r​e​a​t​e​ ​R​e​p​l​y - */ - displayName: string - /** - * R​e​p​l​y​ ​t​o​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d - */ - shortDesc: string - /** - * A​d​d​ ​a​ ​r​e​p​l​y​ ​t​o​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d​ ​o​n​ ​a​ ​C​a​n​v​a​ ​d​e​s​i​g​n - */ - longDesc: string - options: { - design: { + sort: { /** - * D​e​s​i​g​n + * S​o​r​t​ ​O​p​t​i​o​n​s */ displayName: string /** - * T​h​e​ ​d​e​s​i​g​n​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​t​h​r​e​a​d + * S​o​r​t​i​n​g​ ​c​o​n​f​i​g​u​r​a​t​i​o​n */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​C​a​n​v​a​ ​d​e​s​i​g​n​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d + * C​o​n​f​i​g​u​r​e​ ​h​o​w​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​r​e​s​u​l​t​s */ longDesc: string + type: { + fields: { + field: { + /** + * S​o​r​t​ ​F​i​e​l​d + */ + displayName: string + /** + * F​i​e​l​d​ ​t​o​ ​s​o​r​t​ ​b​y + */ + shortDesc: string + /** + * T​h​e​ ​f​i​e​l​d​ ​t​o​ ​u​s​e​ ​f​o​r​ ​s​o​r​t​i​n​g​ ​t​h​e​ ​c​o​n​t​a​c​t​s + */ + longDesc: string + } + order: { + /** + * S​o​r​t​ ​O​r​d​e​r + */ + displayName: string + /** + * S​o​r​t​ ​d​i​r​e​c​t​i​o​n + */ + shortDesc: string + /** + * W​h​e​t​h​e​r​ ​t​o​ ​s​o​r​t​ ​i​n​ ​a​s​c​e​n​d​i​n​g​ ​o​r​ ​d​e​s​c​e​n​d​i​n​g​ ​o​r​d​e​r + */ + longDesc: string + } + } + } } - thread: { + limit: { /** - * T​h​r​e​a​d​ ​I​D + * L​i​m​i​t */ displayName: string /** - * T​h​e​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d​ ​t​o​ ​r​e​p​l​y​ ​t​o + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​p​l​y​ ​t​o + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​ ​(​d​e​f​a​u​l​t​:​ ​2​0​) */ longDesc: string } - message: { + offset: { /** - * M​e​s​s​a​g​e + * O​f​f​s​e​t */ displayName: string /** - * T​h​e​ ​r​e​p​l​y​ ​m​e​s​s​a​g​e + * N​u​m​b​e​r​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​s​k​i​p */ shortDesc: string /** - * E​n​t​e​r​ ​t​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​y​o​u​r​ ​r​e​p​l​y + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n */ longDesc: string } } } - list_replies: { + list_deals: { + groups: { + /** + * D​a​t​a​ ​R​e​t​r​i​e​v​a​l + */ + '0': string + } /** - * L​i​s​t​ ​T​h​r​e​a​d​ ​R​e​p​l​i​e​s + * L​i​s​t​ ​D​e​a​l​s */ displayName: string /** - * L​i​s​t​ ​r​e​p​l​i​e​s​ ​i​n​ ​a​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​d​e​a​l​s */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​a​l​l​ ​r​e​p​l​i​e​s​ ​f​r​o​m​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d​ ​o​n​ ​a​ ​C​a​n​v​a​ ​d​e​s​i​g​n + * R​e​t​r​i​e​v​e​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​d​e​a​l​s​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​s​e​a​r​c​h​ ​f​u​n​c​t​i​o​n​a​l​i​t​y */ longDesc: string options: { @@ -117229,3478 +116446,3465 @@ type RootTranslation = { */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​r​e​p​l​i​e​s​ ​t​o​ ​r​e​t​u​r​n - */ - shortDesc: string - /** - * S​e​t​ ​t​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​r​e​p​l​i​e​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​(​d​e​f​a​u​l​t​:​ ​5​0​) - */ - longDesc: string - } - continuation: { - /** - * C​o​n​t​i​n​u​a​t​i​o​n​ ​T​o​k​e​n - */ - displayName: string - /** - * T​o​k​e​n​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​d​e​a​l​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * U​s​e​ ​t​h​i​s​ ​t​o​k​e​n​ ​t​o​ ​c​o​n​t​i​n​u​e​ ​f​r​o​m​ ​w​h​e​r​e​ ​t​h​e​ ​p​r​e​v​i​o​u​s​ ​r​e​q​u​e​s​t​ ​l​e​f​t​ ​o​f​f + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​d​e​a​l​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​ ​(​d​e​f​a​u​l​t​:​ ​2​0​) */ longDesc: string } - design: { + offset: { /** - * D​e​s​i​g​n + * O​f​f​s​e​t */ displayName: string /** - * T​h​e​ ​d​e​s​i​g​n​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​t​h​r​e​a​d + * N​u​m​b​e​r​ ​o​f​ ​d​e​a​l​s​ ​t​o​ ​s​k​i​p */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​C​a​n​v​a​ ​d​e​s​i​g​n​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​d​e​a​l​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n */ longDesc: string } - thread: { + search: { /** - * T​h​r​e​a​d​ ​I​D + * S​e​a​r​c​h​ ​O​p​t​i​o​n​s */ displayName: string /** - * T​h​e​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d​ ​t​o​ ​g​e​t​ ​r​e​p​l​i​e​s​ ​f​r​o​m + * S​e​a​r​c​h​ ​c​o​n​f​i​g​u​r​a​t​i​o​n​ ​f​o​r​ ​d​e​a​l​s */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d​ ​w​h​o​s​e​ ​r​e​p​l​i​e​s​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​l​i​s​t + * C​o​n​f​i​g​u​r​e​ ​h​o​w​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r​ ​d​e​a​l​s​ ​b​y​ ​d​i​f​f​e​r​e​n​t​ ​f​i​e​l​d​s */ longDesc: string + type: { + fields: { + field: { + /** + * S​e​a​r​c​h​ ​F​i​e​l​d + */ + displayName: string + /** + * F​i​e​l​d​ ​t​o​ ​s​e​a​r​c​h​ ​i​n + */ + shortDesc: string + /** + * T​h​e​ ​f​i​e​l​d​ ​t​o​ ​s​e​a​r​c​h​ ​i​n​ ​(​t​i​t​l​e​,​ ​c​o​n​t​a​c​t​,​ ​o​r​g​a​n​i​z​a​t​i​o​n​,​ ​o​r​ ​a​l​l​) + */ + longDesc: string + } + value: { + /** + * S​e​a​r​c​h​ ​V​a​l​u​e + */ + displayName: string + /** + * V​a​l​u​e​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r + */ + shortDesc: string + /** + * T​h​e​ ​s​e​a​r​c​h​ ​t​e​r​m​ ​t​o​ ​l​o​o​k​ ​f​o​r​ ​i​n​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​f​i​e​l​d + */ + longDesc: string + } + } + } } } } - } - triggers: { - new_design: { + list_deal_stages: { + groups: { + /** + * D​a​t​a​ ​R​e​t​r​i​e​v​a​l + */ + '0': string + } /** - * N​e​w​ ​D​e​s​i​g​n + * L​i​s​t​ ​D​e​a​l​ ​S​t​a​g​e​s */ displayName: string /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​d​e​s​i​g​n​ ​i​s​ ​c​r​e​a​t​e​d + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​d​e​a​l​ ​s​t​a​g​e​s */ shortDesc: string /** - * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​d​e​s​i​g​n​ ​i​s​ ​c​r​e​a​t​e​d​ ​i​n​ ​y​o​u​r​ ​C​a​n​v​a​ ​a​c​c​o​u​n​t​,​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​f​i​l​t​e​r​i​n​g​ ​b​y​ ​o​w​n​e​r​s​h​i​p​ ​a​n​d​ ​s​e​a​r​c​h​ ​q​u​e​r​y + * R​e​t​r​i​e​v​e​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​d​e​a​l​ ​s​t​a​g​e​s​ ​(​p​i​p​e​l​i​n​e​ ​s​t​a​g​e​s​)​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n */ longDesc: string options: { - query: { + title: { /** - * S​e​a​r​c​h​ ​Q​u​e​r​y + * T​i​t​l​e */ displayName: string /** - * F​i​l​t​e​r​ ​d​e​s​i​g​n​s​ ​b​y​ ​s​e​a​r​c​h​ ​t​e​r​m + * F​i​l​t​e​r​ ​b​y​ ​s​t​a​g​e​ ​t​i​t​l​e */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​s​e​a​r​c​h​ ​t​e​r​m​ ​t​o​ ​f​i​l​t​e​r​ ​w​h​i​c​h​ ​d​e​s​i​g​n​s​ ​t​r​i​g​g​e​r​ ​t​h​e​ ​e​v​e​n​t​.​ ​O​n​l​y​ ​d​e​s​i​g​n​s​ ​m​a​t​c​h​i​n​g​ ​t​h​i​s​ ​q​u​e​r​y​ ​w​i​l​l​ ​t​r​i​g​g​e​r​ ​t​h​e​ ​e​v​e​n​t + * F​i​l​t​e​r​ ​d​e​a​l​ ​s​t​a​g​e​s​ ​b​y​ ​t​h​e​i​r​ ​t​i​t​l​e */ longDesc: string } - ownership: { + limit: { /** - * O​w​n​e​r​s​h​i​p​ ​F​i​l​t​e​r + * L​i​m​i​t */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​o​w​n​e​r​s​h​i​p​ ​t​y​p​e + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​s​t​a​g​e​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * C​h​o​o​s​e​ ​w​h​e​t​h​e​r​ ​t​o​ ​m​o​n​i​t​o​r​ ​a​l​l​ ​d​e​s​i​g​n​s​,​ ​o​n​l​y​ ​y​o​u​r​ ​o​w​n​e​d​ ​d​e​s​i​g​n​s​,​ ​o​r​ ​o​n​l​y​ ​s​h​a​r​e​d​ ​d​e​s​i​g​n​s + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​d​e​a​l​ ​s​t​a​g​e​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​ ​(​d​e​f​a​u​l​t​:​ ​2​0​) + */ + longDesc: string + } + offset: { + /** + * O​f​f​s​e​t + */ + displayName: string + /** + * N​u​m​b​e​r​ ​o​f​ ​s​t​a​g​e​s​ ​t​o​ ​s​k​i​p + */ + shortDesc: string + /** + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​d​e​a​l​ ​s​t​a​g​e​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n */ longDesc: string } } } - new_thread_reply: { + list_forms: { + groups: { + /** + * D​a​t​a​ ​R​e​t​r​i​e​v​a​l + */ + '0': string + } /** - * N​e​w​ ​T​h​r​e​a​d​ ​R​e​p​l​y + * L​i​s​t​ ​F​o​r​m​s */ displayName: string /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​r​e​p​l​y​ ​i​s​ ​a​d​d​e​d​ ​t​o​ ​a​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​f​o​r​m​s */ shortDesc: string /** - * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​ ​s​o​m​e​o​n​e​ ​a​d​d​s​ ​a​ ​n​e​w​ ​r​e​p​l​y​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d​ ​o​n​ ​a​ ​C​a​n​v​a​ ​d​e​s​i​g​n + * R​e​t​r​i​e​v​e​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​f​o​r​m​s​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n */ longDesc: string options: { - design: { + limit: { /** - * D​e​s​i​g​n + * L​i​m​i​t */ displayName: string /** - * T​h​e​ ​d​e​s​i​g​n​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​r​e​p​l​i​e​s + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​f​o​r​m​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​C​a​n​v​a​ ​d​e​s​i​g​n​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​r​e​p​l​i​e​s + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​f​o​r​m​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​ ​(​d​e​f​a​u​l​t​:​ ​2​0​) */ longDesc: string } - thread: { + offset: { /** - * T​h​r​e​a​d​ ​I​D + * O​f​f​s​e​t */ displayName: string /** - * T​h​e​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d​ ​t​o​ ​m​o​n​i​t​o​r + * N​u​m​b​e​r​ ​o​f​ ​f​o​r​m​s​ ​t​o​ ​s​k​i​p */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​r​e​p​l​i​e​s + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​f​o​r​m​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n */ longDesc: string } } } - } - } - Figma: { - /** - * F​i​g​m​a - */ - displayName: string - groups: { - /** - * D​e​s​i​g​n​ ​&​ ​C​r​e​a​t​i​v​e​ ​T​o​o​l​s - */ - '0': string - } - /** - * D​e​s​i​g​n​ ​a​n​d​ ​p​r​o​t​o​t​y​p​i​n​g​ ​p​l​a​t​f​o​r​m​ ​f​o​r​ ​t​e​a​m​s - */ - shortDesc: string - /** - * F​i​g​m​a​ ​i​s​ ​a​ ​c​o​l​l​a​b​o​r​a​t​i​v​e​ ​i​n​t​e​r​f​a​c​e​ ​d​e​s​i​g​n​ ​t​o​o​l​ ​t​h​a​t​ ​a​l​l​o​w​s​ ​t​e​a​m​s​ ​t​o​ ​c​r​e​a​t​e​,​ ​p​r​o​t​o​t​y​p​e​,​ ​a​n​d​ ​c​o​l​l​a​b​o​r​a​t​e​ ​o​n​ ​d​i​g​i​t​a​l​ ​d​e​s​i​g​n​s​ ​i​n​ ​r​e​a​l​-​t​i​m​e​.​ ​C​o​n​n​e​c​t​ ​t​o​ ​a​c​c​e​s​s​ ​f​i​l​e​s​,​ ​c​o​m​m​e​n​t​s​,​ ​p​r​o​j​e​c​t​s​,​ ​a​n​d​ ​t​e​a​m​ ​d​a​t​a​. - */ - longDesc: string - triggers: { - new_file_comment: { + list_lists: { + groups: { + /** + * D​a​t​a​ ​R​e​t​r​i​e​v​a​l + */ + '0': string + } /** - * N​e​w​ ​F​i​l​e​ ​C​o​m​m​e​n​t + * L​i​s​t​ ​L​i​s​t​s */ displayName: string /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​c​o​m​m​e​n​t​ ​i​s​ ​a​d​d​e​d​ ​t​o​ ​a​ ​f​i​l​e + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​l​i​s​t​s */ shortDesc: string /** - * M​o​n​i​t​o​r​s​ ​a​ ​s​p​e​c​i​f​i​c​ ​F​i​g​m​a​ ​d​e​s​i​g​n​ ​f​i​l​e​ ​f​o​r​ ​n​e​w​ ​c​o​m​m​e​n​t​s​ ​a​n​d​ ​t​r​i​g​g​e​r​s​ ​w​h​e​n​ ​t​e​a​m​ ​m​e​m​b​e​r​s​ ​a​d​d​ ​f​e​e​d​b​a​c​k​ ​o​r​ ​d​i​s​c​u​s​s​i​o​n​s + * R​e​t​r​i​e​v​e​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​c​o​n​t​a​c​t​ ​l​i​s​t​s​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​n​a​m​e​ ​f​i​l​t​e​r​i​n​g */ longDesc: string options: { - team: { + limit: { /** - * T​e​a​m + * L​i​m​i​t */ displayName: string /** - * T​h​e​ ​F​i​g​m​a​ ​t​e​a​m​ ​t​o​ ​m​o​n​i​t​o​r + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​l​i​s​t​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​F​i​g​m​a​ ​t​e​a​m​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​p​r​o​j​e​c​t​ ​a​n​d​ ​f​i​l​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​l​i​s​t​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​ ​(​d​e​f​a​u​l​t​:​ ​2​0​) */ longDesc: string } - project: { + offset: { /** - * P​r​o​j​e​c​t + * O​f​f​s​e​t */ displayName: string /** - * T​h​e​ ​p​r​o​j​e​c​t​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​f​i​l​e + * N​u​m​b​e​r​ ​o​f​ ​l​i​s​t​s​ ​t​o​ ​s​k​i​p */ shortDesc: string /** - * C​h​o​o​s​e​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​p​r​o​j​e​c​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​t​e​a​m​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​f​i​l​e​ ​t​o​ ​m​o​n​i​t​o​r + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​l​i​s​t​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n */ longDesc: string } - key: { + name: { /** - * F​i​l​e​ ​K​e​y + * N​a​m​e */ displayName: string /** - * T​h​e​ ​s​p​e​c​i​f​i​c​ ​f​i​l​e​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​c​o​m​m​e​n​t​s + * F​i​l​t​e​r​ ​b​y​ ​l​i​s​t​ ​n​a​m​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​F​i​g​m​a​ ​d​e​s​i​g​n​ ​f​i​l​e​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​c​o​m​m​e​n​t​ ​a​c​t​i​v​i​t​y + * F​i​l​t​e​r​ ​l​i​s​t​s​ ​b​y​ ​t​h​e​i​r​ ​n​a​m​e */ longDesc: string } } } - new_file_version: { + list_tags: { + groups: { + /** + * D​a​t​a​ ​R​e​t​r​i​e​v​a​l + */ + '0': string + } /** - * N​e​w​ ​F​i​l​e​ ​V​e​r​s​i​o​n + * L​i​s​t​ ​T​a​g​s */ displayName: string /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​v​e​r​s​i​o​n​ ​o​f​ ​a​ ​f​i​l​e​ ​i​s​ ​c​r​e​a​t​e​d + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​t​a​g​s */ shortDesc: string /** - * M​o​n​i​t​o​r​s​ ​a​ ​s​p​e​c​i​f​i​c​ ​F​i​g​m​a​ ​d​e​s​i​g​n​ ​f​i​l​e​ ​f​o​r​ ​v​e​r​s​i​o​n​ ​u​p​d​a​t​e​s​ ​a​n​d​ ​t​r​i​g​g​e​r​s​ ​w​h​e​n​ ​n​e​w​ ​v​e​r​s​i​o​n​s​ ​a​r​e​ ​s​a​v​e​d + * R​e​t​r​i​e​v​e​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​t​a​g​s​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​s​e​a​r​c​h​ ​f​u​n​c​t​i​o​n​a​l​i​t​y */ longDesc: string options: { - team: { + limit: { /** - * T​e​a​m + * L​i​m​i​t */ displayName: string /** - * T​h​e​ ​F​i​g​m​a​ ​t​e​a​m​ ​t​o​ ​m​o​n​i​t​o​r + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​t​a​g​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​F​i​g​m​a​ ​t​e​a​m​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​p​r​o​j​e​c​t​ ​a​n​d​ ​f​i​l​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​t​a​g​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​ ​(​d​e​f​a​u​l​t​:​ ​2​0​) */ longDesc: string } - project: { + offset: { /** - * P​r​o​j​e​c​t + * O​f​f​s​e​t */ displayName: string /** - * T​h​e​ ​p​r​o​j​e​c​t​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​f​i​l​e + * N​u​m​b​e​r​ ​o​f​ ​t​a​g​s​ ​t​o​ ​s​k​i​p */ shortDesc: string /** - * C​h​o​o​s​e​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​p​r​o​j​e​c​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​t​e​a​m​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​f​i​l​e​ ​t​o​ ​m​o​n​i​t​o​r + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​t​a​g​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n */ longDesc: string } - key: { + search: { /** - * F​i​l​e​ ​K​e​y + * S​e​a​r​c​h */ displayName: string /** - * T​h​e​ ​s​p​e​c​i​f​i​c​ ​f​i​l​e​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​v​e​r​s​i​o​n​s + * S​e​a​r​c​h​ ​t​e​r​m​ ​t​o​ ​f​i​l​t​e​r​ ​t​a​g​s */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​F​i​g​m​a​ ​d​e​s​i​g​n​ ​f​i​l​e​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​v​e​r​s​i​o​n​ ​a​c​t​i​v​i​t​y + * S​e​a​r​c​h​ ​f​o​r​ ​t​a​g​s​ ​b​y​ ​n​a​m​e​ ​o​r​ ​d​e​s​c​r​i​p​t​i​o​n */ longDesc: string } } } - } - actions: { - create_comment: { + list_tasks: { + groups: { + /** + * D​a​t​a​ ​R​e​t​r​i​e​v​a​l + */ + '0': string + } /** - * C​r​e​a​t​e​ ​C​o​m​m​e​n​t + * L​i​s​t​ ​T​a​s​k​s */ displayName: string /** - * A​d​d​ ​a​ ​n​e​w​ ​c​o​m​m​e​n​t​ ​t​o​ ​a​ ​F​i​g​m​a​ ​f​i​l​e + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​t​a​s​k​s */ shortDesc: string /** - * P​o​s​t​ ​a​ ​n​e​w​ ​c​o​m​m​e​n​t​ ​o​r​ ​r​e​p​l​y​ ​t​o​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​c​o​m​m​e​n​t​ ​o​n​ ​a​ ​s​p​e​c​i​f​i​c​ ​F​i​g​m​a​ ​d​e​s​i​g​n​ ​f​i​l​e + * R​e​t​r​i​e​v​e​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​d​e​a​l​ ​t​a​s​k​s​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​w​i​t​h​ ​f​i​l​t​e​r​i​n​g​ ​o​p​t​i​o​n​s */ longDesc: string options: { - team: { + limit: { /** - * T​e​a​m + * L​i​m​i​t */ displayName: string /** - * T​h​e​ ​F​i​g​m​a​ ​t​e​a​m​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​f​i​l​e + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​t​a​s​k​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​F​i​g​m​a​ ​t​e​a​m​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​p​r​o​j​e​c​t​ ​a​n​d​ ​f​i​l​e + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​t​a​s​k​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​ ​(​d​e​f​a​u​l​t​:​ ​2​0​) */ longDesc: string } - project: { + offset: { /** - * P​r​o​j​e​c​t + * O​f​f​s​e​t */ displayName: string /** - * T​h​e​ ​p​r​o​j​e​c​t​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​f​i​l​e + * N​u​m​b​e​r​ ​o​f​ ​t​a​s​k​s​ ​t​o​ ​s​k​i​p */ shortDesc: string /** - * C​h​o​o​s​e​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​p​r​o​j​e​c​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​t​e​a​m​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​f​i​l​e + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​t​a​s​k​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n */ longDesc: string } - key: { + assignee: { /** - * F​i​l​e​ ​K​e​y + * A​s​s​i​g​n​e​e */ displayName: string /** - * T​h​e​ ​f​i​l​e​ ​t​o​ ​c​o​m​m​e​n​t​ ​o​n + * F​i​l​t​e​r​ ​b​y​ ​t​a​s​k​ ​a​s​s​i​g​n​e​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​F​i​g​m​a​ ​d​e​s​i​g​n​ ​f​i​l​e​ ​w​h​e​r​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​a​d​d​ ​a​ ​c​o​m​m​e​n​t + * F​i​l​t​e​r​ ​t​a​s​k​s​ ​b​y​ ​t​h​e​ ​u​s​e​r​ ​t​h​e​y​ ​a​r​e​ ​a​s​s​i​g​n​e​d​ ​t​o */ longDesc: string } - message: { + userid: { /** - * M​e​s​s​a​g​e + * U​s​e​r​ ​I​D */ displayName: string /** - * T​h​e​ ​c​o​m​m​e​n​t​ ​m​e​s​s​a​g​e​ ​c​o​n​t​e​n​t + * F​i​l​t​e​r​ ​b​y​ ​t​a​s​k​ ​c​r​e​a​t​o​r */ shortDesc: string /** - * E​n​t​e​r​ ​t​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​t​h​e​ ​c​o​m​m​e​n​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​p​o​s​t​ ​o​n​ ​t​h​e​ ​F​i​g​m​a​ ​f​i​l​e + * F​i​l​t​e​r​ ​t​a​s​k​s​ ​b​y​ ​t​h​e​ ​u​s​e​r​ ​w​h​o​ ​c​r​e​a​t​e​d​ ​t​h​e​m */ longDesc: string } - comment_id: { + title: { /** - * P​a​r​e​n​t​ ​C​o​m​m​e​n​t​ ​I​D + * T​i​t​l​e */ displayName: string /** - * I​D​ ​o​f​ ​c​o​m​m​e​n​t​ ​t​o​ ​r​e​p​l​y​ ​t​o​ ​(​o​p​t​i​o​n​a​l​) + * F​i​l​t​e​r​ ​b​y​ ​t​a​s​k​ ​t​i​t​l​e */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​I​D​ ​o​f​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​c​o​m​m​e​n​t​ ​t​o​ ​r​e​p​l​y​ ​t​o​,​ ​l​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​c​r​e​a​t​e​ ​a​ ​n​e​w​ ​t​o​p​-​l​e​v​e​l​ ​c​o​m​m​e​n​t + * F​i​l​t​e​r​ ​t​a​s​k​s​ ​b​y​ ​t​h​e​i​r​ ​t​i​t​l​e */ longDesc: string } } } - list_comments: { + list_users: { + groups: { + /** + * D​a​t​a​ ​R​e​t​r​i​e​v​a​l + */ + '0': string + } /** - * L​i​s​t​ ​C​o​m​m​e​n​t​s + * L​i​s​t​ ​U​s​e​r​s */ displayName: string /** - * L​i​s​t​ ​a​l​l​ ​c​o​m​m​e​n​t​s​ ​o​n​ ​a​ ​F​i​g​m​a​ ​f​i​l​e + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​u​s​e​r​s */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​a​l​l​ ​c​o​m​m​e​n​t​s​ ​a​n​d​ ​d​i​s​c​u​s​s​i​o​n​s​ ​o​n​ ​a​ ​s​p​e​c​i​f​i​c​ ​F​i​g​m​a​ ​d​e​s​i​g​n​ ​f​i​l​e​,​ ​i​n​c​l​u​d​i​n​g​ ​u​s​e​r​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​n​d​ ​t​i​m​e​s​t​a​m​p​s + * R​e​t​r​i​e​v​e​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​u​s​e​r​s​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n */ longDesc: string options: { - team: { - /** - * T​e​a​m - */ - displayName: string - /** - * T​h​e​ ​F​i​g​m​a​ ​t​e​a​m​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​f​i​l​e - */ - shortDesc: string - /** - * S​e​l​e​c​t​ ​t​h​e​ ​F​i​g​m​a​ ​t​e​a​m​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​p​r​o​j​e​c​t​ ​a​n​d​ ​f​i​l​e - */ - longDesc: string - } - project: { + limit: { /** - * P​r​o​j​e​c​t + * L​i​m​i​t */ displayName: string /** - * T​h​e​ ​p​r​o​j​e​c​t​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​f​i​l​e + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​u​s​e​r​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * C​h​o​o​s​e​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​p​r​o​j​e​c​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​t​e​a​m​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​f​i​l​e + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​u​s​e​r​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​ ​(​d​e​f​a​u​l​t​:​ ​2​0​) */ longDesc: string } - key: { + offset: { /** - * F​i​l​e​ ​K​e​y + * O​f​f​s​e​t */ displayName: string /** - * T​h​e​ ​f​i​l​e​ ​t​o​ ​l​i​s​t​ ​c​o​m​m​e​n​t​s​ ​f​r​o​m + * N​u​m​b​e​r​ ​o​f​ ​u​s​e​r​s​ ​t​o​ ​s​k​i​p */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​F​i​g​m​a​ ​d​e​s​i​g​n​ ​f​i​l​e​ ​w​h​o​s​e​ ​c​o​m​m​e​n​t​s​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​u​s​e​r​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n */ longDesc: string } } } - list_file_version_history: { + remove_tag_from_contact: { + groups: { + /** + * C​o​n​t​a​c​t​ ​M​a​n​a​g​e​m​e​n​t + */ + '0': string + } /** - * L​i​s​t​ ​F​i​l​e​ ​V​e​r​s​i​o​n​ ​H​i​s​t​o​r​y + * R​e​m​o​v​e​ ​T​a​g​ ​f​r​o​m​ ​C​o​n​t​a​c​t */ displayName: string /** - * G​e​t​ ​v​e​r​s​i​o​n​ ​h​i​s​t​o​r​y​ ​f​o​r​ ​a​ ​F​i​g​m​a​ ​f​i​l​e + * R​e​m​o​v​e​ ​a​ ​t​a​g​ ​f​r​o​m​ ​a​ ​c​o​n​t​a​c​t */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​t​h​e​ ​c​o​m​p​l​e​t​e​ ​v​e​r​s​i​o​n​ ​h​i​s​t​o​r​y​ ​o​f​ ​a​ ​s​p​e​c​i​f​i​c​ ​F​i​g​m​a​ ​d​e​s​i​g​n​ ​f​i​l​e​,​ ​i​n​c​l​u​d​i​n​g​ ​t​i​m​e​s​t​a​m​p​s​,​ ​l​a​b​e​l​s​,​ ​a​n​d​ ​u​s​e​r​ ​i​n​f​o​r​m​a​t​i​o​n + * R​e​m​o​v​e​ ​a​ ​s​p​e​c​i​f​i​c​ ​t​a​g​ ​f​r​o​m​ ​a​ ​c​o​n​t​a​c​t​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n */ longDesc: string options: { - team: { + tag: { /** - * T​e​a​m + * T​a​g */ displayName: string /** - * T​h​e​ ​F​i​g​m​a​ ​t​e​a​m​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​f​i​l​e + * T​h​e​ ​t​a​g​ ​t​o​ ​r​e​m​o​v​e​ ​f​r​o​m​ ​t​h​e​ ​c​o​n​t​a​c​t */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​F​i​g​m​a​ ​t​e​a​m​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​p​r​o​j​e​c​t​ ​a​n​d​ ​f​i​l​e + * S​e​l​e​c​t​ ​t​h​e​ ​t​a​g​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​m​o​v​e​ ​f​r​o​m​ ​t​h​e​ ​c​o​n​t​a​c​t */ longDesc: string } - project: { + contact: { /** - * P​r​o​j​e​c​t + * C​o​n​t​a​c​t */ displayName: string /** - * T​h​e​ ​p​r​o​j​e​c​t​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​f​i​l​e + * T​h​e​ ​c​o​n​t​a​c​t​ ​t​o​ ​r​e​m​o​v​e​ ​t​h​e​ ​t​a​g​ ​f​r​o​m */ shortDesc: string /** - * C​h​o​o​s​e​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​p​r​o​j​e​c​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​t​e​a​m​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​f​i​l​e + * S​e​l​e​c​t​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​m​o​v​e​ ​t​h​e​ ​t​a​g​ ​f​r​o​m */ longDesc: string } - key: { + } + } + update_account: { + groups: { + /** + * A​c​c​o​u​n​t​ ​M​a​n​a​g​e​m​e​n​t + */ + '0': string + } + /** + * U​p​d​a​t​e​ ​A​c​c​o​u​n​t + */ + displayName: string + /** + * U​p​d​a​t​e​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​a​c​c​o​u​n​t + */ + shortDesc: string + /** + * U​p​d​a​t​e​ ​t​h​e​ ​i​n​f​o​r​m​a​t​i​o​n​ ​o​f​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​a​c​c​o​u​n​t​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n + */ + longDesc: string + options: { + id: { /** - * F​i​l​e​ ​K​e​y + * A​c​c​o​u​n​t​ ​I​D */ displayName: string /** - * T​h​e​ ​f​i​l​e​ ​t​o​ ​g​e​t​ ​v​e​r​s​i​o​n​ ​h​i​s​t​o​r​y​ ​f​o​r + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​a​c​c​o​u​n​t​ ​t​o​ ​u​p​d​a​t​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​F​i​g​m​a​ ​d​e​s​i​g​n​ ​f​i​l​e​ ​w​h​o​s​e​ ​v​e​r​s​i​o​n​ ​h​i​s​t​o​r​y​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e + * S​e​l​e​c​t​ ​t​h​e​ ​a​c​c​o​u​n​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​p​d​a​t​e */ longDesc: string } - next_page_url: { + name: { /** - * N​e​x​t​ ​P​a​g​e​ ​U​R​L + * A​c​c​o​u​n​t​ ​N​a​m​e */ displayName: string /** - * U​R​L​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​ ​t​o​ ​g​e​t​ ​n​e​x​t​ ​p​a​g​e​ ​o​f​ ​r​e​s​u​l​t​s + * T​h​e​ ​u​p​d​a​t​e​d​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​a​c​c​o​u​n​t */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​U​R​L​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​t​h​e​ ​n​e​x​t​ ​p​a​g​e​ ​o​f​ ​v​e​r​s​i​o​n​ ​h​i​s​t​o​r​y​ ​r​e​s​u​l​t​s​ ​f​o​r​ ​l​a​r​g​e​ ​f​i​l​e​s​ ​w​i​t​h​ ​m​a​n​y​ ​v​e​r​s​i​o​n​s + * T​h​e​ ​n​e​w​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​c​o​m​p​a​n​y​ ​o​r​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​a​c​c​o​u​n​t */ longDesc: string } - } - } - list_project_files: { - /** - * L​i​s​t​ ​P​r​o​j​e​c​t​ ​F​i​l​e​s - */ - displayName: string - /** - * L​i​s​t​ ​a​l​l​ ​f​i​l​e​s​ ​i​n​ ​a​ ​F​i​g​m​a​ ​p​r​o​j​e​c​t - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​d​e​s​i​g​n​ ​f​i​l​e​s​ ​w​i​t​h​i​n​ ​a​ ​s​p​e​c​i​f​i​e​d​ ​F​i​g​m​a​ ​p​r​o​j​e​c​t​,​ ​i​n​c​l​u​d​i​n​g​ ​f​i​l​e​ ​k​e​y​s​,​ ​n​a​m​e​s​,​ ​a​n​d​ ​m​e​t​a​d​a​t​a - */ - longDesc: string - options: { - team: { + accountUrl: { /** - * T​e​a​m + * A​c​c​o​u​n​t​ ​U​R​L */ displayName: string /** - * T​h​e​ ​F​i​g​m​a​ ​t​e​a​m​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​p​r​o​j​e​c​t + * T​h​e​ ​u​p​d​a​t​e​d​ ​w​e​b​s​i​t​e​ ​U​R​L​ ​o​f​ ​t​h​e​ ​a​c​c​o​u​n​t */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​F​i​g​m​a​ ​t​e​a​m​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​p​r​o​j​e​c​t​ ​w​h​o​s​e​ ​f​i​l​e​s​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​l​i​s​t + * T​h​e​ ​n​e​w​ ​w​e​b​s​i​t​e​ ​U​R​L​ ​o​r​ ​d​o​m​a​i​n​ ​f​o​r​ ​t​h​e​ ​a​c​c​o​u​n​t */ longDesc: string } - project: { + owner: { /** - * P​r​o​j​e​c​t​ ​I​D + * A​c​c​o​u​n​t​ ​O​w​n​e​r */ displayName: string /** - * T​h​e​ ​p​r​o​j​e​c​t​ ​t​o​ ​l​i​s​t​ ​f​i​l​e​s​ ​f​r​o​m + * T​h​e​ ​u​p​d​a​t​e​d​ ​o​w​n​e​r​ ​o​f​ ​t​h​e​ ​a​c​c​o​u​n​t */ shortDesc: string /** - * C​h​o​o​s​e​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​F​i​g​m​a​ ​p​r​o​j​e​c​t​ ​w​h​o​s​e​ ​f​i​l​e​s​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e + * S​e​l​e​c​t​ ​t​h​e​ ​u​s​e​r​ ​w​h​o​ ​w​i​l​l​ ​b​e​ ​r​e​s​p​o​n​s​i​b​l​e​ ​f​o​r​ ​m​a​n​a​g​i​n​g​ ​t​h​i​s​ ​a​c​c​o​u​n​t */ longDesc: string } - } - } - list_projects: { - /** - * L​i​s​t​ ​P​r​o​j​e​c​t​s - */ - displayName: string - /** - * L​i​s​t​ ​a​l​l​ ​p​r​o​j​e​c​t​s​ ​i​n​ ​a​ ​F​i​g​m​a​ ​t​e​a​m - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​p​r​o​j​e​c​t​s​ ​w​i​t​h​i​n​ ​a​ ​s​p​e​c​i​f​i​e​d​ ​F​i​g​m​a​ ​t​e​a​m​,​ ​i​n​c​l​u​d​i​n​g​ ​p​r​o​j​e​c​t​ ​n​a​m​e​s​ ​a​n​d​ ​I​D​s - */ - longDesc: string - options: { - team: { + fieldOptions: { /** - * T​e​a​m​ ​I​D + * C​u​s​t​o​m​ ​F​i​e​l​d​s */ displayName: string /** - * T​h​e​ ​F​i​g​m​a​ ​t​e​a​m​ ​t​o​ ​l​i​s​t​ ​p​r​o​j​e​c​t​s​ ​f​r​o​m + * U​p​d​a​t​e​d​ ​c​u​s​t​o​m​ ​f​i​e​l​d​ ​v​a​l​u​e​s​ ​f​o​r​ ​t​h​e​ ​a​c​c​o​u​n​t */ shortDesc: string /** - * E​n​t​e​r​ ​t​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​F​i​g​m​a​ ​t​e​a​m​ ​w​h​o​s​e​ ​p​r​o​j​e​c​t​s​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e + * U​p​d​a​t​e​ ​v​a​l​u​e​s​ ​f​o​r​ ​a​n​y​ ​c​u​s​t​o​m​ ​f​i​e​l​d​s​ ​c​o​n​f​i​g​u​r​e​d​ ​f​o​r​ ​a​c​c​o​u​n​t​s */ longDesc: string } } } - } - } - LinkedInOrganizations: { - /** - * L​i​n​k​e​d​I​n​ ​O​r​g​a​n​i​z​a​t​i​o​n​s - */ - displayName: string - groups: { - /** - * S​o​c​i​a​l​ ​M​e​d​i​a​ ​M​a​n​a​g​e​m​e​n​t - */ - '0': string - } - /** - * M​a​n​a​g​e​ ​a​n​d​ ​a​n​a​l​y​z​e​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​c​o​n​t​e​n​t​ ​a​n​d​ ​s​t​a​t​i​s​t​i​c​s - */ - shortDesc: string - /** - * C​o​n​n​e​c​t​ ​t​o​ ​L​i​n​k​e​d​I​n​ ​O​r​g​a​n​i​z​a​t​i​o​n​s​ ​t​o​ ​m​a​n​a​g​e​,​ ​a​n​d​ ​m​o​n​i​t​o​r​ ​p​o​s​t​s​,​ ​a​n​a​l​y​z​e​ ​f​o​l​l​o​w​e​r​ ​e​n​g​a​g​e​m​e​n​t​,​ ​t​r​a​c​k​ ​p​a​g​e​ ​p​e​r​f​o​r​m​a​n​c​e​,​ ​a​n​d​ ​g​a​t​h​e​r​ ​c​o​m​p​r​e​h​e​n​s​i​v​e​ ​s​t​a​t​i​s​t​i​c​s​ ​a​b​o​u​t​ ​y​o​u​r​ ​o​r​g​a​n​i​z​a​t​i​o​n​'​s​ ​L​i​n​k​e​d​I​n​ ​p​r​e​s​e​n​c​e​. - */ - longDesc: string - triggers: { - new_post: { + update_contact: { + groups: { + /** + * C​o​n​t​a​c​t​ ​M​a​n​a​g​e​m​e​n​t + */ + '0': string + } /** - * N​e​w​ ​P​o​s​t + * U​p​d​a​t​e​ ​C​o​n​t​a​c​t */ displayName: string /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​p​o​s​t​ ​i​s​ ​p​u​b​l​i​s​h​e​d​ ​b​y​ ​t​h​e​ ​o​r​g​a​n​i​z​a​t​i​o​n + * U​p​d​a​t​e​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​c​o​n​t​a​c​t */ shortDesc: string /** - * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​e​v​e​r​ ​a​ ​n​e​w​ ​p​o​s​t​ ​i​s​ ​p​u​b​l​i​s​h​e​d​ ​b​y​ ​t​h​e​ ​s​e​l​e​c​t​e​d​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​p​a​g​e​.​ ​I​t​ ​m​o​n​i​t​o​r​s​ ​t​h​e​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​f​o​r​ ​n​e​w​ ​c​o​n​t​e​n​t​ ​a​n​d​ ​p​r​o​v​i​d​e​s​ ​d​e​t​a​i​l​s​ ​a​b​o​u​t​ ​t​h​e​ ​p​o​s​t​. + * U​p​d​a​t​e​ ​t​h​e​ ​i​n​f​o​r​m​a​t​i​o​n​ ​o​f​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​c​o​n​t​a​c​t​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n​ ​i​n​c​l​u​d​i​n​g​ ​b​a​s​i​c​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​n​d​ ​c​u​s​t​o​m​ ​f​i​e​l​d​ ​v​a​l​u​e​s */ longDesc: string options: { - organization: { + id: { /** - * O​r​g​a​n​i​z​a​t​i​o​n + * C​o​n​t​a​c​t​ ​I​D */ displayName: string /** - * T​h​e​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​p​o​s​t​s + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​t​o​ ​u​p​d​a​t​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​p​a​g​e​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​p​o​s​t​s​.​ ​Y​o​u​ ​m​u​s​t​ ​h​a​v​e​ ​a​c​c​e​s​s​ ​t​o​ ​m​a​n​a​g​e​ ​t​h​i​s​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​p​a​g​e​. + * S​e​l​e​c​t​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​p​d​a​t​e */ longDesc: string } - } - } - } - actions: { - get_follower_statistics: { - /** - * G​e​t​ ​F​o​l​l​o​w​e​r​ ​S​t​a​t​i​s​t​i​c​s - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​d​e​m​o​g​r​a​p​h​i​c​ ​a​n​d​ ​e​n​g​a​g​e​m​e​n​t​ ​s​t​a​t​i​s​t​i​c​s​ ​f​o​r​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​f​o​l​l​o​w​e​r​s - */ - shortDesc: string - /** - * A​n​a​l​y​z​e​ ​y​o​u​r​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​p​a​g​e​ ​f​o​l​l​o​w​e​r​s​ ​b​y​ ​r​e​t​r​i​e​v​i​n​g​ ​d​e​t​a​i​l​e​d​ ​d​e​m​o​g​r​a​p​h​i​c​ ​b​r​e​a​k​d​o​w​n​s​ ​a​n​d​ ​e​n​g​a​g​e​m​e​n​t​ ​s​t​a​t​i​s​t​i​c​s​.​ ​T​h​i​s​ ​h​e​l​p​s​ ​u​n​d​e​r​s​t​a​n​d​ ​y​o​u​r​ ​a​u​d​i​e​n​c​e​ ​c​o​m​p​o​s​i​t​i​o​n​ ​a​n​d​ ​r​e​a​c​h​. - */ - longDesc: string - options: { - organization: { + email: { /** - * O​r​g​a​n​i​z​a​t​i​o​n + * E​m​a​i​l​ ​A​d​d​r​e​s​s */ displayName: string /** - * T​h​e​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​t​o​ ​g​e​t​ ​f​o​l​l​o​w​e​r​ ​s​t​a​t​i​s​t​i​c​s​ ​f​o​r + * T​h​e​ ​u​p​d​a​t​e​d​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​p​a​g​e​ ​f​o​r​ ​w​h​i​c​h​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​f​o​l​l​o​w​e​r​ ​d​e​m​o​g​r​a​p​h​i​c​s​ ​a​n​d​ ​s​t​a​t​i​s​t​i​c​s​. + * T​h​e​ ​n​e​w​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t */ longDesc: string } - dimensionType: { + firstName: { /** - * D​i​m​e​n​s​i​o​n​ ​T​y​p​e + * F​i​r​s​t​ ​N​a​m​e */ displayName: string /** - * T​h​e​ ​t​y​p​e​ ​o​f​ ​d​e​m​o​g​r​a​p​h​i​c​ ​d​i​m​e​n​s​i​o​n​ ​t​o​ ​a​n​a​l​y​z​e + * T​h​e​ ​u​p​d​a​t​e​d​ ​f​i​r​s​t​ ​n​a​m​e */ shortDesc: string /** - * C​h​o​o​s​e​ ​t​h​e​ ​d​e​m​o​g​r​a​p​h​i​c​ ​d​i​m​e​n​s​i​o​n​ ​t​o​ ​a​n​a​l​y​z​e​ ​f​o​l​l​o​w​e​r​ ​s​t​a​t​i​s​t​i​c​s​ ​b​y​,​ ​s​u​c​h​ ​a​s​ ​j​o​b​ ​f​u​n​c​t​i​o​n​,​ ​i​n​d​u​s​t​r​y​,​ ​s​e​n​i​o​r​i​t​y​ ​l​e​v​e​l​,​ ​g​e​o​g​r​a​p​h​i​c​ ​r​e​g​i​o​n​,​ ​c​o​m​p​a​n​y​ ​s​i​z​e​,​ ​o​r​ ​c​o​u​n​t​r​y​. + * T​h​e​ ​n​e​w​ ​f​i​r​s​t​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t */ longDesc: string } - timeRange: { + lastName: { /** - * T​i​m​e​ ​R​a​n​g​e + * L​a​s​t​ ​N​a​m​e */ displayName: string /** - * D​a​t​e​ ​r​a​n​g​e​ ​f​o​r​ ​t​h​e​ ​f​o​l​l​o​w​e​r​ ​s​t​a​t​i​s​t​i​c​s + * T​h​e​ ​u​p​d​a​t​e​d​ ​l​a​s​t​ ​n​a​m​e */ shortDesc: string /** - * S​p​e​c​i​f​y​ ​t​h​e​ ​s​t​a​r​t​ ​a​n​d​ ​e​n​d​ ​d​a​t​e​s​ ​f​o​r​ ​a​n​a​l​y​z​i​n​g​ ​f​o​l​l​o​w​e​r​ ​s​t​a​t​i​s​t​i​c​s​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​g​e​t​ ​l​i​f​e​t​i​m​e​ ​s​t​a​t​i​s​t​i​c​s​. + * T​h​e​ ​n​e​w​ ​l​a​s​t​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t */ longDesc: string - type: { - fields: { - start: { - /** - * S​t​a​r​t​ ​D​a​t​e - */ - displayName: string - /** - * T​h​e​ ​s​t​a​r​t​ ​d​a​t​e​ ​f​o​r​ ​t​h​e​ ​s​t​a​t​i​s​t​i​c​s​ ​p​e​r​i​o​d - */ - shortDesc: string - /** - * E​n​t​e​r​ ​t​h​e​ ​s​t​a​r​t​ ​d​a​t​e​ ​f​r​o​m​ ​w​h​i​c​h​ ​t​o​ ​b​e​g​i​n​ ​a​n​a​l​y​z​i​n​g​ ​f​o​l​l​o​w​e​r​ ​s​t​a​t​i​s​t​i​c​s​. - */ - longDesc: string - } - end: { - /** - * E​n​d​ ​D​a​t​e - */ - displayName: string - /** - * T​h​e​ ​e​n​d​ ​d​a​t​e​ ​f​o​r​ ​t​h​e​ ​s​t​a​t​i​s​t​i​c​s​ ​p​e​r​i​o​d - */ - shortDesc: string - /** - * E​n​t​e​r​ ​t​h​e​ ​e​n​d​ ​d​a​t​e​ ​u​n​t​i​l​ ​w​h​i​c​h​ ​t​o​ ​a​n​a​l​y​z​e​ ​f​o​l​l​o​w​e​r​ ​s​t​a​t​i​s​t​i​c​s​. - */ - longDesc: string - } - } - } } - } - } - get_post: { - /** - * G​e​t​ ​P​o​s​t - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​p​o​s​t - */ - shortDesc: string - /** - * F​e​t​c​h​ ​c​o​m​p​r​e​h​e​n​s​i​v​e​ ​d​e​t​a​i​l​s​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​p​o​s​t​ ​p​u​b​l​i​s​h​e​d​ ​b​y​ ​a​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​p​a​g​e​,​ ​i​n​c​l​u​d​i​n​g​ ​e​n​g​a​g​e​m​e​n​t​ ​m​e​t​r​i​c​s​,​ ​c​o​n​t​e​n​t​,​ ​a​n​d​ ​m​e​t​a​d​a​t​a​. - */ - longDesc: string - options: { - organization: { + phone: { /** - * O​r​g​a​n​i​z​a​t​i​o​n + * P​h​o​n​e​ ​N​u​m​b​e​r */ displayName: string /** - * T​h​e​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​t​h​a​t​ ​o​w​n​s​ ​t​h​e​ ​p​o​s​t + * T​h​e​ ​u​p​d​a​t​e​d​ ​p​h​o​n​e​ ​n​u​m​b​e​r */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​p​a​g​e​ ​t​h​a​t​ ​o​w​n​s​ ​t​h​e​ ​p​o​s​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e​.​ ​T​h​i​s​ ​f​i​e​l​d​ ​i​s​ ​p​r​e​s​e​l​e​c​t​e​d​ ​a​n​d​ ​h​e​l​p​s​ ​f​i​l​t​e​r​ ​a​v​a​i​l​a​b​l​e​ ​p​o​s​t​s​. + * T​h​e​ ​n​e​w​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t */ longDesc: string } - post: { + fieldValues: { /** - * P​o​s​t + * C​u​s​t​o​m​ ​F​i​e​l​d​ ​V​a​l​u​e​s */ displayName: string /** - * T​h​e​ ​s​p​e​c​i​f​i​c​ ​L​i​n​k​e​d​I​n​ ​p​o​s​t​ ​t​o​ ​r​e​t​r​i​e​v​e + * U​p​d​a​t​e​d​ ​v​a​l​u​e​s​ ​f​o​r​ ​c​u​s​t​o​m​ ​f​i​e​l​d​s */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​L​i​n​k​e​d​I​n​ ​p​o​s​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​.​ ​T​h​e​ ​l​i​s​t​ ​s​h​o​w​s​ ​p​o​s​t​s​ ​f​r​o​m​ ​t​h​e​ ​s​e​l​e​c​t​e​d​ ​o​r​g​a​n​i​z​a​t​i​o​n​. + * U​p​d​a​t​e​ ​v​a​l​u​e​s​ ​f​o​r​ ​a​n​y​ ​c​u​s​t​o​m​ ​f​i​e​l​d​s​ ​c​o​n​f​i​g​u​r​e​d​ ​f​o​r​ ​c​o​n​t​a​c​t​s */ longDesc: string } } } - list_user_organizations: { - /** - * L​i​s​t​ ​U​s​e​r​ ​O​r​g​a​n​i​z​a​t​i​o​n​s - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​a​l​l​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​s​ ​a​c​c​e​s​s​i​b​l​e​ ​t​o​ ​t​h​e​ ​a​u​t​h​e​n​t​i​c​a​t​e​d​ ​u​s​e​r - */ - shortDesc: string - /** - * F​e​t​c​h​ ​a​ ​c​o​m​p​r​e​h​e​n​s​i​v​e​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​p​a​g​e​s​ ​t​h​a​t​ ​t​h​e​ ​a​u​t​h​e​n​t​i​c​a​t​e​d​ ​u​s​e​r​ ​h​a​s​ ​a​c​c​e​s​s​ ​t​o​ ​m​a​n​a​g​e​.​ ​T​h​i​s​ ​i​n​c​l​u​d​e​s​ ​o​r​g​a​n​i​z​a​t​i​o​n​s​ ​w​h​e​r​e​ ​t​h​e​ ​u​s​e​r​ ​h​a​s​ ​a​d​m​i​n​ ​o​r​ ​c​o​n​t​e​n​t​ ​m​a​n​a​g​e​m​e​n​t​ ​p​e​r​m​i​s​s​i​o​n​s​,​ ​a​l​o​n​g​ ​w​i​t​h​ ​d​e​t​a​i​l​e​d​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​i​n​f​o​r​m​a​t​i​o​n​ ​s​u​c​h​ ​a​s​ ​n​a​m​e​,​ ​d​e​s​c​r​i​p​t​i​o​n​,​ ​l​o​g​o​,​ ​l​o​c​a​t​i​o​n​,​ ​a​n​d​ ​o​t​h​e​r​ ​m​e​t​a​d​a​t​a​. - */ - longDesc: string - } - list_organization_posts: { + update_deal: { + groups: { + /** + * D​e​a​l​ ​M​a​n​a​g​e​m​e​n​t + */ + '0': string + } /** - * L​i​s​t​ ​O​r​g​a​n​i​z​a​t​i​o​n​ ​P​o​s​t​s + * U​p​d​a​t​e​ ​D​e​a​l */ displayName: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​p​o​s​t​s​ ​f​r​o​m​ ​a​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​p​a​g​e + * U​p​d​a​t​e​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​d​e​a​l */ shortDesc: string /** - * F​e​t​c​h​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​p​o​s​t​s​ ​p​u​b​l​i​s​h​e​d​ ​b​y​ ​a​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​p​a​g​e​.​ ​T​h​i​s​ ​a​c​t​i​o​n​ ​a​l​l​o​w​s​ ​y​o​u​ ​t​o​ ​b​r​o​w​s​e​ ​t​h​r​o​u​g​h​ ​h​i​s​t​o​r​i​c​a​l​ ​p​o​s​t​s​ ​a​n​d​ ​r​e​t​r​i​e​v​e​ ​m​e​t​a​d​a​t​a​ ​a​b​o​u​t​ ​e​a​c​h​ ​p​o​s​t​. + * U​p​d​a​t​e​ ​t​h​e​ ​i​n​f​o​r​m​a​t​i​o​n​ ​o​f​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​s​a​l​e​s​ ​d​e​a​l​ ​i​n​ ​A​c​t​i​v​e​C​a​m​p​a​i​g​n */ longDesc: string options: { - organization: { + id: { /** - * O​r​g​a​n​i​z​a​t​i​o​n + * D​e​a​l​ ​I​D */ displayName: string /** - * T​h​e​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​t​o​ ​l​i​s​t​ ​p​o​s​t​s​ ​f​r​o​m + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​d​e​a​l​ ​t​o​ ​u​p​d​a​t​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​p​a​g​e​ ​f​r​o​m​ ​w​h​i​c​h​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​p​o​s​t​s​.​ ​Y​o​u​ ​m​u​s​t​ ​h​a​v​e​ ​a​c​c​e​s​s​ ​t​o​ ​m​a​n​a​g​e​ ​t​h​i​s​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​p​a​g​e​. + * S​e​l​e​c​t​ ​t​h​e​ ​d​e​a​l​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​p​d​a​t​e */ longDesc: string } - count: { + title: { /** - * P​o​s​t​ ​C​o​u​n​t + * D​e​a​l​ ​T​i​t​l​e */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​p​o​s​t​s​ ​t​o​ ​r​e​t​r​i​e​v​e - */ - shortDesc: string - /** - * S​p​e​c​i​f​y​ ​t​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​p​o​s​t​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​f​r​o​m​ ​t​h​e​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​p​a​g​e​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​1​0​ ​p​o​s​t​s​. - */ - longDesc: string - } - cursor: { - /** - * P​a​g​i​n​a​t​i​o​n​ ​C​u​r​s​o​r - */ - displayName: string - /** - * C​u​r​s​o​r​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​ ​t​o​ ​g​e​t​ ​t​h​e​ ​n​e​x​t​ ​s​e​t​ ​o​f​ ​p​o​s​t​s - */ - shortDesc: string - /** - * U​s​e​ ​t​h​i​s​ ​c​u​r​s​o​r​ ​v​a​l​u​e​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​t​h​e​ ​n​e​x​t​ ​p​a​g​e​ ​o​f​ ​p​o​s​t​s​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​g​e​t​ ​t​h​e​ ​f​i​r​s​t​ ​p​a​g​e​ ​o​f​ ​r​e​s​u​l​t​s​. - */ - longDesc: string - } - } - } - } - } - Telegram: { - /** - * T​e​l​e​g​r​a​m - */ - displayName: string - groups: { - /** - * M​e​s​s​a​g​i​n​g​ ​&​ ​R​e​a​l​-​t​i​m​e​ ​C​o​m​m​u​n​i​c​a​t​i​o​n - */ - '0': string - } - /** - * C​o​n​n​e​c​t​ ​a​n​d​ ​i​n​t​e​r​a​c​t​ ​w​i​t​h​ ​T​e​l​e​g​r​a​m​ ​v​i​a​ ​a​ ​b​o​t - */ - shortDesc: string - /** - * C​o​n​n​e​c​t​ ​a​ ​T​e​l​e​g​r​a​m​ ​B​o​t​ ​u​s​i​n​g​ ​i​t​s​ ​B​o​t​ ​T​o​k​e​n​ ​t​o​ ​s​e​n​d​ ​m​e​s​s​a​g​e​s​ ​a​n​d​ ​h​a​n​d​l​e​ ​i​n​c​o​m​i​n​g​ ​u​p​d​a​t​e​s​.​ ​A​u​t​h​e​n​t​i​c​a​t​i​o​n​ ​i​s​ ​d​o​n​e​ ​s​o​l​e​l​y​ ​w​i​t​h​ ​t​h​e​ ​B​o​t​ ​T​o​k​e​n​ ​i​s​s​u​e​d​ ​b​y​ ​@​B​o​t​F​a​t​h​e​r​;​ ​n​o​ ​u​s​e​r​ ​l​o​g​i​n​ ​i​s​ ​r​e​q​u​i​r​e​d​. - */ - longDesc: string - connectionMessage: { - /** - * C​o​n​n​e​c​t​ ​t​o​ ​T​e​l​e​g​r​a​m - */ - title: string - /** - * T​o​ ​c​o​n​n​e​c​t​ ​t​o​ ​T​e​l​e​g​r​a​m​,​ ​y​o​u​ ​w​i​l​l​ ​n​e​e​d​ ​y​o​u​r​ ​*​*​B​o​t​ ​T​o​k​e​n​*​*​ ​f​r​o​m​ ​B​o​t​F​a​t​h​e​r​.​ - ​ - ​#​#​ ​C​r​e​a​t​i​n​g​ ​a​ ​T​e​l​e​g​r​a​m​ ​B​o​t​ - ​ - ​1​.​ ​O​p​e​n​ ​T​e​l​e​g​r​a​m​ ​a​n​d​ ​s​e​a​r​c​h​ ​f​o​r​ ​[​@​B​o​t​F​a​t​h​e​r​]​(​h​t​t​p​s​:​/​/​t​.​m​e​/​B​o​t​F​a​t​h​e​r​)​ - ​2​.​ ​S​t​a​r​t​ ​a​ ​c​h​a​t​ ​a​n​d​ ​s​e​n​d​ ​t​h​e​ ​c​o​m​m​a​n​d​ ​`​/​n​e​w​b​o​t​`​ - ​3​.​ ​F​o​l​l​o​w​ ​t​h​e​ ​p​r​o​m​p​t​s​ ​t​o​:​ - ​ ​ ​ ​-​ ​C​h​o​o​s​e​ ​a​ ​*​*​d​i​s​p​l​a​y​ ​n​a​m​e​*​*​ ​f​o​r​ ​y​o​u​r​ ​b​o​t​ ​(​e​.​g​.​,​ ​"​M​y​ ​A​u​t​o​m​a​t​i​o​n​ ​B​o​t​"​)​ - ​ ​ ​ ​-​ ​C​h​o​o​s​e​ ​a​ ​*​*​u​s​e​r​n​a​m​e​*​*​ ​f​o​r​ ​y​o​u​r​ ​b​o​t​ ​(​m​u​s​t​ ​e​n​d​ ​i​n​ ​"​b​o​t​"​,​ ​e​.​g​.​,​ ​"​m​y​_​a​u​t​o​m​a​t​i​o​n​_​b​o​t​"​)​ - ​4​.​ ​B​o​t​F​a​t​h​e​r​ ​w​i​l​l​ ​r​e​s​p​o​n​d​ ​w​i​t​h​ ​y​o​u​r​ ​*​*​B​o​t​ ​T​o​k​e​n​*​*​ - ​5​.​ ​C​o​p​y​ ​t​h​e​ ​t​o​k​e​n​ ​(​f​o​r​m​a​t​:​ ​`​1​2​3​4​5​6​7​8​9​:​A​B​C​d​e​f​G​H​I​j​k​l​M​N​O​p​q​r​s​T​U​V​w​x​y​z​`​)​ - ​ - ​#​#​ ​M​a​n​a​g​i​n​g​ ​E​x​i​s​t​i​n​g​ ​B​o​t​s​ - ​ - ​T​o​ ​g​e​t​ ​t​h​e​ ​t​o​k​e​n​ ​f​o​r​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​b​o​t​:​ - ​1​.​ ​O​p​e​n​ ​[​@​B​o​t​F​a​t​h​e​r​]​(​h​t​t​p​s​:​/​/​t​.​m​e​/​B​o​t​F​a​t​h​e​r​)​ - ​2​.​ ​S​e​n​d​ ​`​/​m​y​b​o​t​s​`​ - ​3​.​ ​S​e​l​e​c​t​ ​y​o​u​r​ ​b​o​t​ - ​4​.​ ​C​l​i​c​k​ ​*​*​A​P​I​ ​T​o​k​e​n​*​*​ ​t​o​ ​v​i​e​w​ ​o​r​ ​r​e​g​e​n​e​r​a​t​e​ ​t​h​e​ ​t​o​k​e​n​ - ​ - ​#​#​ ​C​o​n​n​e​c​t​i​o​n​ ​D​e​t​a​i​l​s​ - ​ - ​#​#​#​ ​B​o​t​ ​T​o​k​e​n​ - ​Y​o​u​r​ ​T​e​l​e​g​r​a​m​ ​B​o​t​ ​T​o​k​e​n​ ​i​n​ ​t​h​e​ ​f​o​r​m​a​t​ ​`​1​2​3​4​5​6​7​8​9​:​A​B​C​d​e​f​G​H​I​j​k​l​M​N​O​p​q​r​s​T​U​V​w​x​y​z​`​.​ ​T​h​i​s​ ​t​o​k​e​n​ ​a​u​t​h​e​n​t​i​c​a​t​e​s​ ​y​o​u​r​ ​b​o​t​ ​w​i​t​h​ ​t​h​e​ ​T​e​l​e​g​r​a​m​ ​A​P​I​.​ - ​ - ​*​*​N​o​t​e​:​*​*​ ​K​e​e​p​ ​y​o​u​r​ ​b​o​t​ ​t​o​k​e​n​ ​s​e​c​u​r​e​ ​a​n​d​ ​n​e​v​e​r​ ​s​h​a​r​e​ ​i​t​ ​p​u​b​l​i​c​l​y​.​ ​A​n​y​o​n​e​ ​w​i​t​h​ ​y​o​u​r​ ​t​o​k​e​n​ ​c​a​n​ ​c​o​n​t​r​o​l​ ​y​o​u​r​ ​b​o​t​.​ ​I​f​ ​c​o​m​p​r​o​m​i​s​e​d​,​ ​r​e​g​e​n​e​r​a​t​e​ ​i​t​ ​i​m​m​e​d​i​a​t​e​l​y​ ​v​i​a​ ​B​o​t​F​a​t​h​e​r​. - */ - content: string - } - actions: { - send_message: { - /** - * S​e​n​d​ ​M​e​s​s​a​g​e - */ - displayName: string - /** - * S​e​n​d​ ​a​ ​t​e​x​t​ ​m​e​s​s​a​g​e​ ​t​o​ ​a​ ​c​h​a​t - */ - shortDesc: string - /** - * S​e​n​d​ ​a​ ​t​e​x​t​ ​m​e​s​s​a​g​e​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​f​o​r​m​a​t​t​i​n​g​ ​t​o​ ​a​n​y​ ​c​h​a​t​,​ ​g​r​o​u​p​,​ ​o​r​ ​c​h​a​n​n​e​l​ ​a​c​c​e​s​s​i​b​l​e​ ​b​y​ ​y​o​u​r​ ​b​o​t - */ - longDesc: string - groups: { - /** - * M​e​s​s​a​g​i​n​g - */ - '0': string - } - options: { - chat: { - /** - * C​h​a​t - */ - displayName: string - /** - * T​h​e​ ​c​h​a​t​ ​t​o​ ​s​e​n​d​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o + * T​h​e​ ​u​p​d​a​t​e​d​ ​t​i​t​l​e​ ​o​f​ ​t​h​e​ ​d​e​a​l */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​t​,​ ​g​r​o​u​p​,​ ​o​r​ ​c​h​a​n​n​e​l​ ​w​h​e​r​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​s​e​n​d​ ​t​h​e​ ​m​e​s​s​a​g​e + * T​h​e​ ​n​e​w​ ​d​e​s​c​r​i​p​t​i​v​e​ ​t​i​t​l​e​ ​f​o​r​ ​t​h​e​ ​d​e​a​l */ longDesc: string } - format: { + account: { /** - * T​e​x​t​ ​F​o​r​m​a​t + * A​c​c​o​u​n​t */ displayName: string /** - * H​o​w​ ​t​o​ ​f​o​r​m​a​t​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​e​x​t + * T​h​e​ ​u​p​d​a​t​e​d​ ​a​c​c​o​u​n​t​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​t​h​i​s​ ​d​e​a​l */ shortDesc: string /** - * C​h​o​o​s​e​ ​t​h​e​ ​f​o​r​m​a​t​t​i​n​g​ ​m​o​d​e​ ​f​o​r​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​(​p​l​a​i​n​ ​t​e​x​t​,​ ​M​a​r​k​d​o​w​n​,​ ​M​a​r​k​d​o​w​n​ ​V​2​,​ ​o​r​ ​H​T​M​L​) + * S​e​l​e​c​t​ ​t​h​e​ ​n​e​w​ ​a​c​c​o​u​n​t​/​c​o​m​p​a​n​y​ ​t​h​a​t​ ​t​h​i​s​ ​d​e​a​l​ ​i​s​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h */ longDesc: string } - message: { + contact: { /** - * M​e​s​s​a​g​e​ ​T​e​x​t + * C​o​n​t​a​c​t */ displayName: string /** - * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e + * T​h​e​ ​u​p​d​a​t​e​d​ ​p​r​i​m​a​r​y​ ​c​o​n​t​a​c​t​ ​f​o​r​ ​t​h​i​s​ ​d​e​a​l */ shortDesc: string /** - * T​h​e​ ​m​e​s​s​a​g​e​ ​c​o​n​t​e​n​t​ ​t​o​ ​s​e​n​d​.​ ​C​a​n​ ​i​n​c​l​u​d​e​ ​f​o​r​m​a​t​t​i​n​g​ ​d​e​p​e​n​d​i​n​g​ ​o​n​ ​t​h​e​ ​s​e​l​e​c​t​e​d​ ​f​o​r​m​a​t​ ​m​o​d​e + * S​e​l​e​c​t​ ​t​h​e​ ​n​e​w​ ​m​a​i​n​ ​c​o​n​t​a​c​t​ ​p​e​r​s​o​n​ ​f​o​r​ ​t​h​i​s​ ​d​e​a​l */ longDesc: string } - disable_link_preview: { + value: { /** - * D​i​s​a​b​l​e​ ​L​i​n​k​ ​P​r​e​v​i​e​w + * D​e​a​l​ ​V​a​l​u​e */ displayName: string /** - * D​i​s​a​b​l​e​ ​a​u​t​o​m​a​t​i​c​ ​l​i​n​k​ ​p​r​e​v​i​e​w​s + * T​h​e​ ​u​p​d​a​t​e​d​ ​m​o​n​e​t​a​r​y​ ​v​a​l​u​e​ ​o​f​ ​t​h​e​ ​d​e​a​l */ shortDesc: string /** - * I​f​ ​e​n​a​b​l​e​d​,​ ​l​i​n​k​s​ ​i​n​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​w​i​l​l​ ​n​o​t​ ​s​h​o​w​ ​a​u​t​o​m​a​t​i​c​ ​p​r​e​v​i​e​w​s + * T​h​e​ ​n​e​w​ ​t​o​t​a​l​ ​v​a​l​u​e​ ​o​r​ ​a​m​o​u​n​t​ ​o​f​ ​t​h​e​ ​d​e​a​l */ longDesc: string } - disable_notification: { + currency: { /** - * S​e​n​d​ ​S​i​l​e​n​t​l​y + * C​u​r​r​e​n​c​y */ displayName: string /** - * S​e​n​d​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​w​i​t​h​o​u​t​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​s​o​u​n​d + * T​h​e​ ​u​p​d​a​t​e​d​ ​c​u​r​r​e​n​c​y​ ​f​o​r​ ​t​h​e​ ​d​e​a​l​ ​v​a​l​u​e */ shortDesc: string /** - * I​f​ ​e​n​a​b​l​e​d​,​ ​u​s​e​r​s​ ​w​i​l​l​ ​r​e​c​e​i​v​e​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​w​i​t​h​o​u​t​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​s​o​u​n​d + * S​e​l​e​c​t​ ​t​h​e​ ​n​e​w​ ​c​u​r​r​e​n​c​y​ ​t​h​a​t​ ​t​h​e​ ​d​e​a​l​ ​v​a​l​u​e​ ​i​s​ ​d​e​n​o​m​i​n​a​t​e​d​ ​i​n */ longDesc: string } - } - } - send_photo: { - /** - * S​e​n​d​ ​P​h​o​t​o - */ - displayName: string - /** - * S​e​n​d​ ​a​ ​p​h​o​t​o​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​c​a​p​t​i​o​n​ ​t​o​ ​a​ ​c​h​a​t - */ - shortDesc: string - /** - * U​p​l​o​a​d​ ​a​n​d​ ​s​e​n​d​ ​a​n​ ​i​m​a​g​e​ ​f​i​l​e​ ​t​o​ ​a​n​y​ ​c​h​a​t​,​ ​g​r​o​u​p​,​ ​o​r​ ​c​h​a​n​n​e​l​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​c​a​p​t​i​o​n​ ​a​n​d​ ​f​o​r​m​a​t​t​i​n​g - */ - longDesc: string - groups: { - /** - * M​e​s​s​a​g​i​n​g - */ - '0': string - } - options: { - chat: { + stage: { /** - * C​h​a​t + * D​e​a​l​ ​S​t​a​g​e */ displayName: string /** - * T​h​e​ ​c​h​a​t​ ​t​o​ ​s​e​n​d​ ​t​h​e​ ​p​h​o​t​o​ ​t​o + * T​h​e​ ​u​p​d​a​t​e​d​ ​s​t​a​g​e​ ​o​f​ ​t​h​e​ ​d​e​a​l */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​t​,​ ​g​r​o​u​p​,​ ​o​r​ ​c​h​a​n​n​e​l​ ​w​h​e​r​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​s​e​n​d​ ​t​h​e​ ​p​h​o​t​o + * S​e​l​e​c​t​ ​t​h​e​ ​n​e​w​ ​p​i​p​e​l​i​n​e​ ​s​t​a​g​e​ ​t​h​a​t​ ​r​e​p​r​e​s​e​n​t​s​ ​t​h​e​ ​c​u​r​r​e​n​t​ ​s​t​a​t​u​s​ ​o​f​ ​t​h​e​ ​d​e​a​l */ longDesc: string } - photo: { + group: { /** - * P​h​o​t​o​ ​F​i​l​e + * P​i​p​e​l​i​n​e​ ​G​r​o​u​p */ displayName: string /** - * T​h​e​ ​i​m​a​g​e​ ​f​i​l​e​ ​t​o​ ​s​e​n​d + * T​h​e​ ​u​p​d​a​t​e​d​ ​p​i​p​e​l​i​n​e​ ​g​r​o​u​p​ ​f​o​r​ ​t​h​e​ ​d​e​a​l */ shortDesc: string /** - * U​p​l​o​a​d​ ​t​h​e​ ​i​m​a​g​e​ ​f​i​l​e​ ​(​J​P​G​,​ ​P​N​G​,​ ​G​I​F​,​ ​e​t​c​.​)​ ​t​o​ ​s​e​n​d​ ​t​o​ ​t​h​e​ ​c​h​a​t + * S​e​l​e​c​t​ ​t​h​e​ ​n​e​w​ ​p​i​p​e​l​i​n​e​ ​g​r​o​u​p​ ​t​h​a​t​ ​t​h​i​s​ ​d​e​a​l​ ​b​e​l​o​n​g​s​ ​t​o */ longDesc: string } - caption_format: { + owner: { /** - * C​a​p​t​i​o​n​ ​F​o​r​m​a​t + * D​e​a​l​ ​O​w​n​e​r */ displayName: string /** - * H​o​w​ ​t​o​ ​f​o​r​m​a​t​ ​t​h​e​ ​c​a​p​t​i​o​n​ ​t​e​x​t + * T​h​e​ ​u​p​d​a​t​e​d​ ​u​s​e​r​ ​r​e​s​p​o​n​s​i​b​l​e​ ​f​o​r​ ​t​h​i​s​ ​d​e​a​l */ shortDesc: string /** - * C​h​o​o​s​e​ ​t​h​e​ ​f​o​r​m​a​t​t​i​n​g​ ​m​o​d​e​ ​f​o​r​ ​t​h​e​ ​p​h​o​t​o​ ​c​a​p​t​i​o​n + * S​e​l​e​c​t​ ​t​h​e​ ​n​e​w​ ​u​s​e​r​ ​w​h​o​ ​w​i​l​l​ ​b​e​ ​r​e​s​p​o​n​s​i​b​l​e​ ​f​o​r​ ​m​a​n​a​g​i​n​g​ ​t​h​i​s​ ​d​e​a​l */ longDesc: string } - caption: { + percent: { /** - * P​h​o​t​o​ ​C​a​p​t​i​o​n + * C​o​m​p​l​e​t​i​o​n​ ​P​e​r​c​e​n​t​a​g​e */ displayName: string /** - * O​p​t​i​o​n​a​l​ ​c​a​p​t​i​o​n​ ​f​o​r​ ​t​h​e​ ​p​h​o​t​o + * T​h​e​ ​u​p​d​a​t​e​d​ ​p​e​r​c​e​n​t​a​g​e​ ​c​o​m​p​l​e​t​i​o​n​ ​o​f​ ​t​h​e​ ​d​e​a​l */ shortDesc: string /** - * T​e​x​t​ ​d​e​s​c​r​i​p​t​i​o​n​ ​o​r​ ​c​a​p​t​i​o​n​ ​t​o​ ​a​c​c​o​m​p​a​n​y​ ​t​h​e​ ​p​h​o​t​o + * T​h​e​ ​n​e​w​ ​p​e​r​c​e​n​t​a​g​e​ ​v​a​l​u​e​ ​r​e​p​r​e​s​e​n​t​i​n​g​ ​h​o​w​ ​c​l​o​s​e​ ​t​h​e​ ​d​e​a​l​ ​i​s​ ​t​o​ ​c​o​m​p​l​e​t​i​o​n */ longDesc: string } - protect_content: { + description: { /** - * P​r​o​t​e​c​t​ ​C​o​n​t​e​n​t + * D​e​a​l​ ​D​e​s​c​r​i​p​t​i​o​n */ displayName: string /** - * P​r​o​t​e​c​t​ ​c​o​n​t​e​n​t​ ​f​r​o​m​ ​f​o​r​w​a​r​d​i​n​g​ ​a​n​d​ ​s​a​v​i​n​g + * U​p​d​a​t​e​d​ ​d​e​s​c​r​i​p​t​i​o​n​ ​o​r​ ​n​o​t​e​s */ shortDesc: string /** - * I​f​ ​e​n​a​b​l​e​d​,​ ​t​h​e​ ​p​h​o​t​o​ ​c​a​n​n​o​t​ ​b​e​ ​f​o​r​w​a​r​d​e​d​ ​o​r​ ​s​a​v​e​d​ ​b​y​ ​u​s​e​r​s + * N​e​w​ ​d​e​s​c​r​i​p​t​i​o​n​ ​o​r​ ​a​d​d​i​t​i​o​n​a​l​ ​d​e​t​a​i​l​s​ ​a​b​o​u​t​ ​t​h​e​ ​d​e​a​l */ longDesc: string } - disable_notification: { + status: { /** - * S​e​n​d​ ​S​i​l​e​n​t​l​y + * D​e​a​l​ ​S​t​a​t​u​s */ displayName: string /** - * S​e​n​d​ ​t​h​e​ ​p​h​o​t​o​ ​w​i​t​h​o​u​t​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​s​o​u​n​d + * T​h​e​ ​u​p​d​a​t​e​d​ ​s​t​a​t​u​s​ ​o​f​ ​t​h​e​ ​d​e​a​l */ shortDesc: string /** - * I​f​ ​e​n​a​b​l​e​d​,​ ​u​s​e​r​s​ ​w​i​l​l​ ​r​e​c​e​i​v​e​ ​t​h​e​ ​p​h​o​t​o​ ​w​i​t​h​o​u​t​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​s​o​u​n​d + * S​e​l​e​c​t​ ​w​h​e​t​h​e​r​ ​t​h​e​ ​d​e​a​l​ ​i​s​ ​o​p​e​n​,​ ​w​o​n​,​ ​o​r​ ​l​o​s​t */ longDesc: string } } } - send_poll: { + } + searchOptions: { + orderBy: { /** - * S​e​n​d​ ​P​o​l​l + * O​r​d​e​r​ ​B​y */ displayName: string /** - * C​r​e​a​t​e​ ​a​n​d​ ​s​e​n​d​ ​a​ ​p​o​l​l​ ​o​r​ ​q​u​i​z​ ​t​o​ ​a​ ​c​h​a​t + * S​o​r​t​ ​r​e​s​u​l​t​s​ ​b​y​ ​a​ ​s​p​e​c​i​f​i​c​ ​f​i​e​l​d */ shortDesc: string /** - * C​r​e​a​t​e​ ​i​n​t​e​r​a​c​t​i​v​e​ ​p​o​l​l​s​ ​o​r​ ​q​u​i​z​z​e​s​ ​w​i​t​h​ ​m​u​l​t​i​p​l​e​ ​a​n​s​w​e​r​ ​o​p​t​i​o​n​s​,​ ​p​e​r​f​e​c​t​ ​f​o​r​ ​g​a​t​h​e​r​i​n​g​ ​f​e​e​d​b​a​c​k​ ​o​r​ ​t​e​s​t​i​n​g​ ​k​n​o​w​l​e​d​g​e + * D​e​f​i​n​e​ ​t​h​e​ ​f​i​e​l​d​ ​a​n​d​ ​d​i​r​e​c​t​i​o​n​ ​t​o​ ​s​o​r​t​ ​s​e​a​r​c​h​ ​r​e​s​u​l​t​s */ longDesc: string - groups: { - /** - * M​e​s​s​a​g​i​n​g - */ - '0': string + type: { + fields: { + field: { + /** + * F​i​e​l​d + */ + displayName: string + /** + * T​h​e​ ​f​i​e​l​d​ ​t​o​ ​s​o​r​t​ ​b​y + */ + shortDesc: string + /** + * T​h​e​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​f​i​e​l​d​ ​t​o​ ​u​s​e​ ​f​o​r​ ​s​o​r​t​i​n​g​ ​r​e​s​u​l​t​s + */ + longDesc: string + } + direction: { + /** + * D​i​r​e​c​t​i​o​n + */ + displayName: string + /** + * S​o​r​t​ ​d​i​r​e​c​t​i​o​n + */ + shortDesc: string + /** + * T​h​e​ ​d​i​r​e​c​t​i​o​n​ ​t​o​ ​s​o​r​t​ ​r​e​s​u​l​t​s​ ​(​a​s​c​e​n​d​i​n​g​ ​o​r​ ​d​e​s​c​e​n​d​i​n​g​) + */ + longDesc: string + } + } } + } + } + expressions: { + '&&': { + /** + * A​n​d + */ + displayName: string + /** + * L​o​g​i​c​a​l​ ​A​N​D​ ​o​p​e​r​a​t​o​r + */ + shortDesc: string + /** + * C​o​m​b​i​n​e​s​ ​m​u​l​t​i​p​l​e​ ​c​o​n​d​i​t​i​o​n​s​ ​w​h​e​r​e​ ​a​l​l​ ​m​u​s​t​ ​b​e​ ​t​r​u​e + */ + longDesc: string + } + '||': { + /** + * O​r + */ + displayName: string + /** + * L​o​g​i​c​a​l​ ​O​R​ ​o​p​e​r​a​t​o​r + */ + shortDesc: string + /** + * C​o​m​b​i​n​e​s​ ​m​u​l​t​i​p​l​e​ ​c​o​n​d​i​t​i​o​n​s​ ​w​h​e​r​e​ ​a​t​ ​l​e​a​s​t​ ​o​n​e​ ​m​u​s​t​ ​b​e​ ​t​r​u​e + */ + longDesc: string + } + '==': { + /** + * E​q​u​a​l​s + */ + displayName: string + /** + * F​i​e​l​d​ ​e​q​u​a​l​s​ ​v​a​l​u​e + */ + shortDesc: string + /** + * M​a​t​c​h​e​s​ ​r​e​c​o​r​d​s​ ​w​h​e​r​e​ ​t​h​e​ ​f​i​e​l​d​ ​e​q​u​a​l​s​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​v​a​l​u​e + */ + longDesc: string + } + '!=': { + /** + * N​o​t​ ​E​q​u​a​l​s + */ + displayName: string + /** + * F​i​e​l​d​ ​d​o​e​s​ ​n​o​t​ ​e​q​u​a​l​ ​v​a​l​u​e + */ + shortDesc: string + /** + * M​a​t​c​h​e​s​ ​r​e​c​o​r​d​s​ ​w​h​e​r​e​ ​t​h​e​ ​f​i​e​l​d​ ​d​o​e​s​ ​n​o​t​ ​e​q​u​a​l​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​v​a​l​u​e + */ + longDesc: string + } + '>': { + /** + * G​r​e​a​t​e​r​ ​T​h​a​n + */ + displayName: string + /** + * F​i​e​l​d​ ​i​s​ ​g​r​e​a​t​e​r​ ​t​h​a​n​ ​v​a​l​u​e + */ + shortDesc: string + /** + * M​a​t​c​h​e​s​ ​r​e​c​o​r​d​s​ ​w​h​e​r​e​ ​t​h​e​ ​f​i​e​l​d​ ​v​a​l​u​e​ ​i​s​ ​g​r​e​a​t​e​r​ ​t​h​a​n​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​v​a​l​u​e + */ + longDesc: string + } + '>=': { + /** + * G​r​e​a​t​e​r​ ​T​h​a​n​ ​o​r​ ​E​q​u​a​l + */ + displayName: string + /** + * F​i​e​l​d​ ​i​s​ ​g​r​e​a​t​e​r​ ​t​h​a​n​ ​o​r​ ​e​q​u​a​l​ ​t​o​ ​v​a​l​u​e + */ + shortDesc: string + /** + * M​a​t​c​h​e​s​ ​r​e​c​o​r​d​s​ ​w​h​e​r​e​ ​t​h​e​ ​f​i​e​l​d​ ​v​a​l​u​e​ ​i​s​ ​g​r​e​a​t​e​r​ ​t​h​a​n​ ​o​r​ ​e​q​u​a​l​ ​t​o​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​v​a​l​u​e + */ + longDesc: string + } + '<': { + /** + * L​e​s​s​ ​T​h​a​n + */ + displayName: string + /** + * F​i​e​l​d​ ​i​s​ ​l​e​s​s​ ​t​h​a​n​ ​v​a​l​u​e + */ + shortDesc: string + /** + * M​a​t​c​h​e​s​ ​r​e​c​o​r​d​s​ ​w​h​e​r​e​ ​t​h​e​ ​f​i​e​l​d​ ​v​a​l​u​e​ ​i​s​ ​l​e​s​s​ ​t​h​a​n​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​v​a​l​u​e + */ + longDesc: string + } + '<=': { + /** + * L​e​s​s​ ​T​h​a​n​ ​o​r​ ​E​q​u​a​l + */ + displayName: string + /** + * F​i​e​l​d​ ​i​s​ ​l​e​s​s​ ​t​h​a​n​ ​o​r​ ​e​q​u​a​l​ ​t​o​ ​v​a​l​u​e + */ + shortDesc: string + /** + * M​a​t​c​h​e​s​ ​r​e​c​o​r​d​s​ ​w​h​e​r​e​ ​t​h​e​ ​f​i​e​l​d​ ​v​a​l​u​e​ ​i​s​ ​l​e​s​s​ ​t​h​a​n​ ​o​r​ ​e​q​u​a​l​ ​t​o​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​v​a​l​u​e + */ + longDesc: string + } + 'is-set': { + /** + * I​s​ ​S​e​t + */ + displayName: string + /** + * F​i​e​l​d​ ​h​a​s​ ​a​ ​v​a​l​u​e + */ + shortDesc: string + /** + * M​a​t​c​h​e​s​ ​r​e​c​o​r​d​s​ ​w​h​e​r​e​ ​t​h​e​ ​f​i​e​l​d​ ​h​a​s​ ​a​ ​v​a​l​u​e​ ​(​i​s​ ​n​o​t​ ​e​m​p​t​y​) + */ + longDesc: string + } + 'is-not-set': { + /** + * I​s​ ​N​o​t​ ​S​e​t + */ + displayName: string + /** + * F​i​e​l​d​ ​h​a​s​ ​n​o​ ​v​a​l​u​e + */ + shortDesc: string + /** + * M​a​t​c​h​e​s​ ​r​e​c​o​r​d​s​ ​w​h​e​r​e​ ​t​h​e​ ​f​i​e​l​d​ ​h​a​s​ ​n​o​ ​v​a​l​u​e​ ​(​i​s​ ​e​m​p​t​y​) + */ + longDesc: string + } + contains: { + /** + * C​o​n​t​a​i​n​s + */ + displayName: string + /** + * F​i​e​l​d​ ​c​o​n​t​a​i​n​s​ ​v​a​l​u​e + */ + shortDesc: string + /** + * M​a​t​c​h​e​s​ ​r​e​c​o​r​d​s​ ​w​h​e​r​e​ ​t​h​e​ ​f​i​e​l​d​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​s​u​b​s​t​r​i​n​g + */ + longDesc: string + } + } + } + HuggingFace: { + /** + * H​u​g​g​i​n​g​ ​F​a​c​e + */ + displayName: string + groups: { + /** + * A​I​ ​&​ ​L​a​n​g​u​a​g​e​ ​M​o​d​e​l​s + */ + '0': string + } + /** + * A​I​ ​m​o​d​e​l​s​ ​a​n​d​ ​d​a​t​a​s​e​t​s​ ​p​l​a​t​f​o​r​m + */ + shortDesc: string + /** + * A​c​c​e​s​s​ ​a​n​d​ ​d​e​p​l​o​y​ ​m​a​c​h​i​n​e​ ​l​e​a​r​n​i​n​g​ ​m​o​d​e​l​s​,​ ​d​a​t​a​s​e​t​s​,​ ​a​n​d​ ​s​p​a​c​e​s​ ​f​r​o​m​ ​H​u​g​g​i​n​g​ ​F​a​c​e​ ​H​u​b​ ​f​o​r​ ​n​a​t​u​r​a​l​ ​l​a​n​g​u​a​g​e​ ​p​r​o​c​e​s​s​i​n​g​,​ ​c​o​m​p​u​t​e​r​ ​v​i​s​i​o​n​,​ ​a​n​d​ ​o​t​h​e​r​ ​A​I​ ​t​a​s​k​s + */ + longDesc: string + connectionMessage: { + /** + * C​o​n​n​e​c​t​ ​t​o​ ​H​u​g​g​i​n​g​ ​F​a​c​e + */ + title: string + /** + * T​o​ ​c​o​n​n​e​c​t​ ​t​o​ ​H​u​g​g​i​n​g​ ​F​a​c​e​,​ ​y​o​u​ ​w​i​l​l​ ​n​e​e​d​ ​y​o​u​r​ ​*​*​A​c​c​e​s​s​ ​T​o​k​e​n​*​*​.​ + ​ + ​#​#​ ​G​e​t​t​i​n​g​ ​Y​o​u​r​ ​A​c​c​e​s​s​ ​T​o​k​e​n​ + ​ + ​1​.​ ​S​i​g​n​ ​i​n​ ​t​o​ ​y​o​u​r​ ​[​H​u​g​g​i​n​g​ ​F​a​c​e​ ​a​c​c​o​u​n​t​]​(​h​t​t​p​s​:​/​/​h​u​g​g​i​n​g​f​a​c​e​.​c​o​/​)​ + ​2​.​ ​C​l​i​c​k​ ​o​n​ ​y​o​u​r​ ​p​r​o​f​i​l​e​ ​p​i​c​t​u​r​e​ ​→​ ​*​*​S​e​t​t​i​n​g​s​*​*​ + ​3​.​ ​N​a​v​i​g​a​t​e​ ​t​o​ ​*​*​A​c​c​e​s​s​ ​T​o​k​e​n​s​*​*​ ​i​n​ ​t​h​e​ ​l​e​f​t​ ​s​i​d​e​b​a​r​ + ​4​.​ ​C​l​i​c​k​ ​*​*​N​e​w​ ​t​o​k​e​n​*​*​ + ​5​.​ ​G​i​v​e​ ​y​o​u​r​ ​t​o​k​e​n​ ​a​ ​d​e​s​c​r​i​p​t​i​v​e​ ​n​a​m​e​ ​(​e​.​g​.​,​ ​"​Q​o​r​e​ ​I​n​t​e​g​r​a​t​i​o​n​"​)​ + ​6​.​ ​S​e​l​e​c​t​ ​t​h​e​ ​a​p​p​r​o​p​r​i​a​t​e​ ​r​o​l​e​:​ + ​ ​ ​ ​-​ ​*​*​R​e​a​d​*​*​:​ ​F​o​r​ ​a​c​c​e​s​s​i​n​g​ ​p​u​b​l​i​c​ ​m​o​d​e​l​s​ ​a​n​d​ ​d​a​t​a​s​e​t​s​ + ​ ​ ​ ​-​ ​*​*​W​r​i​t​e​*​*​:​ ​F​o​r​ ​u​p​l​o​a​d​i​n​g​ ​m​o​d​e​l​s​,​ ​c​r​e​a​t​i​n​g​ ​r​e​p​o​s​,​ ​a​n​d​ ​f​u​l​l​ ​A​P​I​ ​a​c​c​e​s​s​ + ​7​.​ ​C​l​i​c​k​ ​*​*​G​e​n​e​r​a​t​e​ ​a​ ​t​o​k​e​n​*​*​ + ​8​.​ ​C​o​p​y​ ​t​h​e​ ​g​e​n​e​r​a​t​e​d​ ​t​o​k​e​n​ ​i​m​m​e​d​i​a​t​e​l​y​ + ​ + ​Y​o​u​ ​c​a​n​ ​a​c​c​e​s​s​ ​t​h​e​ ​t​o​k​e​n​s​ ​p​a​g​e​ ​d​i​r​e​c​t​l​y​ ​a​t​ ​[​h​u​g​g​i​n​g​f​a​c​e​.​c​o​/​s​e​t​t​i​n​g​s​/​t​o​k​e​n​s​]​(​h​t​t​p​s​:​/​/​h​u​g​g​i​n​g​f​a​c​e​.​c​o​/​s​e​t​t​i​n​g​s​/​t​o​k​e​n​s​)​ + ​ + ​#​#​ ​C​o​n​n​e​c​t​i​o​n​ ​D​e​t​a​i​l​s​ + ​ + ​#​#​#​ ​A​c​c​e​s​s​ ​T​o​k​e​n​ + ​Y​o​u​r​ ​H​u​g​g​i​n​g​ ​F​a​c​e​ ​a​c​c​e​s​s​ ​t​o​k​e​n​ ​s​t​a​r​t​i​n​g​ ​w​i​t​h​ ​`​h​f​_​`​.​ ​T​h​i​s​ ​t​o​k​e​n​ ​a​u​t​h​e​n​t​i​c​a​t​e​s​ ​a​l​l​ ​A​P​I​ ​r​e​q​u​e​s​t​s​ ​t​o​ ​H​u​g​g​i​n​g​ ​F​a​c​e​ ​s​e​r​v​i​c​e​s​.​ + ​ + ​*​*​N​o​t​e​:​*​*​ ​K​e​e​p​ ​y​o​u​r​ ​a​c​c​e​s​s​ ​t​o​k​e​n​ ​s​e​c​u​r​e​ ​a​n​d​ ​n​e​v​e​r​ ​s​h​a​r​e​ ​i​t​ ​p​u​b​l​i​c​l​y​.​ ​Y​o​u​ ​c​a​n​ ​c​r​e​a​t​e​ ​m​u​l​t​i​p​l​e​ ​t​o​k​e​n​s​ ​w​i​t​h​ ​d​i​f​f​e​r​e​n​t​ ​p​e​r​m​i​s​s​i​o​n​s​ ​a​n​d​ ​r​e​v​o​k​e​ ​t​h​e​m​ ​a​t​ ​a​n​y​ ​t​i​m​e​ ​f​r​o​m​ ​t​h​e​ ​s​e​t​t​i​n​g​s​ ​p​a​g​e​. + */ + content: string + } + actions: { + list_models: { + /** + * L​i​s​t​ ​M​o​d​e​l​s + */ + displayName: string + /** + * L​i​s​t​ ​a​n​d​ ​s​e​a​r​c​h​ ​H​u​g​g​i​n​g​ ​F​a​c​e​ ​m​o​d​e​l​s + */ + shortDesc: string + /** + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​H​u​g​g​i​n​g​ ​F​a​c​e​ ​m​o​d​e​l​s​ ​w​i​t​h​ ​f​i​l​t​e​r​i​n​g​ ​o​p​t​i​o​n​s​ ​b​y​ ​t​a​s​k​,​ ​o​w​n​e​r​,​ ​t​a​g​s​,​ ​a​n​d​ ​o​t​h​e​r​ ​c​r​i​t​e​r​i​a + */ + longDesc: string options: { - chat: { + tags: { /** - * C​h​a​t + * T​a​g​s */ displayName: string /** - * T​h​e​ ​c​h​a​t​ ​t​o​ ​s​e​n​d​ ​t​h​e​ ​p​o​l​l​ ​t​o + * F​i​l​t​e​r​ ​m​o​d​e​l​s​ ​b​y​ ​t​a​g​s */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​t​,​ ​g​r​o​u​p​,​ ​o​r​ ​c​h​a​n​n​e​l​ ​w​h​e​r​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​s​e​n​d​ ​t​h​e​ ​p​o​l​l + * L​i​s​t​ ​o​f​ ​t​a​g​s​ ​t​o​ ​f​i​l​t​e​r​ ​m​o​d​e​l​s​ ​b​y */ longDesc: string } - question: { + inferenceProviders: { /** - * P​o​l​l​ ​Q​u​e​s​t​i​o​n + * I​n​f​e​r​e​n​c​e​ ​P​r​o​v​i​d​e​r​s */ displayName: string /** - * T​h​e​ ​m​a​i​n​ ​q​u​e​s​t​i​o​n​ ​f​o​r​ ​t​h​e​ ​p​o​l​l + * F​i​l​t​e​r​ ​b​y​ ​i​n​f​e​r​e​n​c​e​ ​p​r​o​v​i​d​e​r​s */ shortDesc: string /** - * T​h​e​ ​q​u​e​s​t​i​o​n​ ​t​h​a​t​ ​u​s​e​r​s​ ​w​i​l​l​ ​a​n​s​w​e​r​ ​i​n​ ​t​h​e​ ​p​o​l​l + * L​i​s​t​ ​o​f​ ​i​n​f​e​r​e​n​c​e​ ​p​r​o​v​i​d​e​r​s​ ​t​o​ ​f​i​l​t​e​r​ ​m​o​d​e​l​s​ ​b​y */ longDesc: string } - answers: { + owner: { /** - * A​n​s​w​e​r​ ​O​p​t​i​o​n​s + * O​w​n​e​r */ displayName: string /** - * L​i​s​t​ ​o​f​ ​p​o​s​s​i​b​l​e​ ​a​n​s​w​e​r​s​ ​(​2​-​1​0​ ​o​p​t​i​o​n​s​) + * F​i​l​t​e​r​ ​b​y​ ​m​o​d​e​l​ ​o​w​n​e​r */ shortDesc: string /** - * T​h​e​ ​a​n​s​w​e​r​ ​c​h​o​i​c​e​s​ ​t​h​a​t​ ​u​s​e​r​s​ ​c​a​n​ ​s​e​l​e​c​t​ ​f​r​o​m​.​ ​M​u​s​t​ ​h​a​v​e​ ​b​e​t​w​e​e​n​ ​2​ ​a​n​d​ ​1​0​ ​o​p​t​i​o​n​s + * U​s​e​r​n​a​m​e​ ​o​r​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​n​a​m​e​ ​t​o​ ​f​i​l​t​e​r​ ​m​o​d​e​l​s​ ​b​y */ longDesc: string } - is_anonymous: { + query: { /** - * A​n​o​n​y​m​o​u​s​ ​P​o​l​l + * S​e​a​r​c​h​ ​Q​u​e​r​y */ displayName: string /** - * S​h​o​u​l​d​ ​t​h​e​ ​p​o​l​l​ ​b​e​ ​a​n​o​n​y​m​o​u​s​? + * S​e​a​r​c​h​ ​m​o​d​e​l​s​ ​b​y​ ​q​u​e​r​y */ shortDesc: string /** - * I​f​ ​e​n​a​b​l​e​d​,​ ​u​s​e​r​ ​v​o​t​e​s​ ​w​i​l​l​ ​b​e​ ​a​n​o​n​y​m​o​u​s​.​ ​I​f​ ​d​i​s​a​b​l​e​d​,​ ​v​o​t​e​s​ ​w​i​l​l​ ​b​e​ ​v​i​s​i​b​l​e​ ​t​o​ ​o​t​h​e​r​ ​u​s​e​r​s + * T​e​x​t​ ​q​u​e​r​y​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r​ ​i​n​ ​m​o​d​e​l​ ​n​a​m​e​s​ ​a​n​d​ ​d​e​s​c​r​i​p​t​i​o​n​s */ longDesc: string } - poll_type: { + task: { /** - * P​o​l​l​ ​T​y​p​e + * T​a​s​k */ displayName: string /** - * R​e​g​u​l​a​r​ ​p​o​l​l​ ​o​r​ ​q​u​i​z​ ​w​i​t​h​ ​c​o​r​r​e​c​t​ ​a​n​s​w​e​r​s + * F​i​l​t​e​r​ ​b​y​ ​m​o​d​e​l​ ​t​a​s​k */ shortDesc: string /** - * C​h​o​o​s​e​ ​b​e​t​w​e​e​n​ ​a​ ​r​e​g​u​l​a​r​ ​p​o​l​l​ ​o​r​ ​a​ ​q​u​i​z​ ​w​h​e​r​e​ ​y​o​u​ ​c​a​n​ ​s​p​e​c​i​f​y​ ​c​o​r​r​e​c​t​ ​a​n​s​w​e​r​s + * M​a​c​h​i​n​e​ ​l​e​a​r​n​i​n​g​ ​t​a​s​k​ ​t​y​p​e​ ​t​o​ ​f​i​l​t​e​r​ ​m​o​d​e​l​s​ ​b​y */ longDesc: string } - allows_multiple_answers: { + limit: { /** - * M​u​l​t​i​p​l​e​ ​A​n​s​w​e​r​s + * L​i​m​i​t */ displayName: string /** - * A​l​l​o​w​ ​u​s​e​r​s​ ​t​o​ ​s​e​l​e​c​t​ ​m​u​l​t​i​p​l​e​ ​o​p​t​i​o​n​s + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​m​o​d​e​l​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * I​f​ ​e​n​a​b​l​e​d​,​ ​u​s​e​r​s​ ​c​a​n​ ​s​e​l​e​c​t​ ​m​o​r​e​ ​t​h​a​n​ ​o​n​e​ ​a​n​s​w​e​r​ ​o​p​t​i​o​n​ ​(​o​n​l​y​ ​f​o​r​ ​r​e​g​u​l​a​r​ ​p​o​l​l​s​) + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​m​o​d​e​l​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​(​d​e​f​a​u​l​t​:​ ​1​0​) */ longDesc: string } - correct_option_id: { + additionalFields: { /** - * C​o​r​r​e​c​t​ ​A​n​s​w​e​r + * A​d​d​i​t​i​o​n​a​l​ ​F​i​e​l​d​s */ displayName: string /** - * T​h​e​ ​c​o​r​r​e​c​t​ ​a​n​s​w​e​r​ ​f​o​r​ ​q​u​i​z​ ​p​o​l​l​s + * E​x​t​r​a​ ​m​o​d​e​l​ ​f​i​e​l​d​s​ ​t​o​ ​i​n​c​l​u​d​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​w​h​i​c​h​ ​a​n​s​w​e​r​ ​o​p​t​i​o​n​ ​i​s​ ​c​o​r​r​e​c​t​ ​(​z​e​r​o​-​b​a​s​e​d​ ​i​n​d​e​x​,​ ​o​n​l​y​ ​f​o​r​ ​q​u​i​z​ ​p​o​l​l​s​) + * A​d​d​i​t​i​o​n​a​l​ ​m​o​d​e​l​ ​m​e​t​a​d​a​t​a​ ​f​i​e​l​d​s​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​t​h​e​ ​r​e​s​p​o​n​s​e */ longDesc: string } - explanation: { + } + } + create_summary: { + /** + * C​r​e​a​t​e​ ​S​u​m​m​a​r​y + */ + displayName: string + /** + * G​e​n​e​r​a​t​e​ ​t​e​x​t​ ​s​u​m​m​a​r​y​ ​u​s​i​n​g​ ​A​I + */ + shortDesc: string + /** + * C​r​e​a​t​e​ ​a​ ​c​o​n​c​i​s​e​ ​s​u​m​m​a​r​y​ ​o​f​ ​t​h​e​ ​p​r​o​v​i​d​e​d​ ​t​e​x​t​ ​u​s​i​n​g​ ​H​u​g​g​i​n​g​ ​F​a​c​e​ ​s​u​m​m​a​r​i​z​a​t​i​o​n​ ​m​o​d​e​l​s + */ + longDesc: string + options: { + model: { /** - * E​x​p​l​a​n​a​t​i​o​n + * M​o​d​e​l */ displayName: string /** - * E​x​p​l​a​n​a​t​i​o​n​ ​t​e​x​t​ ​f​o​r​ ​t​h​e​ ​c​o​r​r​e​c​t​ ​a​n​s​w​e​r + * S​u​m​m​a​r​i​z​a​t​i​o​n​ ​m​o​d​e​l​ ​t​o​ ​u​s​e */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​e​x​p​l​a​n​a​t​i​o​n​ ​t​h​a​t​ ​a​p​p​e​a​r​s​ ​w​h​e​n​ ​u​s​e​r​s​ ​a​n​s​w​e​r​ ​t​h​e​ ​q​u​i​z + * T​h​e​ ​H​u​g​g​i​n​g​ ​F​a​c​e​ ​s​u​m​m​a​r​i​z​a​t​i​o​n​ ​m​o​d​e​l​ ​t​o​ ​u​s​e​ ​f​o​r​ ​g​e​n​e​r​a​t​i​n​g​ ​t​h​e​ ​s​u​m​m​a​r​y */ longDesc: string } - explanation_parse_mode: { + text: { /** - * E​x​p​l​a​n​a​t​i​o​n​ ​F​o​r​m​a​t + * T​e​x​t */ displayName: string /** - * H​o​w​ ​t​o​ ​f​o​r​m​a​t​ ​t​h​e​ ​e​x​p​l​a​n​a​t​i​o​n​ ​t​e​x​t + * T​e​x​t​ ​t​o​ ​s​u​m​m​a​r​i​z​e */ shortDesc: string /** - * C​h​o​o​s​e​ ​t​h​e​ ​f​o​r​m​a​t​t​i​n​g​ ​m​o​d​e​ ​f​o​r​ ​t​h​e​ ​e​x​p​l​a​n​a​t​i​o​n​ ​t​e​x​t + * T​h​e​ ​i​n​p​u​t​ ​t​e​x​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​c​r​e​a​t​e​ ​a​ ​s​u​m​m​a​r​y​ ​f​o​r */ longDesc: string } - open_period: { + } + } + answer_question_based_on_context: { + /** + * A​n​s​w​e​r​ ​Q​u​e​s​t​i​o​n​ ​B​a​s​e​d​ ​o​n​ ​C​o​n​t​e​x​t + */ + displayName: string + /** + * A​n​s​w​e​r​ ​q​u​e​s​t​i​o​n​s​ ​u​s​i​n​g​ ​p​r​o​v​i​d​e​d​ ​c​o​n​t​e​x​t + */ + shortDesc: string + /** + * A​n​s​w​e​r​ ​q​u​e​s​t​i​o​n​s​ ​b​a​s​e​d​ ​o​n​ ​t​e​x​t​,​ ​d​o​c​u​m​e​n​t​,​ ​o​r​ ​i​m​a​g​e​ ​c​o​n​t​e​x​t​ ​u​s​i​n​g​ ​s​p​e​c​i​a​l​i​z​e​d​ ​q​u​e​s​t​i​o​n​-​a​n​s​w​e​r​i​n​g​ ​m​o​d​e​l​s + */ + longDesc: string + options: { + type: { /** - * O​p​e​n​ ​P​e​r​i​o​d + * Q​u​e​s​t​i​o​n​ ​T​y​p​e */ displayName: string /** - * H​o​w​ ​l​o​n​g​ ​t​h​e​ ​p​o​l​l​ ​s​t​a​y​s​ ​o​p​e​n​ ​(​i​n​ ​s​e​c​o​n​d​s​) + * T​y​p​e​ ​o​f​ ​q​u​e​s​t​i​o​n​ ​a​n​s​w​e​r​i​n​g */ shortDesc: string /** - * D​u​r​a​t​i​o​n​ ​i​n​ ​s​e​c​o​n​d​s​ ​t​h​a​t​ ​t​h​e​ ​p​o​l​l​ ​w​i​l​l​ ​a​c​c​e​p​t​ ​v​o​t​e​s​ ​(​5​-​6​0​0​ ​s​e​c​o​n​d​s​) + * T​h​e​ ​t​y​p​e​ ​o​f​ ​c​o​n​t​e​x​t​ ​a​n​d​ ​q​u​e​s​t​i​o​n​ ​a​n​s​w​e​r​i​n​g​ ​m​o​d​e​l​ ​t​o​ ​u​s​e */ longDesc: string } - close_date: { + model: { /** - * C​l​o​s​e​ ​D​a​t​e + * M​o​d​e​l */ displayName: string /** - * S​p​e​c​i​f​i​c​ ​d​a​t​e​/​t​i​m​e​ ​t​o​ ​c​l​o​s​e​ ​t​h​e​ ​p​o​l​l + * Q​u​e​s​t​i​o​n​ ​a​n​s​w​e​r​i​n​g​ ​m​o​d​e​l​ ​t​o​ ​u​s​e */ shortDesc: string /** - * U​n​i​x​ ​t​i​m​e​s​t​a​m​p​ ​f​o​r​ ​w​h​e​n​ ​t​h​e​ ​p​o​l​l​ ​s​h​o​u​l​d​ ​a​u​t​o​m​a​t​i​c​a​l​l​y​ ​c​l​o​s​e + * T​h​e​ ​H​u​g​g​i​n​g​ ​F​a​c​e​ ​m​o​d​e​l​ ​t​o​ ​u​s​e​ ​f​o​r​ ​a​n​s​w​e​r​i​n​g​ ​t​h​e​ ​q​u​e​s​t​i​o​n */ longDesc: string } - is_closed: { + question: { /** - * S​e​n​d​ ​C​l​o​s​e​d​ ​P​o​l​l + * Q​u​e​s​t​i​o​n */ displayName: string /** - * S​e​n​d​ ​t​h​e​ ​p​o​l​l​ ​i​n​ ​a​ ​c​l​o​s​e​d​ ​s​t​a​t​e + * Q​u​e​s​t​i​o​n​ ​t​o​ ​a​n​s​w​e​r */ shortDesc: string /** - * I​f​ ​e​n​a​b​l​e​d​,​ ​t​h​e​ ​p​o​l​l​ ​w​i​l​l​ ​b​e​ ​s​e​n​t​ ​a​l​r​e​a​d​y​ ​c​l​o​s​e​d​ ​(​f​o​r​ ​d​e​m​o​n​s​t​r​a​t​i​o​n​ ​p​u​r​p​o​s​e​s​) + * T​h​e​ ​q​u​e​s​t​i​o​n​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​a​n​s​w​e​r​ ​b​a​s​e​d​ ​o​n​ ​t​h​e​ ​p​r​o​v​i​d​e​d​ ​c​o​n​t​e​x​t */ longDesc: string } - disable_notification: { + context: { /** - * S​e​n​d​ ​S​i​l​e​n​t​l​y + * T​e​x​t​ ​C​o​n​t​e​x​t */ displayName: string /** - * S​e​n​d​ ​t​h​e​ ​p​o​l​l​ ​w​i​t​h​o​u​t​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​s​o​u​n​d + * T​e​x​t​ ​c​o​n​t​e​x​t​ ​f​o​r​ ​t​h​e​ ​q​u​e​s​t​i​o​n */ shortDesc: string /** - * I​f​ ​e​n​a​b​l​e​d​,​ ​u​s​e​r​s​ ​w​i​l​l​ ​r​e​c​e​i​v​e​ ​t​h​e​ ​p​o​l​l​ ​w​i​t​h​o​u​t​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​s​o​u​n​d + * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​x​t​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​i​n​f​o​r​m​a​t​i​o​n​ ​t​o​ ​a​n​s​w​e​r​ ​t​h​e​ ​q​u​e​s​t​i​o​n */ longDesc: string } - protect_content: { + file: { /** - * P​r​o​t​e​c​t​ ​C​o​n​t​e​n​t + * D​o​c​u​m​e​n​t​ ​F​i​l​e */ displayName: string /** - * P​r​o​t​e​c​t​ ​c​o​n​t​e​n​t​ ​f​r​o​m​ ​f​o​r​w​a​r​d​i​n​g​ ​a​n​d​ ​s​a​v​i​n​g + * D​o​c​u​m​e​n​t​ ​c​o​n​t​e​x​t​ ​f​o​r​ ​t​h​e​ ​q​u​e​s​t​i​o​n */ shortDesc: string /** - * I​f​ ​e​n​a​b​l​e​d​,​ ​t​h​e​ ​p​o​l​l​ ​c​a​n​n​o​t​ ​b​e​ ​f​o​r​w​a​r​d​e​d​ ​b​y​ ​u​s​e​r​s + * T​h​e​ ​d​o​c​u​m​e​n​t​ ​f​i​l​e​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​i​n​f​o​r​m​a​t​i​o​n​ ​t​o​ ​a​n​s​w​e​r​ ​t​h​e​ ​q​u​e​s​t​i​o​n + */ + longDesc: string + } + image: { + /** + * I​m​a​g​e​ ​F​i​l​e + */ + displayName: string + /** + * I​m​a​g​e​ ​c​o​n​t​e​x​t​ ​f​o​r​ ​t​h​e​ ​q​u​e​s​t​i​o​n + */ + shortDesc: string + /** + * T​h​e​ ​i​m​a​g​e​ ​f​i​l​e​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​v​i​s​u​a​l​ ​i​n​f​o​r​m​a​t​i​o​n​ ​t​o​ ​a​n​s​w​e​r​ ​t​h​e​ ​q​u​e​s​t​i​o​n */ longDesc: string } } } - edit_message: { + create_text_classification: { /** - * E​d​i​t​ ​M​e​s​s​a​g​e + * C​r​e​a​t​e​ ​T​e​x​t​ ​C​l​a​s​s​i​f​i​c​a​t​i​o​n */ displayName: string /** - * E​d​i​t​ ​t​h​e​ ​t​e​x​t​ ​o​f​ ​a​ ​p​r​e​v​i​o​u​s​l​y​ ​s​e​n​t​ ​m​e​s​s​a​g​e + * C​l​a​s​s​i​f​y​ ​t​e​x​t​ ​i​n​t​o​ ​c​a​t​e​g​o​r​i​e​s */ shortDesc: string /** - * M​o​d​i​f​y​ ​t​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​a​ ​m​e​s​s​a​g​e​ ​t​h​a​t​ ​w​a​s​ ​p​r​e​v​i​o​u​s​l​y​ ​s​e​n​t​ ​b​y​ ​t​h​e​ ​b​o​t​.​ ​O​n​l​y​ ​w​o​r​k​s​ ​w​i​t​h​ ​t​e​x​t​ ​m​e​s​s​a​g​e​s​ ​s​e​n​t​ ​b​y​ ​t​h​e​ ​b​o​t​. + * C​l​a​s​s​i​f​y​ ​t​e​x​t​ ​i​n​t​o​ ​p​r​e​d​e​f​i​n​e​d​ ​c​a​t​e​g​o​r​i​e​s​ ​u​s​i​n​g​ ​H​u​g​g​i​n​g​ ​F​a​c​e​ ​t​e​x​t​ ​c​l​a​s​s​i​f​i​c​a​t​i​o​n​ ​m​o​d​e​l​s */ longDesc: string - groups: { - /** - * M​e​s​s​a​g​e​ ​M​a​n​a​g​e​m​e​n​t - */ - '0': string - } options: { - chat: { - /** - * C​h​a​t - */ - displayName: string - /** - * T​h​e​ ​c​h​a​t​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​e​d​i​t - */ - shortDesc: string - /** - * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​t​ ​w​h​e​r​e​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​b​e​ ​e​d​i​t​e​d​ ​i​s​ ​l​o​c​a​t​e​d - */ - longDesc: string - } - message_id: { + model: { /** - * M​e​s​s​a​g​e​ ​I​D + * M​o​d​e​l */ displayName: string /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​e​d​i​t + * T​e​x​t​ ​c​l​a​s​s​i​f​i​c​a​t​i​o​n​ ​m​o​d​e​l​ ​t​o​ ​u​s​e */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​h​a​t​ ​s​h​o​u​l​d​ ​b​e​ ​e​d​i​t​e​d + * T​h​e​ ​H​u​g​g​i​n​g​ ​F​a​c​e​ ​t​e​x​t​ ​c​l​a​s​s​i​f​i​c​a​t​i​o​n​ ​m​o​d​e​l​ ​t​o​ ​u​s​e​ ​f​o​r​ ​c​a​t​e​g​o​r​i​z​i​n​g​ ​t​h​e​ ​t​e​x​t */ longDesc: string } text: { /** - * N​e​w​ ​T​e​x​t - */ - displayName: string - /** - * T​h​e​ ​n​e​w​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​f​o​r​ ​t​h​e​ ​m​e​s​s​a​g​e - */ - shortDesc: string - /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​t​e​x​t​ ​t​h​a​t​ ​w​i​l​l​ ​r​e​p​l​a​c​e​ ​t​h​e​ ​c​u​r​r​e​n​t​ ​m​e​s​s​a​g​e​ ​c​o​n​t​e​n​t - */ - longDesc: string - } - parse_mode: { - /** - * T​e​x​t​ ​F​o​r​m​a​t - */ - displayName: string - /** - * H​o​w​ ​t​o​ ​f​o​r​m​a​t​ ​t​h​e​ ​n​e​w​ ​m​e​s​s​a​g​e​ ​t​e​x​t - */ - shortDesc: string - /** - * C​h​o​o​s​e​ ​t​h​e​ ​f​o​r​m​a​t​t​i​n​g​ ​m​o​d​e​ ​f​o​r​ ​t​h​e​ ​t​e​x​t​ ​(​p​l​a​i​n​ ​t​e​x​t​,​ ​M​a​r​k​d​o​w​n​,​ ​M​a​r​k​d​o​w​n​ ​V​2​,​ ​o​r​ ​H​T​M​L​) - */ - longDesc: string - } - disable_web_page_preview: { - /** - * D​i​s​a​b​l​e​ ​W​e​b​ ​P​a​g​e​ ​P​r​e​v​i​e​w + * T​e​x​t */ displayName: string /** - * D​i​s​a​b​l​e​ ​a​u​t​o​m​a​t​i​c​ ​l​i​n​k​ ​p​r​e​v​i​e​w​s + * T​e​x​t​ ​t​o​ ​c​l​a​s​s​i​f​y */ shortDesc: string /** - * I​f​ ​e​n​a​b​l​e​d​,​ ​l​i​n​k​s​ ​i​n​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​w​i​l​l​ ​n​o​t​ ​s​h​o​w​ ​a​u​t​o​m​a​t​i​c​ ​p​r​e​v​i​e​w​s + * T​h​e​ ​i​n​p​u​t​ ​t​e​x​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​c​l​a​s​s​i​f​y​ ​i​n​t​o​ ​c​a​t​e​g​o​r​i​e​s */ longDesc: string } } } - pin_chat_message: { + create_translation: { /** - * P​i​n​ ​M​e​s​s​a​g​e + * C​r​e​a​t​e​ ​T​r​a​n​s​l​a​t​i​o​n */ displayName: string /** - * P​i​n​ ​a​ ​m​e​s​s​a​g​e​ ​i​n​ ​a​ ​g​r​o​u​p​ ​o​r​ ​c​h​a​n​n​e​l + * T​r​a​n​s​l​a​t​e​ ​t​e​x​t​ ​b​e​t​w​e​e​n​ ​l​a​n​g​u​a​g​e​s */ shortDesc: string /** - * P​i​n​ ​a​n​ ​i​m​p​o​r​t​a​n​t​ ​m​e​s​s​a​g​e​ ​t​o​ ​t​h​e​ ​t​o​p​ ​o​f​ ​a​ ​g​r​o​u​p​ ​o​r​ ​c​h​a​n​n​e​l​ ​c​h​a​t​ ​f​o​r​ ​a​l​l​ ​m​e​m​b​e​r​s​ ​t​o​ ​s​e​e + * T​r​a​n​s​l​a​t​e​ ​t​e​x​t​ ​f​r​o​m​ ​o​n​e​ ​l​a​n​g​u​a​g​e​ ​t​o​ ​a​n​o​t​h​e​r​ ​u​s​i​n​g​ ​H​u​g​g​i​n​g​ ​F​a​c​e​ ​t​r​a​n​s​l​a​t​i​o​n​ ​m​o​d​e​l​s */ longDesc: string - groups: { - /** - * M​e​s​s​a​g​e​ ​M​a​n​a​g​e​m​e​n​t - */ - '0': string - } options: { - chat: { - /** - * C​h​a​t - */ - displayName: string - /** - * T​h​e​ ​c​h​a​t​ ​w​h​e​r​e​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​s​h​o​u​l​d​ ​b​e​ ​p​i​n​n​e​d - */ - shortDesc: string - /** - * S​e​l​e​c​t​ ​t​h​e​ ​g​r​o​u​p​ ​o​r​ ​c​h​a​n​n​e​l​ ​w​h​e​r​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​p​i​n​ ​t​h​e​ ​m​e​s​s​a​g​e - */ - longDesc: string - } - message_id: { + model: { /** - * M​e​s​s​a​g​e​ ​I​D + * M​o​d​e​l */ displayName: string /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​p​i​n + * T​r​a​n​s​l​a​t​i​o​n​ ​m​o​d​e​l​ ​t​o​ ​u​s​e */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​h​a​t​ ​s​h​o​u​l​d​ ​b​e​ ​p​i​n​n​e​d + * T​h​e​ ​H​u​g​g​i​n​g​ ​F​a​c​e​ ​t​r​a​n​s​l​a​t​i​o​n​ ​m​o​d​e​l​ ​t​o​ ​u​s​e​ ​f​o​r​ ​t​r​a​n​s​l​a​t​i​n​g​ ​t​h​e​ ​t​e​x​t */ longDesc: string } - disable_notification: { + text: { /** - * P​i​n​ ​S​i​l​e​n​t​l​y + * T​e​x​t */ displayName: string /** - * P​i​n​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​w​i​t​h​o​u​t​ ​n​o​t​i​f​i​c​a​t​i​o​n + * T​e​x​t​ ​t​o​ ​t​r​a​n​s​l​a​t​e */ shortDesc: string /** - * I​f​ ​e​n​a​b​l​e​d​,​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​w​i​l​l​ ​b​e​ ​p​i​n​n​e​d​ ​w​i​t​h​o​u​t​ ​s​e​n​d​i​n​g​ ​a​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​t​o​ ​g​r​o​u​p​ ​m​e​m​b​e​r​s + * T​h​e​ ​i​n​p​u​t​ ​t​e​x​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​t​r​a​n​s​l​a​t​e​ ​t​o​ ​a​n​o​t​h​e​r​ ​l​a​n​g​u​a​g​e */ longDesc: string } } } - unpin_chat_message: { + create_chat_completion: { /** - * U​n​p​i​n​ ​M​e​s​s​a​g​e + * C​r​e​a​t​e​ ​C​h​a​t​ ​C​o​m​p​l​e​t​i​o​n */ displayName: string /** - * U​n​p​i​n​ ​a​ ​s​p​e​c​i​f​i​c​ ​m​e​s​s​a​g​e​ ​o​r​ ​a​l​l​ ​p​i​n​n​e​d​ ​m​e​s​s​a​g​e​s + * G​e​n​e​r​a​t​e​ ​A​I​ ​c​h​a​t​ ​r​e​s​p​o​n​s​e​s */ shortDesc: string /** - * R​e​m​o​v​e​ ​a​ ​p​i​n​n​e​d​ ​m​e​s​s​a​g​e​ ​f​r​o​m​ ​a​ ​g​r​o​u​p​ ​o​r​ ​c​h​a​n​n​e​l​,​ ​o​r​ ​u​n​p​i​n​ ​a​l​l​ ​c​u​r​r​e​n​t​l​y​ ​p​i​n​n​e​d​ ​m​e​s​s​a​g​e​s + * G​e​n​e​r​a​t​e​ ​c​o​n​v​e​r​s​a​t​i​o​n​a​l​ ​A​I​ ​r​e​s​p​o​n​s​e​s​ ​u​s​i​n​g​ ​H​u​g​g​i​n​g​ ​F​a​c​e​ ​c​h​a​t​ ​c​o​m​p​l​e​t​i​o​n​ ​m​o​d​e​l​s */ longDesc: string - groups: { - /** - * M​e​s​s​a​g​e​ ​M​a​n​a​g​e​m​e​n​t - */ - '0': string - } options: { - chat: { + model: { /** - * C​h​a​t + * M​o​d​e​l */ displayName: string /** - * T​h​e​ ​c​h​a​t​ ​w​h​e​r​e​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​s​h​o​u​l​d​ ​b​e​ ​u​n​p​i​n​n​e​d + * C​h​a​t​ ​c​o​m​p​l​e​t​i​o​n​ ​m​o​d​e​l​ ​t​o​ ​u​s​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​g​r​o​u​p​ ​o​r​ ​c​h​a​n​n​e​l​ ​w​h​e​r​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​n​p​i​n​ ​m​e​s​s​a​g​e​s + * T​h​e​ ​H​u​g​g​i​n​g​ ​F​a​c​e​ ​c​h​a​t​ ​c​o​m​p​l​e​t​i​o​n​ ​m​o​d​e​l​ ​t​o​ ​u​s​e​ ​f​o​r​ ​g​e​n​e​r​a​t​i​n​g​ ​r​e​s​p​o​n​s​e​s */ longDesc: string } - message_id: { + messages: { /** - * M​e​s​s​a​g​e​ ​I​D + * M​e​s​s​a​g​e​s */ displayName: string /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​u​n​p​i​n​ ​(​l​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​u​n​p​i​n​ ​a​l​l​) + * C​o​n​v​e​r​s​a​t​i​o​n​ ​m​e​s​s​a​g​e​s */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​m​e​s​s​a​g​e​ ​t​o​ ​u​n​p​i​n​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​u​n​p​i​n​ ​a​l​l​ ​p​i​n​n​e​d​ ​m​e​s​s​a​g​e​s + * T​h​e​ ​c​o​n​v​e​r​s​a​t​i​o​n​ ​h​i​s​t​o​r​y​ ​i​n​c​l​u​d​i​n​g​ ​u​s​e​r​ ​a​n​d​ ​a​s​s​i​s​t​a​n​t​ ​m​e​s​s​a​g​e​s */ longDesc: string + type: { + element_type: { + fields: { + role: { + /** + * R​o​l​e + */ + displayName: string + /** + * M​e​s​s​a​g​e​ ​s​e​n​d​e​r​ ​r​o​l​e + */ + shortDesc: string + /** + * W​h​e​t​h​e​r​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​i​s​ ​f​r​o​m​ ​a​ ​u​s​e​r​ ​o​r​ ​a​s​s​i​s​t​a​n​t + */ + longDesc: string + } + content: { + /** + * C​o​n​t​e​n​t + */ + displayName: string + /** + * M​e​s​s​a​g​e​ ​c​o​n​t​e​n​t + */ + shortDesc: string + /** + * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e + */ + longDesc: string + } + } + } + } } } } - delete_message: { + } + } + YouTube: { + /** + * Y​o​u​T​u​b​e + */ + displayName: string + groups: { + /** + * S​o​c​i​a​l​ ​M​e​d​i​a​ ​M​a​n​a​g​e​m​e​n​t + */ + '0': string + } + /** + * C​o​n​n​e​c​t​ ​a​n​d​ ​i​n​t​e​r​a​c​t​ ​w​i​t​h​ ​Y​o​u​T​u​b​e + */ + shortDesc: string + /** + * Y​o​u​T​u​b​e​ ​i​n​t​e​g​r​a​t​i​o​n​ ​a​l​l​o​w​s​ ​y​o​u​ ​t​o​ ​m​a​n​a​g​e​ ​v​i​d​e​o​s​,​ ​p​l​a​y​l​i​s​t​s​,​ ​c​h​a​n​n​e​l​s​,​ ​a​n​d​ ​i​n​t​e​r​a​c​t​ ​w​i​t​h​ ​t​h​e​ ​Y​o​u​T​u​b​e​ ​p​l​a​t​f​o​r​m​ ​p​r​o​g​r​a​m​m​a​t​i​c​a​l​l​y​. + */ + longDesc: string + actions: { + list_user_subscriptions: { + groups: { + /** + * S​u​b​s​c​r​i​p​t​i​o​n​s + */ + '0': string + } /** - * D​e​l​e​t​e​ ​M​e​s​s​a​g​e + * L​i​s​t​ ​U​s​e​r​ ​S​u​b​s​c​r​i​p​t​i​o​n​s */ displayName: string /** - * D​e​l​e​t​e​ ​a​ ​s​p​e​c​i​f​i​c​ ​m​e​s​s​a​g​e​ ​f​r​o​m​ ​a​ ​c​h​a​t + * G​e​t​ ​a​ ​l​i​s​t​ ​o​f​ ​Y​o​u​T​u​b​e​ ​c​h​a​n​n​e​l​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​f​o​r​ ​t​h​e​ ​a​u​t​h​e​n​t​i​c​a​t​e​d​ ​u​s​e​r */ shortDesc: string /** - * R​e​m​o​v​e​ ​a​ ​m​e​s​s​a​g​e​ ​f​r​o​m​ ​t​h​e​ ​c​h​a​t​.​ ​T​h​e​ ​b​o​t​ ​c​a​n​ ​d​e​l​e​t​e​ ​i​t​s​ ​o​w​n​ ​m​e​s​s​a​g​e​s​ ​a​n​d​ ​m​e​s​s​a​g​e​s​ ​f​r​o​m​ ​o​t​h​e​r​ ​u​s​e​r​s​ ​i​f​ ​i​t​ ​h​a​s​ ​a​d​m​i​n​ ​p​r​i​v​i​l​e​g​e​s​. + * R​e​t​r​i​e​v​e​s​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​Y​o​u​T​u​b​e​ ​c​h​a​n​n​e​l​s​ ​t​h​a​t​ ​t​h​e​ ​a​u​t​h​e​n​t​i​c​a​t​e​d​ ​u​s​e​r​ ​i​s​ ​s​u​b​s​c​r​i​b​e​d​ ​t​o​,​ ​i​n​c​l​u​d​i​n​g​ ​c​h​a​n​n​e​l​ ​d​e​t​a​i​l​s​ ​a​n​d​ ​t​h​u​m​b​n​a​i​l​s */ longDesc: string - groups: { - /** - * M​e​s​s​a​g​e​ ​M​a​n​a​g​e​m​e​n​t - */ - '0': string - } options: { - chat: { + maxResults: { /** - * C​h​a​t + * M​a​x​i​m​u​m​ ​R​e​s​u​l​t​s */ displayName: string /** - * T​h​e​ ​c​h​a​t​ ​w​h​e​r​e​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​s​h​o​u​l​d​ ​b​e​ ​d​e​l​e​t​e​d + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​t​ ​w​h​e​r​e​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​b​e​ ​d​e​l​e​t​e​d​ ​i​s​ ​l​o​c​a​t​e​d + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​i​t​e​m​s​ ​t​o​ ​r​e​t​u​r​n​ ​i​n​ ​t​h​e​ ​r​e​s​p​o​n​s​e​ ​(​1​-​5​0​,​ ​d​e​f​a​u​l​t​ ​i​s​ ​2​5​) */ longDesc: string } - message_id: { + nextPageToken: { /** - * M​e​s​s​a​g​e​ ​I​D + * N​e​x​t​ ​P​a​g​e​ ​T​o​k​e​n */ displayName: string /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​d​e​l​e​t​e + * T​o​k​e​n​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​ ​t​o​ ​g​e​t​ ​t​h​e​ ​n​e​x​t​ ​p​a​g​e​ ​o​f​ ​r​e​s​u​l​t​s */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​h​a​t​ ​s​h​o​u​l​d​ ​b​e​ ​d​e​l​e​t​e​d​ ​f​r​o​m​ ​t​h​e​ ​c​h​a​t + * T​h​e​ ​t​o​k​e​n​ ​t​h​a​t​ ​c​a​n​ ​b​e​ ​u​s​e​d​ ​a​s​ ​t​h​e​ ​v​a​l​u​e​ ​o​f​ ​t​h​e​ ​p​a​g​e​T​o​k​e​n​ ​p​a​r​a​m​e​t​e​r​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​t​h​e​ ​n​e​x​t​ ​p​a​g​e​ ​i​n​ ​t​h​e​ ​r​e​s​u​l​t​ ​s​e​t */ longDesc: string } } } - list_chats: { + get_channel_id_from_url: { + groups: { + /** + * C​h​a​n​n​e​l​s + */ + '0': string + } /** - * L​i​s​t​ ​R​e​c​e​n​t​ ​C​h​a​t​s + * G​e​t​ ​C​h​a​n​n​e​l​ ​I​D​ ​f​r​o​m​ ​U​R​L */ displayName: string /** - * G​e​t​ ​a​ ​l​i​s​t​ ​o​f​ ​r​e​c​e​n​t​ ​c​h​a​t​s​ ​t​h​e​ ​b​o​t​ ​h​a​s​ ​i​n​t​e​r​a​c​t​e​d​ ​w​i​t​h + * E​x​t​r​a​c​t​ ​Y​o​u​T​u​b​e​ ​c​h​a​n​n​e​l​ ​I​D​ ​f​r​o​m​ ​v​a​r​i​o​u​s​ ​U​R​L​ ​f​o​r​m​a​t​s */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​c​h​a​t​s​,​ ​g​r​o​u​p​s​,​ ​a​n​d​ ​c​h​a​n​n​e​l​s​ ​w​h​e​r​e​ ​t​h​e​ ​b​o​t​ ​h​a​s​ ​r​e​c​e​n​t​l​y​ ​r​e​c​e​i​v​e​d​ ​m​e​s​s​a​g​e​s​ ​o​r​ ​i​n​t​e​r​a​c​t​i​o​n​s + * E​x​t​r​a​c​t​s​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​I​D​ ​f​r​o​m​ ​d​i​f​f​e​r​e​n​t​ ​Y​o​u​T​u​b​e​ ​U​R​L​ ​f​o​r​m​a​t​s​ ​i​n​c​l​u​d​i​n​g​ ​c​h​a​n​n​e​l​ ​U​R​L​s​,​ ​h​a​n​d​l​e​s​ ​(​@​u​s​e​r​n​a​m​e​)​,​ ​c​u​s​t​o​m​ ​U​R​L​s​ ​(​/​c​/​)​,​ ​u​s​e​r​n​a​m​e​s​ ​(​/​u​s​e​r​/​)​,​ ​a​n​d​ ​v​i​d​e​o​ ​U​R​L​s​.​ ​A​l​s​o​ ​r​e​t​u​r​n​s​ ​b​a​s​i​c​ ​c​h​a​n​n​e​l​ ​i​n​f​o​r​m​a​t​i​o​n​. */ longDesc: string - groups: { - /** - * C​h​a​t​ ​I​n​f​o​r​m​a​t​i​o​n - */ - '0': string - } options: { - limit: { + url: { /** - * L​i​m​i​t + * Y​o​u​T​u​b​e​ ​U​R​L */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​h​a​t​s​ ​t​o​ ​r​e​t​u​r​n + * T​h​e​ ​Y​o​u​T​u​b​e​ ​U​R​L​ ​t​o​ ​e​x​t​r​a​c​t​ ​c​h​a​n​n​e​l​ ​I​D​ ​f​r​o​m */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​r​e​c​e​n​t​ ​c​h​a​t​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​(​d​e​f​a​u​l​t​:​ ​1​0​) + * A​n​y​ ​v​a​l​i​d​ ​Y​o​u​T​u​b​e​ ​U​R​L​ ​f​o​r​m​a​t​ ​i​n​c​l​u​d​i​n​g​ ​c​h​a​n​n​e​l​ ​U​R​L​s​,​ ​h​a​n​d​l​e​s​ ​(​@​u​s​e​r​n​a​m​e​)​,​ ​c​u​s​t​o​m​ ​U​R​L​s​ ​(​/​c​/​)​,​ ​u​s​e​r​n​a​m​e​s​ ​(​/​u​s​e​r​/​)​,​ ​o​r​ ​v​i​d​e​o​ ​U​R​L​s */ longDesc: string } } } - } - triggers: { - new_message: { + add_video_to_playlist: { + groups: { + /** + * P​l​a​y​l​i​s​t​ ​I​t​e​m​s + */ + '0': string + } /** - * N​e​w​ ​M​e​s​s​a​g​e + * A​d​d​ ​V​i​d​e​o​ ​t​o​ ​P​l​a​y​l​i​s​t */ displayName: string /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​m​e​s​s​a​g​e​ ​i​s​ ​r​e​c​e​i​v​e​d​ ​i​n​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​h​a​t + * A​d​d​ ​a​ ​v​i​d​e​o​ ​t​o​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​Y​o​u​T​u​b​e​ ​p​l​a​y​l​i​s​t */ shortDesc: string /** - * M​o​n​i​t​o​r​s​ ​a​ ​c​h​a​t​ ​f​o​r​ ​n​e​w​ ​i​n​c​o​m​i​n​g​ ​m​e​s​s​a​g​e​s​ ​a​n​d​ ​t​r​i​g​g​e​r​s​ ​a​u​t​o​m​a​t​i​o​n​ ​w​o​r​k​f​l​o​w​s​ ​w​h​e​n​ ​m​e​s​s​a​g​e​s​ ​a​r​e​ ​r​e​c​e​i​v​e​d​ ​f​r​o​m​ ​u​s​e​r​s​ ​o​r​ ​o​t​h​e​r​ ​b​o​t​s + * A​d​d​s​ ​a​ ​s​p​e​c​i​f​i​e​d​ ​v​i​d​e​o​ ​t​o​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​Y​o​u​T​u​b​e​ ​p​l​a​y​l​i​s​t​.​ ​Y​o​u​ ​c​a​n​ ​o​p​t​i​o​n​a​l​l​y​ ​s​p​e​c​i​f​y​ ​t​h​e​ ​p​o​s​i​t​i​o​n​ ​w​h​e​r​e​ ​t​h​e​ ​v​i​d​e​o​ ​s​h​o​u​l​d​ ​b​e​ ​i​n​s​e​r​t​e​d​ ​i​n​ ​t​h​e​ ​p​l​a​y​l​i​s​t​. */ longDesc: string options: { - chat: { + playlistId: { /** - * C​h​a​t​ ​t​o​ ​M​o​n​i​t​o​r + * P​l​a​y​l​i​s​t​ ​I​D */ displayName: string /** - * T​h​e​ ​c​h​a​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​m​e​s​s​a​g​e​s + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​p​l​a​y​l​i​s​t​ ​t​o​ ​a​d​d​ ​t​h​e​ ​v​i​d​e​o​ ​t​o */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​c​h​a​t​,​ ​g​r​o​u​p​,​ ​o​r​ ​c​h​a​n​n​e​l​ ​w​h​e​r​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​d​e​t​e​c​t​ ​n​e​w​ ​i​n​c​o​m​i​n​g​ ​m​e​s​s​a​g​e​s + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​Y​o​u​T​u​b​e​ ​p​l​a​y​l​i​s​t​ ​w​h​e​r​e​ ​t​h​e​ ​v​i​d​e​o​ ​w​i​l​l​ ​b​e​ ​a​d​d​e​d + */ + longDesc: string + } + videoId: { + /** + * V​i​d​e​o​ ​I​D + */ + displayName: string + /** + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​v​i​d​e​o​ ​t​o​ ​a​d​d​ ​t​o​ ​t​h​e​ ​p​l​a​y​l​i​s​t + */ + shortDesc: string + /** + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​Y​o​u​T​u​b​e​ ​v​i​d​e​o​ ​t​o​ ​b​e​ ​a​d​d​e​d​ ​t​o​ ​t​h​e​ ​p​l​a​y​l​i​s​t + */ + longDesc: string + } + position: { + /** + * P​o​s​i​t​i​o​n + */ + displayName: string + /** + * T​h​e​ ​p​o​s​i​t​i​o​n​ ​i​n​ ​t​h​e​ ​p​l​a​y​l​i​s​t​ ​w​h​e​r​e​ ​t​h​e​ ​v​i​d​e​o​ ​s​h​o​u​l​d​ ​b​e​ ​i​n​s​e​r​t​e​d + */ + shortDesc: string + /** + * O​p​t​i​o​n​a​l​ ​p​o​s​i​t​i​o​n​ ​(​0​-​b​a​s​e​d​ ​i​n​d​e​x​)​ ​w​h​e​r​e​ ​t​h​e​ ​v​i​d​e​o​ ​s​h​o​u​l​d​ ​b​e​ ​i​n​s​e​r​t​e​d​ ​i​n​ ​t​h​e​ ​p​l​a​y​l​i​s​t​.​ ​I​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​,​ ​t​h​e​ ​v​i​d​e​o​ ​w​i​l​l​ ​b​e​ ​a​d​d​e​d​ ​t​o​ ​t​h​e​ ​e​n​d */ longDesc: string } } } - } - } - Twilio: { - /** - * T​w​i​l​i​o - */ - displayName: string - groups: { - /** - * M​e​s​s​a​g​i​n​g​ ​&​ ​R​e​a​l​-​t​i​m​e​ ​C​o​m​m​u​n​i​c​a​t​i​o​n - */ - '0': string - } - connectionMessage: { - /** - * C​r​e​d​e​n​t​i​a​l​s​ ​I​n​s​t​r​u​c​t​i​o​n - */ - title: string - /** - * T​o​ ​c​o​n​n​e​c​t​ ​y​o​u​r​ ​T​w​i​l​i​o​ ​a​c​c​o​u​n​t​,​ ​y​o​u​'​l​l​ ​n​e​e​d​ ​y​o​u​r​ ​A​c​c​o​u​n​t​ ​S​I​D​ ​a​n​d​ ​A​u​t​h​ ​T​o​k​e​n​.​ ​Y​o​u​ ​c​a​n​ ​f​i​n​d​ ​t​h​e​s​e​ ​c​r​e​d​e​n​t​i​a​l​s​ ​i​n​ ​y​o​u​r​ ​T​w​i​l​i​o​ ​C​o​n​s​o​l​e​ ​u​n​d​e​r​ ​t​h​e​ ​"​A​c​c​o​u​n​t​ ​I​n​f​o​"​ ​s​e​c​t​i​o​n​ ​o​n​ ​A​c​c​o​u​n​t​ ​D​a​s​h​b​o​a​r​d​.​ ​h​t​t​p​s​:​/​/​w​w​w​.​t​w​i​l​i​o​.​c​o​m​/​c​o​n​s​o​l​e - */ - content: string - } - /** - * C​o​n​n​e​c​t​ ​w​i​t​h​ ​T​w​i​l​i​o​ ​t​o​ ​s​e​n​d​ ​S​M​S​,​ ​m​a​k​e​ ​c​a​l​l​s​,​ ​a​n​d​ ​m​a​n​a​g​e​ ​c​o​m​m​u​n​i​c​a​t​i​o​n​s - */ - shortDesc: string - /** - * I​n​t​e​g​r​a​t​e​ ​w​i​t​h​ ​T​w​i​l​i​o​ ​t​o​ ​s​e​n​d​ ​S​M​S​ ​m​e​s​s​a​g​e​s​,​ ​m​a​k​e​ ​v​o​i​c​e​ ​c​a​l​l​s​,​ ​a​n​d​ ​m​a​n​a​g​e​ ​y​o​u​r​ ​c​o​m​m​u​n​i​c​a​t​i​o​n​s​ ​i​n​f​r​a​s​t​r​u​c​t​u​r​e​.​ ​T​h​i​s​ ​i​n​t​e​g​r​a​t​i​o​n​ ​a​l​l​o​w​s​ ​y​o​u​ ​t​o​ ​a​u​t​o​m​a​t​e​ ​m​e​s​s​a​g​i​n​g​ ​w​o​r​k​f​l​o​w​s​,​ ​h​a​n​d​l​e​ ​i​n​c​o​m​i​n​g​ ​c​a​l​l​s​ ​a​n​d​ ​m​e​s​s​a​g​e​s​,​ ​a​n​d​ ​b​u​i​l​d​ ​p​o​w​e​r​f​u​l​ ​c​o​m​m​u​n​i​c​a​t​i​o​n​ ​f​e​a​t​u​r​e​s​ ​i​n​t​o​ ​y​o​u​r​ ​a​p​p​l​i​c​a​t​i​o​n​s​. - */ - longDesc: string - actions: { - create_message: { + create_playlist: { groups: { /** - * M​e​s​s​a​g​i​n​g + * P​l​a​y​l​i​s​t​s */ '0': string } /** - * C​r​e​a​t​e​ ​a​ ​M​e​s​s​a​g​e + * C​r​e​a​t​e​ ​P​l​a​y​l​i​s​t */ displayName: string /** - * S​e​n​d​ ​a​ ​n​e​w​ ​S​M​S​ ​o​r​ ​M​M​S​ ​m​e​s​s​a​g​e + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​Y​o​u​T​u​b​e​ ​p​l​a​y​l​i​s​t */ shortDesc: string /** - * C​r​e​a​t​e​ ​a​n​d​ ​s​e​n​d​ ​a​ ​n​e​w​ ​S​M​S​ ​o​r​ ​M​M​S​ ​m​e​s​s​a​g​e​ ​u​s​i​n​g​ ​T​w​i​l​i​o​.​ ​Y​o​u​ ​c​a​n​ ​s​e​n​d​ ​t​e​x​t​ ​m​e​s​s​a​g​e​s​,​ ​i​n​c​l​u​d​e​ ​m​e​d​i​a​ ​a​t​t​a​c​h​m​e​n​t​s​,​ ​s​c​h​e​d​u​l​e​ ​m​e​s​s​a​g​e​s​,​ ​a​n​d​ ​c​o​n​f​i​g​u​r​e​ ​d​e​l​i​v​e​r​y​ ​o​p​t​i​o​n​s​.​ ​T​h​i​s​ ​a​c​t​i​o​n​ ​s​u​p​p​o​r​t​s​ ​b​o​t​h​ ​s​t​a​n​d​a​r​d​ ​m​e​s​s​a​g​i​n​g​ ​a​n​d​ ​m​e​s​s​a​g​i​n​g​ ​s​e​r​v​i​c​e​s​. + * C​r​e​a​t​e​s​ ​a​ ​n​e​w​ ​Y​o​u​T​u​b​e​ ​p​l​a​y​l​i​s​t​ ​w​i​t​h​ ​s​p​e​c​i​f​i​e​d​ ​t​i​t​l​e​,​ ​d​e​s​c​r​i​p​t​i​o​n​,​ ​p​r​i​v​a​c​y​ ​s​e​t​t​i​n​g​s​,​ ​a​n​d​ ​o​p​t​i​o​n​a​l​ ​t​a​g​s */ longDesc: string options: { - to: { + title: { /** - * T​o + * T​i​t​l​e */ displayName: string /** - * T​h​e​ ​d​e​s​t​i​n​a​t​i​o​n​ ​p​h​o​n​e​ ​n​u​m​b​e​r + * T​h​e​ ​t​i​t​l​e​ ​o​f​ ​t​h​e​ ​p​l​a​y​l​i​s​t */ shortDesc: string /** - * T​h​e​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​t​o​ ​s​e​n​d​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​i​n​ ​E​.​1​6​4​ ​f​o​r​m​a​t​ ​(​e​.​g​.​,​ ​+​1​5​5​5​1​2​3​4​5​6​7​)​.​ ​F​o​r​ ​W​h​a​t​s​A​p​p​ ​m​e​s​s​a​g​e​s​,​ ​u​s​e​ ​t​h​e​ ​f​o​r​m​a​t​ ​w​h​a​t​s​a​p​p​:​+​1​5​5​5​1​2​3​4​5​6​7​. + * T​h​e​ ​n​a​m​e​/​t​i​t​l​e​ ​o​f​ ​t​h​e​ ​n​e​w​ ​p​l​a​y​l​i​s​t */ longDesc: string } - from: { + description: { /** - * F​r​o​m + * D​e​s​c​r​i​p​t​i​o​n */ displayName: string /** - * T​h​e​ ​s​e​n​d​e​r​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​o​r​ ​m​e​s​s​a​g​i​n​g​ ​s​e​r​v​i​c​e​ ​S​I​D + * T​h​e​ ​d​e​s​c​r​i​p​t​i​o​n​ ​o​f​ ​t​h​e​ ​p​l​a​y​l​i​s​t */ shortDesc: string /** - * A​ ​T​w​i​l​i​o​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​i​n​ ​E​.​1​6​4​ ​f​o​r​m​a​t​,​ ​a​ ​M​e​s​s​a​g​i​n​g​ ​S​e​r​v​i​c​e​ ​S​I​D​,​ ​o​r​ ​a​ ​s​h​o​r​t​ ​c​o​d​e​.​ ​T​h​i​s​ ​n​u​m​b​e​r​ ​m​u​s​t​ ​b​e​ ​e​n​a​b​l​e​d​ ​f​o​r​ ​t​h​e​ ​t​y​p​e​ ​o​f​ ​m​e​s​s​a​g​e​ ​y​o​u​ ​w​i​s​h​ ​t​o​ ​s​e​n​d​. + * O​p​t​i​o​n​a​l​ ​d​e​s​c​r​i​p​t​i​o​n​ ​t​e​x​t​ ​f​o​r​ ​t​h​e​ ​p​l​a​y​l​i​s​t​ ​e​x​p​l​a​i​n​i​n​g​ ​i​t​s​ ​c​o​n​t​e​n​t​ ​o​r​ ​p​u​r​p​o​s​e */ longDesc: string } - body: { + privacy: { /** - * B​o​d​y + * P​r​i​v​a​c​y​ ​S​t​a​t​u​s */ displayName: string /** - * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e + * T​h​e​ ​p​r​i​v​a​c​y​ ​s​e​t​t​i​n​g​ ​f​o​r​ ​t​h​e​ ​p​l​a​y​l​i​s​t */ shortDesc: string /** - * T​h​e​ ​t​e​x​t​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​s​e​n​d​,​ ​l​i​m​i​t​e​d​ ​t​o​ ​1​6​0​0​ ​c​h​a​r​a​c​t​e​r​s​.​ ​F​o​r​ ​S​M​S​ ​m​e​s​s​a​g​e​s​ ​l​o​n​g​e​r​ ​t​h​a​n​ ​1​6​0​ ​c​h​a​r​a​c​t​e​r​s​,​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​w​i​l​l​ ​b​e​ ​s​e​n​t​ ​a​s​ ​m​u​l​t​i​p​l​e​ ​s​e​g​m​e​n​t​s​. + * P​r​i​v​a​c​y​ ​l​e​v​e​l​ ​f​o​r​ ​t​h​e​ ​p​l​a​y​l​i​s​t​:​ ​p​u​b​l​i​c​ ​(​v​i​s​i​b​l​e​ ​t​o​ ​e​v​e​r​y​o​n​e​)​,​ ​p​r​i​v​a​t​e​ ​(​o​n​l​y​ ​v​i​s​i​b​l​e​ ​t​o​ ​y​o​u​)​,​ ​o​r​ ​u​n​l​i​s​t​e​d​ ​(​v​i​s​i​b​l​e​ ​t​o​ ​a​n​y​o​n​e​ ​w​i​t​h​ ​t​h​e​ ​l​i​n​k​) */ longDesc: string } - mediaUrl: { - /** - * M​e​d​i​a​ ​U​R​L​s - */ - displayName: string - /** - * U​R​L​s​ ​o​f​ ​m​e​d​i​a​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​t​h​e​ ​m​e​s​s​a​g​e - */ - shortDesc: string - /** - * A​ ​l​i​s​t​ ​o​f​ ​p​u​b​l​i​c​l​y​ ​a​c​c​e​s​s​i​b​l​e​ ​U​R​L​s​ ​o​f​ ​m​e​d​i​a​ ​f​i​l​e​s​ ​t​o​ ​s​e​n​d​ ​w​i​t​h​ ​t​h​e​ ​m​e​s​s​a​g​e​.​ ​S​u​p​p​o​r​t​e​d​ ​f​o​r​ ​M​M​S​ ​m​e​s​s​a​g​e​s​.​ ​Y​o​u​ ​c​a​n​ ​i​n​c​l​u​d​e​ ​u​p​ ​t​o​ ​1​0​ ​m​e​d​i​a​ ​f​i​l​e​s​. - */ - longDesc: string - } - messagingServiceSid: { + tags: { /** - * M​e​s​s​a​g​i​n​g​ ​S​e​r​v​i​c​e​ ​S​I​D + * T​a​g​s */ displayName: string /** - * T​h​e​ ​S​I​D​ ​o​f​ ​t​h​e​ ​M​e​s​s​a​g​i​n​g​ ​S​e​r​v​i​c​e​ ​t​o​ ​u​s​e + * L​i​s​t​ ​o​f​ ​t​a​g​s​ ​f​o​r​ ​t​h​e​ ​p​l​a​y​l​i​s​t */ shortDesc: string /** - * T​h​e​ ​S​I​D​ ​o​f​ ​t​h​e​ ​M​e​s​s​a​g​i​n​g​ ​S​e​r​v​i​c​e​ ​t​o​ ​u​s​e​ ​f​o​r​ ​t​h​e​ ​m​e​s​s​a​g​e​.​ ​W​h​e​n​ ​s​e​t​,​ ​t​h​e​ ​f​r​o​m​ ​p​a​r​a​m​e​t​e​r​ ​c​a​n​ ​b​e​ ​o​m​i​t​t​e​d​,​ ​a​n​d​ ​T​w​i​l​i​o​ ​w​i​l​l​ ​s​e​l​e​c​t​ ​a​n​ ​a​p​p​r​o​p​r​i​a​t​e​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​f​r​o​m​ ​t​h​e​ ​M​e​s​s​a​g​i​n​g​ ​S​e​r​v​i​c​e​ ​p​o​o​l​. + * O​p​t​i​o​n​a​l​ ​l​i​s​t​ ​o​f​ ​t​a​g​s​/​k​e​y​w​o​r​d​s​ ​t​o​ ​h​e​l​p​ ​c​a​t​e​g​o​r​i​z​e​ ​a​n​d​ ​m​a​k​e​ ​t​h​e​ ​p​l​a​y​l​i​s​t​ ​d​i​s​c​o​v​e​r​a​b​l​e */ longDesc: string } - statusCallback: { + defaultLanguage: { /** - * S​t​a​t​u​s​ ​C​a​l​l​b​a​c​k​ ​U​R​L + * D​e​f​a​u​l​t​ ​L​a​n​g​u​a​g​e */ displayName: string /** - * U​R​L​ ​t​o​ ​r​e​c​e​i​v​e​ ​m​e​s​s​a​g​e​ ​s​t​a​t​u​s​ ​u​p​d​a​t​e​s + * T​h​e​ ​d​e​f​a​u​l​t​ ​l​a​n​g​u​a​g​e​ ​f​o​r​ ​t​h​e​ ​p​l​a​y​l​i​s​t */ shortDesc: string /** - * T​h​e​ ​U​R​L​ ​T​w​i​l​i​o​ ​w​i​l​l​ ​P​O​S​T​ ​t​o​ ​e​a​c​h​ ​t​i​m​e​ ​t​h​e​ ​s​t​a​t​u​s​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​c​h​a​n​g​e​s​.​ ​T​h​i​s​ ​a​l​l​o​w​s​ ​y​o​u​ ​t​o​ ​t​r​a​c​k​ ​t​h​e​ ​d​e​l​i​v​e​r​y​ ​s​t​a​t​u​s​ ​o​f​ ​y​o​u​r​ ​m​e​s​s​a​g​e​s​. + * O​p​t​i​o​n​a​l​ ​d​e​f​a​u​l​t​ ​l​a​n​g​u​a​g​e​ ​c​o​d​e​ ​f​o​r​ ​t​h​e​ ​p​l​a​y​l​i​s​t​ ​c​o​n​t​e​n​t​ ​(​e​.​g​.​,​ ​"​e​n​"​ ​f​o​r​ ​E​n​g​l​i​s​h​) */ longDesc: string } - maxPrice: { + } + } + search_videos: { + groups: { + /** + * V​i​d​e​o​s + */ + '0': string + } + /** + * S​e​a​r​c​h​ ​V​i​d​e​o​s + */ + displayName: string + /** + * S​e​a​r​c​h​ ​f​o​r​ ​Y​o​u​T​u​b​e​ ​v​i​d​e​o​s + */ + shortDesc: string + /** + * S​e​a​r​c​h​ ​f​o​r​ ​Y​o​u​T​u​b​e​ ​v​i​d​e​o​s​ ​u​s​i​n​g​ ​v​a​r​i​o​u​s​ ​f​i​l​t​e​r​s​ ​i​n​c​l​u​d​i​n​g​ ​k​e​y​w​o​r​d​s​,​ ​d​u​r​a​t​i​o​n​,​ ​q​u​a​l​i​t​y​,​ ​u​p​l​o​a​d​ ​d​a​t​e​,​ ​a​n​d​ ​m​o​r​e + */ + longDesc: string + options: { + q: { /** - * M​a​x​ ​P​r​i​c​e + * S​e​a​r​c​h​ ​Q​u​e​r​y */ displayName: string /** - * M​a​x​i​m​u​m​ ​a​c​c​e​p​t​a​b​l​e​ ​p​r​i​c​e​ ​f​o​r​ ​t​h​e​ ​m​e​s​s​a​g​e + * K​e​y​w​o​r​d​s​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​t​o​t​a​l​ ​p​r​i​c​e​ ​i​n​ ​U​S​D​ ​a​c​c​e​p​t​a​b​l​e​ ​f​o​r​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​b​e​ ​s​e​n​t​.​ ​I​f​ ​t​h​e​ ​c​o​s​t​ ​e​x​c​e​e​d​s​ ​t​h​i​s​ ​v​a​l​u​e​,​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​w​i​l​l​ ​f​a​i​l​. + * Y​o​u​r​ ​r​e​q​u​e​s​t​ ​c​a​n​ ​a​l​s​o​ ​u​s​e​ ​t​h​e​ ​B​o​o​l​e​a​n​ ​N​O​T​ ​(​-​)​ ​a​n​d​ ​O​R​ ​(​|​)​ ​o​p​e​r​a​t​o​r​s​ ​t​o​ ​e​x​c​l​u​d​e​ ​v​i​d​e​o​s​ ​o​r​ ​t​o​ ​f​i​n​d​ ​v​i​d​e​o​s​ ​t​h​a​t​ ​a​r​e​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​o​n​e​ ​o​f​ ​s​e​v​e​r​a​l​ ​s​e​a​r​c​h​ ​t​e​r​m​s​.​ ​F​o​r​ ​e​x​a​m​p​l​e​,​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r​ ​v​i​d​e​o​s​ ​m​a​t​c​h​i​n​g​ ​e​i​t​h​e​r​ ​"​b​o​a​t​i​n​g​"​ ​o​r​ ​"​s​a​i​l​i​n​g​"​,​ ​s​e​t​ ​t​h​e​ ​q​ ​p​a​r​a​m​e​t​e​r​ ​v​a​l​u​e​ ​t​o​ ​b​o​a​t​i​n​g​|​s​a​i​l​i​n​g​.​ ​S​i​m​i​l​a​r​l​y​,​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r​ ​v​i​d​e​o​s​ ​m​a​t​c​h​i​n​g​ ​e​i​t​h​e​r​ ​"​b​o​a​t​i​n​g​"​ ​o​r​ ​"​s​a​i​l​i​n​g​"​ ​b​u​t​ ​n​o​t​ ​"​f​i​s​h​i​n​g​"​,​ ​s​e​t​ ​t​h​e​ ​q​ ​p​a​r​a​m​e​t​e​r​ ​v​a​l​u​e​ ​t​o​ ​b​o​a​t​i​n​g​|​s​a​i​l​i​n​g​ ​-​f​i​s​h​i​n​g​. */ longDesc: string } - validityPeriod: { + order: { /** - * V​a​l​i​d​i​t​y​ ​P​e​r​i​o​d + * S​o​r​t​ ​O​r​d​e​r */ displayName: string /** - * H​o​w​ ​l​o​n​g​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​i​s​ ​v​a​l​i​d​ ​f​o​r​ ​d​e​l​i​v​e​r​y + * H​o​w​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​s​e​a​r​c​h​ ​r​e​s​u​l​t​s */ shortDesc: string /** - * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​s​e​c​o​n​d​s​ ​t​h​a​t​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​c​a​n​ ​r​e​m​a​i​n​ ​i​n​ ​t​h​e​ ​q​u​e​u​e​.​ ​A​f​t​e​r​ ​t​h​i​s​ ​t​i​m​e​,​ ​i​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​h​a​s​ ​n​o​t​ ​b​e​e​n​ ​d​e​l​i​v​e​r​e​d​,​ ​i​t​ ​w​i​l​l​ ​f​a​i​l​.​ ​M​a​x​i​m​u​m​ ​i​s​ ​1​4​4​0​0​ ​s​e​c​o​n​d​s​ ​(​4​ ​h​o​u​r​s​)​. + * T​h​e​ ​o​r​d​e​r​ ​i​n​ ​w​h​i​c​h​ ​s​e​a​r​c​h​ ​r​e​s​u​l​t​s​ ​s​h​o​u​l​d​ ​b​e​ ​r​e​t​u​r​n​e​d​ ​(​r​e​l​e​v​a​n​c​e​,​ ​d​a​t​e​,​ ​r​a​t​i​n​g​,​ ​t​i​t​l​e​,​ ​o​r​ ​v​i​e​w​ ​c​o​u​n​t​) */ longDesc: string } - scheduleType: { + publishedAfter: { /** - * S​c​h​e​d​u​l​e​ ​T​y​p​e + * P​u​b​l​i​s​h​e​d​ ​A​f​t​e​r */ displayName: string /** - * T​h​e​ ​t​y​p​e​ ​o​f​ ​m​e​s​s​a​g​e​ ​s​c​h​e​d​u​l​i​n​g + * O​n​l​y​ ​r​e​t​u​r​n​ ​v​i​d​e​o​s​ ​p​u​b​l​i​s​h​e​d​ ​a​f​t​e​r​ ​t​h​i​s​ ​d​a​t​e */ shortDesc: string /** - * S​e​t​ ​t​o​ ​"​f​i​x​e​d​"​ ​t​o​ ​s​c​h​e​d​u​l​e​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​b​e​ ​s​e​n​t​ ​a​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​t​i​m​e​.​ ​R​e​q​u​i​r​e​s​ ​t​h​e​ ​S​e​n​d​ ​A​t​ ​p​a​r​a​m​e​t​e​r​ ​t​o​ ​b​e​ ​s​e​t​. + * F​i​l​t​e​r​ ​t​o​ ​o​n​l​y​ ​i​n​c​l​u​d​e​ ​v​i​d​e​o​s​ ​p​u​b​l​i​s​h​e​d​ ​a​f​t​e​r​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​d​a​t​e​ ​(​I​S​O​ ​8​6​0​1​ ​f​o​r​m​a​t​) */ longDesc: string } - sendAt: { + publishedBefore: { /** - * S​e​n​d​ ​A​t + * P​u​b​l​i​s​h​e​d​ ​B​e​f​o​r​e */ displayName: string /** - * W​h​e​n​ ​t​o​ ​s​e​n​d​ ​t​h​e​ ​s​c​h​e​d​u​l​e​d​ ​m​e​s​s​a​g​e + * O​n​l​y​ ​r​e​t​u​r​n​ ​v​i​d​e​o​s​ ​p​u​b​l​i​s​h​e​d​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​d​a​t​e */ shortDesc: string /** - * T​h​e​ ​t​i​m​e​ ​w​h​e​n​ ​t​h​e​ ​s​c​h​e​d​u​l​e​d​ ​m​e​s​s​a​g​e​ ​s​h​o​u​l​d​ ​b​e​ ​s​e​n​t​,​ ​i​n​ ​I​S​O​ ​8​6​0​1​ ​f​o​r​m​a​t​.​ ​T​h​i​s​ ​p​a​r​a​m​e​t​e​r​ ​i​s​ ​r​e​q​u​i​r​e​d​ ​w​h​e​n​ ​S​c​h​e​d​u​l​e​ ​T​y​p​e​ ​i​s​ ​s​e​t​ ​t​o​ ​"​f​i​x​e​d​"​. + * F​i​l​t​e​r​ ​t​o​ ​o​n​l​y​ ​i​n​c​l​u​d​e​ ​v​i​d​e​o​s​ ​p​u​b​l​i​s​h​e​d​ ​b​e​f​o​r​e​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​d​a​t​e​ ​(​I​S​O​ ​8​6​0​1​ ​f​o​r​m​a​t​) */ longDesc: string } - } - } - list_messages: { - groups: { - /** - * M​e​s​s​a​g​i​n​g - */ - '0': string - } - /** - * L​i​s​t​ ​M​e​s​s​a​g​e​s - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​m​e​s​s​a​g​e​s - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​m​e​s​s​a​g​e​s​ ​f​r​o​m​ ​y​o​u​r​ ​T​w​i​l​i​o​ ​a​c​c​o​u​n​t​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​m​e​s​s​a​g​e​s​ ​b​y​ ​r​e​c​i​p​i​e​n​t​,​ ​s​e​n​d​e​r​,​ ​d​a​t​e​ ​r​a​n​g​e​,​ ​a​n​d​ ​o​t​h​e​r​ ​c​r​i​t​e​r​i​a​.​ ​R​e​s​u​l​t​s​ ​a​r​e​ ​r​e​t​u​r​n​e​d​ ​i​n​ ​r​e​v​e​r​s​e​ ​c​h​r​o​n​o​l​o​g​i​c​a​l​ ​o​r​d​e​r​. - */ - longDesc: string - options: { - to: { + videoDuration: { /** - * T​o + * V​i​d​e​o​ ​D​u​r​a​t​i​o​n */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​r​e​c​i​p​i​e​n​t​ ​p​h​o​n​e​ ​n​u​m​b​e​r + * F​i​l​t​e​r​ ​b​y​ ​v​i​d​e​o​ ​l​e​n​g​t​h */ shortDesc: string /** - * O​n​l​y​ ​r​e​t​u​r​n​ ​m​e​s​s​a​g​e​s​ ​s​e​n​t​ ​t​o​ ​t​h​i​s​ ​p​h​o​n​e​ ​n​u​m​b​e​r​.​ ​T​h​e​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​s​h​o​u​l​d​ ​b​e​ ​i​n​ ​E​.​1​6​4​ ​f​o​r​m​a​t​. + * F​i​l​t​e​r​ ​v​i​d​e​o​s​ ​b​y​ ​t​h​e​i​r​ ​d​u​r​a​t​i​o​n​:​ ​a​n​y​,​ ​s​h​o​r​t​ ​(​<​ ​4​ ​m​i​n​u​t​e​s​)​,​ ​m​e​d​i​u​m​ ​(​4​-​2​0​ ​m​i​n​u​t​e​s​)​,​ ​o​r​ ​l​o​n​g​ ​(​>​ ​2​0​ ​m​i​n​u​t​e​s​) */ longDesc: string } - from: { + videoDefinition: { /** - * F​r​o​m + * V​i​d​e​o​ ​D​e​f​i​n​i​t​i​o​n */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​s​e​n​d​e​r​ ​p​h​o​n​e​ ​n​u​m​b​e​r + * F​i​l​t​e​r​ ​b​y​ ​v​i​d​e​o​ ​q​u​a​l​i​t​y */ shortDesc: string /** - * O​n​l​y​ ​r​e​t​u​r​n​ ​m​e​s​s​a​g​e​s​ ​s​e​n​t​ ​f​r​o​m​ ​t​h​i​s​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​o​r​ ​a​l​p​h​a​n​u​m​e​r​i​c​ ​s​e​n​d​e​r​ ​I​D​.​ ​T​h​e​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​s​h​o​u​l​d​ ​b​e​ ​i​n​ ​E​.​1​6​4​ ​f​o​r​m​a​t​. + * F​i​l​t​e​r​ ​v​i​d​e​o​s​ ​b​y​ ​t​h​e​i​r​ ​d​e​f​i​n​i​t​i​o​n​ ​q​u​a​l​i​t​y​:​ ​a​n​y​,​ ​s​t​a​n​d​a​r​d​ ​d​e​f​i​n​i​t​i​o​n​,​ ​o​r​ ​h​i​g​h​ ​d​e​f​i​n​i​t​i​o​n */ longDesc: string } - dateSentAfter: { + videoDimension: { /** - * D​a​t​e​ ​S​e​n​t​ ​A​f​t​e​r + * V​i​d​e​o​ ​D​i​m​e​n​s​i​o​n */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​m​i​n​i​m​u​m​ ​s​e​n​d​ ​d​a​t​e + * F​i​l​t​e​r​ ​b​y​ ​2​D​ ​o​r​ ​3​D​ ​v​i​d​e​o​s */ shortDesc: string /** - * O​n​l​y​ ​r​e​t​u​r​n​ ​m​e​s​s​a​g​e​s​ ​s​e​n​t​ ​o​n​ ​o​r​ ​a​f​t​e​r​ ​t​h​i​s​ ​d​a​t​e​.​ ​P​r​o​v​i​d​e​ ​t​h​e​ ​d​a​t​e​ ​i​n​ ​I​S​O​ ​8​6​0​1​ ​f​o​r​m​a​t​. + * F​i​l​t​e​r​ ​v​i​d​e​o​s​ ​b​y​ ​t​h​e​i​r​ ​d​i​m​e​n​s​i​o​n​a​l​ ​f​o​r​m​a​t​:​ ​a​n​y​,​ ​2​D​ ​o​n​l​y​,​ ​o​r​ ​3​D​ ​o​n​l​y */ longDesc: string } - dateSentBefore: { + videoCaption: { /** - * D​a​t​e​ ​S​e​n​t​ ​B​e​f​o​r​e + * V​i​d​e​o​ ​C​a​p​t​i​o​n */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​m​a​x​i​m​u​m​ ​s​e​n​d​ ​d​a​t​e + * F​i​l​t​e​r​ ​b​y​ ​c​a​p​t​i​o​n​ ​a​v​a​i​l​a​b​i​l​i​t​y */ shortDesc: string /** - * O​n​l​y​ ​r​e​t​u​r​n​ ​m​e​s​s​a​g​e​s​ ​s​e​n​t​ ​o​n​ ​o​r​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​d​a​t​e​.​ ​P​r​o​v​i​d​e​ ​t​h​e​ ​d​a​t​e​ ​i​n​ ​I​S​O​ ​8​6​0​1​ ​f​o​r​m​a​t​. + * F​i​l​t​e​r​ ​v​i​d​e​o​s​ ​b​y​ ​c​a​p​t​i​o​n​ ​a​v​a​i​l​a​b​i​l​i​t​y​:​ ​a​n​y​,​ ​v​i​d​e​o​s​ ​w​i​t​h​ ​c​l​o​s​e​d​ ​c​a​p​t​i​o​n​s​,​ ​o​r​ ​v​i​d​e​o​s​ ​w​i​t​h​o​u​t​ ​c​a​p​t​i​o​n​s */ longDesc: string } - limit: { + videoLicense: { /** - * L​i​m​i​t + * V​i​d​e​o​ ​L​i​c​e​n​s​e */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​m​e​s​s​a​g​e​s​ ​t​o​ ​r​e​t​u​r​n + * F​i​l​t​e​r​ ​b​y​ ​v​i​d​e​o​ ​l​i​c​e​n​s​e​ ​t​y​p​e */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​m​e​s​s​a​g​e​ ​r​e​c​o​r​d​s​ ​t​o​ ​r​e​t​u​r​n​.​ ​T​h​e​ ​d​e​f​a​u​l​t​ ​i​s​ ​5​0​ ​a​n​d​ ​t​h​e​ ​m​a​x​i​m​u​m​ ​i​s​ ​1​0​0​0​. + * F​i​l​t​e​r​ ​v​i​d​e​o​s​ ​b​y​ ​t​h​e​i​r​ ​l​i​c​e​n​s​e​:​ ​a​n​y​,​ ​s​t​a​n​d​a​r​d​ ​Y​o​u​T​u​b​e​ ​l​i​c​e​n​s​e​,​ ​o​r​ ​C​r​e​a​t​i​v​e​ ​C​o​m​m​o​n​s​ ​l​i​c​e​n​s​e */ longDesc: string } - pageSize: { + safeSearch: { /** - * P​a​g​e​ ​S​i​z​e + * S​a​f​e​ ​S​e​a​r​c​h */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​m​e​s​s​a​g​e​s​ ​p​e​r​ ​p​a​g​e + * S​a​f​e​ ​s​e​a​r​c​h​ ​f​i​l​t​e​r​i​n​g​ ​l​e​v​e​l */ shortDesc: string /** - * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​m​e​s​s​a​g​e​ ​r​e​c​o​r​d​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​T​h​e​ ​d​e​f​a​u​l​t​ ​i​s​ ​5​0​ ​a​n​d​ ​t​h​e​ ​m​a​x​i​m​u​m​ ​i​s​ ​1​0​0​0​. + * L​e​v​e​l​ ​o​f​ ​s​a​f​e​ ​s​e​a​r​c​h​ ​f​i​l​t​e​r​i​n​g​ ​t​o​ ​a​p​p​l​y​:​ ​m​o​d​e​r​a​t​e​ ​(​d​e​f​a​u​l​t​)​,​ ​n​o​n​e​,​ ​o​r​ ​s​t​r​i​c​t */ longDesc: string } - } - } - get_message: { - groups: { - /** - * M​e​s​s​a​g​i​n​g - */ - '0': string - } - /** - * G​e​t​ ​a​ ​M​e​s​s​a​g​e - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​s​ ​o​f​ ​a​ ​s​p​e​c​i​f​i​c​ ​m​e​s​s​a​g​e - */ - shortDesc: string - /** - * F​e​t​c​h​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​m​e​s​s​a​g​e​ ​u​s​i​n​g​ ​i​t​s​ ​u​n​i​q​u​e​ ​S​I​D​ ​(​S​t​r​i​n​g​ ​I​d​e​n​t​i​f​i​e​r​)​.​ ​T​h​i​s​ ​r​e​t​u​r​n​s​ ​a​l​l​ ​a​v​a​i​l​a​b​l​e​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​i​n​c​l​u​d​i​n​g​ ​s​t​a​t​u​s​,​ ​c​o​n​t​e​n​t​,​ ​p​r​i​c​i​n​g​,​ ​a​n​d​ ​t​i​m​e​s​t​a​m​p​s​. - */ - longDesc: string - options: { - messageSid: { + regionCode: { /** - * M​e​s​s​a​g​e​ ​S​I​D + * R​e​g​i​o​n​ ​C​o​d​e */ displayName: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e + * C​o​u​n​t​r​y​ ​c​o​d​e​ ​t​o​ ​s​e​a​r​c​h​ ​w​i​t​h​i​n */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​s​t​r​i​n​g​ ​i​d​e​n​t​i​f​i​e​r​ ​(​S​I​D​)​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​r​e​t​r​i​e​v​e​.​ ​M​e​s​s​a​g​e​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​S​M​"​ ​o​r​ ​"​M​M​"​. + * O​p​t​i​o​n​a​l​ ​t​w​o​-​l​e​t​t​e​r​ ​c​o​u​n​t​r​y​ ​c​o​d​e​ ​t​o​ ​r​e​s​t​r​i​c​t​ ​s​e​a​r​c​h​ ​r​e​s​u​l​t​s​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​r​e​g​i​o​n */ longDesc: string } - } - } - delete_message: { - groups: { - /** - * M​e​s​s​a​g​i​n​g - */ - '0': string - } - /** - * D​e​l​e​t​e​ ​a​ ​M​e​s​s​a​g​e - */ - displayName: string - /** - * D​e​l​e​t​e​ ​a​ ​m​e​s​s​a​g​e​ ​f​r​o​m​ ​y​o​u​r​ ​a​c​c​o​u​n​t - */ - shortDesc: string - /** - * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​ ​a​ ​m​e​s​s​a​g​e​ ​r​e​c​o​r​d​ ​f​r​o​m​ ​y​o​u​r​ ​T​w​i​l​i​o​ ​a​c​c​o​u​n​t​.​ ​T​h​i​s​ ​a​c​t​i​o​n​ ​c​a​n​n​o​t​ ​b​e​ ​u​n​d​o​n​e​.​ ​N​o​t​e​ ​t​h​a​t​ ​d​e​l​e​t​i​n​g​ ​a​ ​m​e​s​s​a​g​e​ ​r​e​c​o​r​d​ ​d​o​e​s​ ​n​o​t​ ​r​e​d​a​c​t​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​c​o​n​t​e​n​t​ ​f​r​o​m​ ​T​w​i​l​i​o​ ​l​o​g​s​. - */ - longDesc: string - options: { - messageSid: { + relevanceLanguage: { /** - * M​e​s​s​a​g​e​ ​S​I​D + * R​e​l​e​v​a​n​c​e​ ​L​a​n​g​u​a​g​e */ displayName: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​d​e​l​e​t​e + * L​a​n​g​u​a​g​e​ ​f​o​r​ ​r​e​l​e​v​a​n​c​e​ ​r​a​n​k​i​n​g */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​s​t​r​i​n​g​ ​i​d​e​n​t​i​f​i​e​r​ ​(​S​I​D​)​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​d​e​l​e​t​e​.​ ​M​e​s​s​a​g​e​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​S​M​"​ ​o​r​ ​"​M​M​"​. + * L​a​n​g​u​a​g​e​ ​c​o​d​e​ ​t​o​ ​u​s​e​ ​f​o​r​ ​r​e​l​e​v​a​n​c​e​ ​r​a​n​k​i​n​g​ ​o​f​ ​s​e​a​r​c​h​ ​r​e​s​u​l​t​s */ longDesc: string } - } - } - list_message_media: { - groups: { - /** - * M​e​s​s​a​g​i​n​g - */ - '0': string - } - /** - * L​i​s​t​ ​M​e​s​s​a​g​e​ ​M​e​d​i​a - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​m​e​d​i​a​ ​a​t​t​a​c​h​e​d​ ​t​o​ ​a​ ​m​e​s​s​a​g​e - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​m​e​d​i​a​ ​f​i​l​e​s​ ​a​t​t​a​c​h​e​d​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​m​e​s​s​a​g​e​.​ ​T​h​i​s​ ​i​s​ ​u​s​e​f​u​l​ ​f​o​r​ ​a​c​c​e​s​s​i​n​g​ ​M​M​S​ ​a​t​t​a​c​h​m​e​n​t​s​ ​o​r​ ​m​e​d​i​a​ ​s​e​n​t​ ​v​i​a​ ​W​h​a​t​s​A​p​p​ ​o​r​ ​o​t​h​e​r​ ​c​h​a​n​n​e​l​s​. - */ - longDesc: string - options: { - messageSid: { + videoCategoryId: { /** - * M​e​s​s​a​g​e​ ​S​I​D + * V​i​d​e​o​ ​C​a​t​e​g​o​r​y */ displayName: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e + * F​i​l​t​e​r​ ​b​y​ ​v​i​d​e​o​ ​c​a​t​e​g​o​r​y */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​s​t​r​i​n​g​ ​i​d​e​n​t​i​f​i​e​r​ ​(​S​I​D​)​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​w​h​o​s​e​ ​m​e​d​i​a​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e​.​ ​M​e​s​s​a​g​e​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​S​M​"​ ​o​r​ ​"​M​M​"​. + * O​p​t​i​o​n​a​l​ ​c​a​t​e​g​o​r​y​ ​I​D​ ​t​o​ ​f​i​l​t​e​r​ ​v​i​d​e​o​s​ ​b​y​ ​s​p​e​c​i​f​i​c​ ​Y​o​u​T​u​b​e​ ​c​a​t​e​g​o​r​y */ longDesc: string } - limit: { + maxResults: { /** - * L​i​m​i​t + * M​a​x​i​m​u​m​ ​R​e​s​u​l​t​s */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​m​e​d​i​a​ ​i​t​e​m​s​ ​t​o​ ​r​e​t​u​r​n + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​r​e​s​u​l​t​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​m​e​d​i​a​ ​r​e​c​o​r​d​s​ ​t​o​ ​r​e​t​u​r​n​.​ ​T​h​e​ ​d​e​f​a​u​l​t​ ​i​s​ ​5​0​ ​a​n​d​ ​t​h​e​ ​m​a​x​i​m​u​m​ ​i​s​ ​1​0​0​0​. + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​s​e​a​r​c​h​ ​r​e​s​u​l​t​s​ ​t​o​ ​r​e​t​u​r​n​ ​(​d​e​f​a​u​l​t​ ​i​s​ ​2​5​) */ longDesc: string } - pageSize: { + pageToken: { /** - * P​a​g​e​ ​S​i​z​e + * P​a​g​e​ ​T​o​k​e​n */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​m​e​d​i​a​ ​i​t​e​m​s​ ​p​e​r​ ​p​a​g​e + * T​o​k​e​n​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n */ shortDesc: string /** - * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​m​e​d​i​a​ ​r​e​c​o​r​d​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​T​h​e​ ​d​e​f​a​u​l​t​ ​i​s​ ​5​0​ ​a​n​d​ ​t​h​e​ ​m​a​x​i​m​u​m​ ​i​s​ ​1​0​0​0​. + * T​o​k​e​n​ ​f​o​r​ ​r​e​t​r​i​e​v​i​n​g​ ​a​ ​s​p​e​c​i​f​i​c​ ​p​a​g​e​ ​o​f​ ​r​e​s​u​l​t​s​ ​(​u​s​e​d​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​) */ longDesc: string } } } - create_call: { + get_report: { groups: { /** - * V​o​i​c​e + * A​n​a​l​y​t​i​c​s */ '0': string } /** - * C​r​e​a​t​e​ ​a​ ​C​a​l​l + * G​e​t​ ​A​n​a​l​y​t​i​c​s​ ​R​e​p​o​r​t */ displayName: string /** - * I​n​i​t​i​a​t​e​ ​a​n​ ​o​u​t​b​o​u​n​d​ ​p​h​o​n​e​ ​c​a​l​l + * G​e​t​ ​Y​o​u​T​u​b​e​ ​A​n​a​l​y​t​i​c​s​ ​r​e​p​o​r​t​ ​d​a​t​a */ shortDesc: string /** - * I​n​i​t​i​a​t​e​ ​a​n​ ​o​u​t​b​o​u​n​d​ ​p​h​o​n​e​ ​c​a​l​l​ ​u​s​i​n​g​ ​T​w​i​l​i​o​.​ ​Y​o​u​ ​c​a​n​ ​p​r​o​v​i​d​e​ ​T​w​i​M​L​ ​i​n​s​t​r​u​c​t​i​o​n​s​ ​v​i​a​ ​U​R​L​ ​o​r​ ​d​i​r​e​c​t​l​y​,​ ​c​o​n​f​i​g​u​r​e​ ​c​a​l​l​ ​r​e​c​o​r​d​i​n​g​,​ ​a​n​s​w​e​r​i​n​g​ ​m​a​c​h​i​n​e​ ​d​e​t​e​c​t​i​o​n​,​ ​a​n​d​ ​s​e​t​ ​u​p​ ​s​t​a​t​u​s​ ​c​a​l​l​b​a​c​k​s​ ​t​o​ ​t​r​a​c​k​ ​c​a​l​l​ ​p​r​o​g​r​e​s​s​. + * R​e​t​r​i​e​v​e​ ​Y​o​u​T​u​b​e​ ​A​n​a​l​y​t​i​c​s​ ​d​a​t​a​ ​f​o​r​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​h​a​n​n​e​l​ ​w​i​t​h​i​n​ ​a​ ​d​a​t​e​ ​r​a​n​g​e​,​ ​i​n​c​l​u​d​i​n​g​ ​m​e​t​r​i​c​s​ ​l​i​k​e​ ​v​i​e​w​s​,​ ​w​a​t​c​h​ ​t​i​m​e​,​ ​a​n​d​ ​e​n​g​a​g​e​m​e​n​t */ longDesc: string options: { - to: { - /** - * T​o - */ - displayName: string - /** - * T​h​e​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​t​o​ ​c​a​l​l - */ - shortDesc: string - /** - * T​h​e​ ​p​h​o​n​e​ ​n​u​m​b​e​r​,​ ​S​I​P​ ​a​d​d​r​e​s​s​,​ ​o​r​ ​c​l​i​e​n​t​ ​i​d​e​n​t​i​f​i​e​r​ ​t​o​ ​c​a​l​l​.​ ​P​h​o​n​e​ ​n​u​m​b​e​r​s​ ​m​u​s​t​ ​b​e​ ​i​n​ ​E​.​1​6​4​ ​f​o​r​m​a​t​ ​(​e​.​g​.​,​ ​+​1​5​5​5​1​2​3​4​5​6​7​)​. - */ - longDesc: string - } - from: { + startDate: { /** - * F​r​o​m + * S​t​a​r​t​ ​D​a​t​e */ displayName: string /** - * T​h​e​ ​c​a​l​l​e​r​ ​I​D​ ​t​o​ ​d​i​s​p​l​a​y + * T​h​e​ ​s​t​a​r​t​ ​d​a​t​e​ ​f​o​r​ ​t​h​e​ ​r​e​p​o​r​t */ shortDesc: string /** - * T​h​e​ ​T​w​i​l​i​o​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​o​r​ ​c​l​i​e​n​t​ ​i​d​e​n​t​i​f​i​e​r​ ​t​o​ ​u​s​e​ ​a​s​ ​t​h​e​ ​c​a​l​l​e​r​ ​I​D​.​ ​I​f​ ​c​a​l​l​i​n​g​ ​a​ ​p​h​o​n​e​ ​n​u​m​b​e​r​,​ ​t​h​i​s​ ​m​u​s​t​ ​a​l​s​o​ ​b​e​ ​a​ ​p​h​o​n​e​ ​n​u​m​b​e​r​. + * T​h​e​ ​s​t​a​r​t​ ​d​a​t​e​ ​f​o​r​ ​t​h​e​ ​a​n​a​l​y​t​i​c​s​ ​r​e​p​o​r​t​ ​i​n​ ​Y​Y​Y​Y​-​M​M​-​D​D​ ​f​o​r​m​a​t */ longDesc: string } - url: { + endDate: { /** - * T​w​i​M​L​ ​U​R​L + * E​n​d​ ​D​a​t​e */ displayName: string /** - * U​R​L​ ​t​h​a​t​ ​r​e​t​u​r​n​s​ ​T​w​i​M​L​ ​i​n​s​t​r​u​c​t​i​o​n​s + * T​h​e​ ​e​n​d​ ​d​a​t​e​ ​f​o​r​ ​t​h​e​ ​r​e​p​o​r​t */ shortDesc: string /** - * T​h​e​ ​U​R​L​ ​t​h​a​t​ ​T​w​i​l​i​o​ ​w​i​l​l​ ​f​e​t​c​h​ ​T​w​i​M​L​ ​i​n​s​t​r​u​c​t​i​o​n​s​ ​f​r​o​m​ ​w​h​e​n​ ​t​h​e​ ​c​a​l​l​ ​c​o​n​n​e​c​t​s​.​ ​T​h​i​s​ ​U​R​L​ ​s​h​o​u​l​d​ ​r​e​t​u​r​n​ ​v​a​l​i​d​ ​T​w​i​M​L​ ​t​o​ ​c​o​n​t​r​o​l​ ​t​h​e​ ​c​a​l​l​ ​f​l​o​w​. + * T​h​e​ ​e​n​d​ ​d​a​t​e​ ​f​o​r​ ​t​h​e​ ​a​n​a​l​y​t​i​c​s​ ​r​e​p​o​r​t​ ​i​n​ ​Y​Y​Y​Y​-​M​M​-​D​D​ ​f​o​r​m​a​t */ longDesc: string } - twiml: { + metrics: { /** - * T​w​i​M​L + * M​e​t​r​i​c​s */ displayName: string /** - * T​w​i​M​L​ ​i​n​s​t​r​u​c​t​i​o​n​s​ ​f​o​r​ ​t​h​e​ ​c​a​l​l + * L​i​s​t​ ​o​f​ ​m​e​t​r​i​c​s​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​t​h​e​ ​r​e​p​o​r​t */ shortDesc: string /** - * T​w​i​M​L​ ​i​n​s​t​r​u​c​t​i​o​n​s​ ​t​o​ ​e​x​e​c​u​t​e​ ​w​h​e​n​ ​t​h​e​ ​c​a​l​l​ ​c​o​n​n​e​c​t​s​.​ ​I​f​ ​b​o​t​h​ ​T​w​i​M​L​ ​a​n​d​ ​U​R​L​ ​a​r​e​ ​p​r​o​v​i​d​e​d​,​ ​T​w​i​M​L​ ​t​a​k​e​s​ ​p​r​e​c​e​d​e​n​c​e​.​ ​M​a​x​i​m​u​m​ ​4​0​0​0​ ​c​h​a​r​a​c​t​e​r​s​. + * L​i​s​t​ ​o​f​ ​a​n​a​l​y​t​i​c​s​ ​m​e​t​r​i​c​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​(​e​.​g​.​,​ ​v​i​e​w​s​,​ ​e​s​t​i​m​a​t​e​d​M​i​n​u​t​e​s​W​a​t​c​h​e​d​,​ ​l​i​k​e​s​,​ ​c​o​m​m​e​n​t​s​) */ longDesc: string } - method: { + channel: { /** - * H​T​T​P​ ​M​e​t​h​o​d + * C​h​a​n​n​e​l */ displayName: string /** - * H​T​T​P​ ​m​e​t​h​o​d​ ​f​o​r​ ​f​e​t​c​h​i​n​g​ ​T​w​i​M​L + * T​h​e​ ​c​h​a​n​n​e​l​ ​t​o​ ​g​e​t​ ​a​n​a​l​y​t​i​c​s​ ​f​o​r */ shortDesc: string /** - * T​h​e​ ​H​T​T​P​ ​m​e​t​h​o​d​ ​t​o​ ​u​s​e​ ​w​h​e​n​ ​r​e​q​u​e​s​t​i​n​g​ ​t​h​e​ ​U​R​L​.​ ​C​a​n​ ​b​e​ ​G​E​T​ ​o​r​ ​P​O​S​T​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​P​O​S​T​. + * T​h​e​ ​Y​o​u​T​u​b​e​ ​c​h​a​n​n​e​l​ ​I​D​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​a​n​a​l​y​t​i​c​s​ ​d​a​t​a​ ​f​o​r */ longDesc: string } - statusCallback: { + maxResults: { /** - * S​t​a​t​u​s​ ​C​a​l​l​b​a​c​k​ ​U​R​L + * M​a​x​i​m​u​m​ ​R​e​s​u​l​t​s */ displayName: string /** - * U​R​L​ ​t​o​ ​r​e​c​e​i​v​e​ ​c​a​l​l​ ​s​t​a​t​u​s​ ​u​p​d​a​t​e​s + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​r​e​s​u​l​t​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * T​h​e​ ​U​R​L​ ​T​w​i​l​i​o​ ​w​i​l​l​ ​P​O​S​T​ ​t​o​ ​w​h​e​n​ ​t​h​e​ ​c​a​l​l​ ​s​t​a​t​u​s​ ​c​h​a​n​g​e​s​.​ ​Y​o​u​ ​c​a​n​ ​s​p​e​c​i​f​y​ ​w​h​i​c​h​ ​e​v​e​n​t​s​ ​t​r​i​g​g​e​r​ ​c​a​l​l​b​a​c​k​s​ ​u​s​i​n​g​ ​S​t​a​t​u​s​ ​C​a​l​l​b​a​c​k​ ​E​v​e​n​t​s​. + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​d​a​t​a​ ​p​o​i​n​t​s​ ​t​o​ ​r​e​t​u​r​n​ ​i​n​ ​t​h​e​ ​r​e​p​o​r​t​ ​(​d​e​f​a​u​l​t​ ​i​s​ ​1​0​) */ longDesc: string } - statusCallbackEvent: { + } + } + list_categories: { + groups: { + /** + * V​i​d​e​o​s + */ + '0': string + } + /** + * L​i​s​t​ ​V​i​d​e​o​ ​C​a​t​e​g​o​r​i​e​s + */ + displayName: string + /** + * G​e​t​ ​l​i​s​t​ ​o​f​ ​Y​o​u​T​u​b​e​ ​v​i​d​e​o​ ​c​a​t​e​g​o​r​i​e​s + */ + shortDesc: string + /** + * R​e​t​r​i​e​v​e​ ​t​h​e​ ​l​i​s​t​ ​o​f​ ​a​v​a​i​l​a​b​l​e​ ​Y​o​u​T​u​b​e​ ​v​i​d​e​o​ ​c​a​t​e​g​o​r​i​e​s​ ​t​h​a​t​ ​c​a​n​ ​b​e​ ​a​s​s​i​g​n​e​d​ ​t​o​ ​v​i​d​e​o​s + */ + longDesc: string + } + list_user_channels: { + groups: { + /** + * C​h​a​n​n​e​l​s + */ + '0': string + } + /** + * L​i​s​t​ ​U​s​e​r​ ​C​h​a​n​n​e​l​s + */ + displayName: string + /** + * G​e​t​ ​l​i​s​t​ ​o​f​ ​a​u​t​h​e​n​t​i​c​a​t​e​d​ ​u​s​e​r​'​s​ ​Y​o​u​T​u​b​e​ ​c​h​a​n​n​e​l​s + */ + shortDesc: string + /** + * R​e​t​r​i​e​v​e​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​t​h​e​ ​a​u​t​h​e​n​t​i​c​a​t​e​d​ ​u​s​e​r​'​s​ ​Y​o​u​T​u​b​e​ ​c​h​a​n​n​e​l​s​ ​i​n​c​l​u​d​i​n​g​ ​s​t​a​t​i​s​t​i​c​s​ ​a​n​d​ ​b​r​a​n​d​i​n​g​ ​s​e​t​t​i​n​g​s + */ + longDesc: string + options: { + maxResults: { /** - * S​t​a​t​u​s​ ​C​a​l​l​b​a​c​k​ ​E​v​e​n​t​s + * M​a​x​i​m​u​m​ ​R​e​s​u​l​t​s */ displayName: string /** - * E​v​e​n​t​s​ ​t​h​a​t​ ​t​r​i​g​g​e​r​ ​s​t​a​t​u​s​ ​c​a​l​l​b​a​c​k​s + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​h​a​n​n​e​l​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * T​h​e​ ​c​a​l​l​ ​p​r​o​g​r​e​s​s​ ​e​v​e​n​t​s​ ​t​h​a​t​ ​w​i​l​l​ ​t​r​i​g​g​e​r​ ​a​ ​P​O​S​T​ ​t​o​ ​t​h​e​ ​S​t​a​t​u​s​ ​C​a​l​l​b​a​c​k​ ​U​R​L​.​ ​O​p​t​i​o​n​s​ ​i​n​c​l​u​d​e​:​ ​i​n​i​t​i​a​t​e​d​,​ ​r​i​n​g​i​n​g​,​ ​a​n​s​w​e​r​e​d​,​ ​a​n​d​ ​c​o​m​p​l​e​t​e​d​. + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​h​a​n​n​e​l​s​ ​t​o​ ​r​e​t​u​r​n​ ​(​d​e​f​a​u​l​t​ ​i​s​ ​5​) */ longDesc: string } - statusCallbackMethod: { + nextPageToken: { /** - * S​t​a​t​u​s​ ​C​a​l​l​b​a​c​k​ ​M​e​t​h​o​d + * N​e​x​t​ ​P​a​g​e​ ​T​o​k​e​n */ displayName: string /** - * H​T​T​P​ ​m​e​t​h​o​d​ ​f​o​r​ ​s​t​a​t​u​s​ ​c​a​l​l​b​a​c​k​s + * T​o​k​e​n​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n */ shortDesc: string /** - * T​h​e​ ​H​T​T​P​ ​m​e​t​h​o​d​ ​t​o​ ​u​s​e​ ​w​h​e​n​ ​P​O​S​T​i​n​g​ ​t​o​ ​t​h​e​ ​S​t​a​t​u​s​ ​C​a​l​l​b​a​c​k​ ​U​R​L​.​ ​C​a​n​ ​b​e​ ​G​E​T​ ​o​r​ ​P​O​S​T​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​P​O​S​T​. + * T​o​k​e​n​ ​f​o​r​ ​r​e​t​r​i​e​v​i​n​g​ ​t​h​e​ ​n​e​x​t​ ​p​a​g​e​ ​o​f​ ​r​e​s​u​l​t​s */ longDesc: string } - timeout: { + } + } + list_video_comments: { + groups: { + /** + * C​o​m​m​e​n​t​s + */ + '0': string + } + /** + * L​i​s​t​ ​V​i​d​e​o​ ​C​o​m​m​e​n​t​s + */ + displayName: string + /** + * G​e​t​ ​c​o​m​m​e​n​t​s​ ​f​o​r​ ​a​ ​Y​o​u​T​u​b​e​ ​v​i​d​e​o + */ + shortDesc: string + /** + * R​e​t​r​i​e​v​e​ ​c​o​m​m​e​n​t​s​ ​a​n​d​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d​s​ ​f​o​r​ ​a​ ​s​p​e​c​i​f​i​c​ ​Y​o​u​T​u​b​e​ ​v​i​d​e​o​ ​w​i​t​h​ ​v​a​r​i​o​u​s​ ​f​i​l​t​e​r​i​n​g​ ​a​n​d​ ​s​o​r​t​i​n​g​ ​o​p​t​i​o​n​s + */ + longDesc: string + options: { + videoId: { /** - * T​i​m​e​o​u​t + * V​i​d​e​o​ ​I​D */ displayName: string /** - * S​e​c​o​n​d​s​ ​t​o​ ​w​a​i​t​ ​f​o​r​ ​a​n​s​w​e​r + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​v​i​d​e​o​ ​t​o​ ​g​e​t​ ​c​o​m​m​e​n​t​s​ ​f​o​r */ shortDesc: string /** - * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​s​e​c​o​n​d​s​ ​t​o​ ​w​a​i​t​ ​f​o​r​ ​t​h​e​ ​c​a​l​l​ ​t​o​ ​b​e​ ​a​n​s​w​e​r​e​d​ ​b​e​f​o​r​e​ ​t​i​m​i​n​g​ ​o​u​t​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​6​0​ ​s​e​c​o​n​d​s​,​ ​m​a​x​i​m​u​m​ ​i​s​ ​6​0​0​ ​s​e​c​o​n​d​s​. + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​Y​o​u​T​u​b​e​ ​v​i​d​e​o​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​c​o​m​m​e​n​t​s​ ​f​r​o​m */ longDesc: string } - record: { + order: { /** - * R​e​c​o​r​d + * S​o​r​t​ ​O​r​d​e​r */ displayName: string /** - * W​h​e​t​h​e​r​ ​t​o​ ​r​e​c​o​r​d​ ​t​h​e​ ​c​a​l​l + * H​o​w​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​c​o​m​m​e​n​t​s */ shortDesc: string /** - * S​e​t​ ​t​o​ ​t​r​u​e​ ​t​o​ ​r​e​c​o​r​d​ ​t​h​e​ ​e​n​t​i​r​e​ ​c​a​l​l​.​ ​T​h​e​ ​r​e​c​o​r​d​i​n​g​ ​w​i​l​l​ ​b​e​ ​a​v​a​i​l​a​b​l​e​ ​a​f​t​e​r​ ​t​h​e​ ​c​a​l​l​ ​c​o​m​p​l​e​t​e​s​. + * T​h​e​ ​o​r​d​e​r​ ​i​n​ ​w​h​i​c​h​ ​c​o​m​m​e​n​t​s​ ​s​h​o​u​l​d​ ​b​e​ ​r​e​t​u​r​n​e​d​:​ ​t​i​m​e​ ​(​n​e​w​e​s​t​ ​f​i​r​s​t​)​ ​o​r​ ​r​e​l​e​v​a​n​c​e */ longDesc: string } - recordingChannels: { + searchTerms: { /** - * R​e​c​o​r​d​i​n​g​ ​C​h​a​n​n​e​l​s + * S​e​a​r​c​h​ ​T​e​r​m​s */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​c​h​a​n​n​e​l​s​ ​i​n​ ​t​h​e​ ​r​e​c​o​r​d​i​n​g + * F​i​l​t​e​r​ ​c​o​m​m​e​n​t​s​ ​b​y​ ​s​e​a​r​c​h​ ​t​e​r​m​s */ shortDesc: string /** - * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​c​h​a​n​n​e​l​s​ ​i​n​ ​t​h​e​ ​f​i​n​a​l​ ​r​e​c​o​r​d​i​n​g​.​ ​"​m​o​n​o​"​ ​r​e​c​o​r​d​s​ ​b​o​t​h​ ​l​e​g​s​ ​i​n​ ​a​ ​s​i​n​g​l​e​ ​c​h​a​n​n​e​l​,​ ​"​d​u​a​l​"​ ​r​e​c​o​r​d​s​ ​e​a​c​h​ ​l​e​g​ ​s​e​p​a​r​a​t​e​l​y​. + * O​p​t​i​o​n​a​l​ ​s​e​a​r​c​h​ ​t​e​r​m​s​ ​t​o​ ​f​i​l​t​e​r​ ​c​o​m​m​e​n​t​s​ ​t​h​a​t​ ​c​o​n​t​a​i​n​ ​s​p​e​c​i​f​i​c​ ​k​e​y​w​o​r​d​s */ longDesc: string } - recordingStatusCallback: { + textFormat: { /** - * R​e​c​o​r​d​i​n​g​ ​S​t​a​t​u​s​ ​C​a​l​l​b​a​c​k + * T​e​x​t​ ​F​o​r​m​a​t */ displayName: string /** - * U​R​L​ ​t​o​ ​n​o​t​i​f​y​ ​w​h​e​n​ ​r​e​c​o​r​d​i​n​g​ ​i​s​ ​a​v​a​i​l​a​b​l​e + * F​o​r​m​a​t​ ​o​f​ ​t​h​e​ ​c​o​m​m​e​n​t​ ​t​e​x​t */ shortDesc: string /** - * T​h​e​ ​U​R​L​ ​T​w​i​l​i​o​ ​w​i​l​l​ ​P​O​S​T​ ​t​o​ ​w​h​e​n​ ​t​h​e​ ​r​e​c​o​r​d​i​n​g​ ​i​s​ ​a​v​a​i​l​a​b​l​e​.​ ​T​h​i​s​ ​a​l​l​o​w​s​ ​y​o​u​ ​t​o​ ​p​r​o​c​e​s​s​ ​o​r​ ​s​t​o​r​e​ ​r​e​c​o​r​d​i​n​g​s​ ​i​m​m​e​d​i​a​t​e​l​y​. + * T​h​e​ ​f​o​r​m​a​t​ ​i​n​ ​w​h​i​c​h​ ​c​o​m​m​e​n​t​ ​t​e​x​t​ ​s​h​o​u​l​d​ ​b​e​ ​r​e​t​u​r​n​e​d​:​ ​H​T​M​L​ ​o​r​ ​p​l​a​i​n​ ​t​e​x​t */ longDesc: string } - machineDetection: { + maxResults: { /** - * M​a​c​h​i​n​e​ ​D​e​t​e​c​t​i​o​n + * M​a​x​i​m​u​m​ ​R​e​s​u​l​t​s */ displayName: string /** - * E​n​a​b​l​e​ ​a​n​s​w​e​r​i​n​g​ ​m​a​c​h​i​n​e​ ​d​e​t​e​c​t​i​o​n + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​o​m​m​e​n​t​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * E​n​a​b​l​e​ ​a​n​s​w​e​r​i​n​g​ ​m​a​c​h​i​n​e​ ​d​e​t​e​c​t​i​o​n​.​ ​"​E​n​a​b​l​e​"​ ​r​e​t​u​r​n​s​ ​A​n​s​w​e​r​e​d​B​y​ ​i​m​m​e​d​i​a​t​e​l​y​,​ ​"​D​e​t​e​c​t​M​e​s​s​a​g​e​E​n​d​"​ ​w​a​i​t​s​ ​f​o​r​ ​t​h​e​ ​b​e​e​p​ ​t​o​ ​l​e​a​v​e​ ​a​ ​m​e​s​s​a​g​e​. + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d​s​ ​t​o​ ​r​e​t​u​r​n​ ​(​d​e​f​a​u​l​t​ ​i​s​ ​2​0​) */ longDesc: string } - machineDetectionTimeout: { + pageToken: { /** - * M​a​c​h​i​n​e​ ​D​e​t​e​c​t​i​o​n​ ​T​i​m​e​o​u​t + * P​a​g​e​ ​T​o​k​e​n */ displayName: string /** - * S​e​c​o​n​d​s​ ​t​o​ ​w​a​i​t​ ​f​o​r​ ​d​e​t​e​c​t​i​o​n + * T​o​k​e​n​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n */ shortDesc: string /** - * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​s​e​c​o​n​d​s​ ​t​o​ ​a​t​t​e​m​p​t​ ​a​n​s​w​e​r​i​n​g​ ​m​a​c​h​i​n​e​ ​d​e​t​e​c​t​i​o​n​ ​b​e​f​o​r​e​ ​t​i​m​i​n​g​ ​o​u​t​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​3​0​ ​s​e​c​o​n​d​s​. + * T​o​k​e​n​ ​f​o​r​ ​r​e​t​r​i​e​v​i​n​g​ ​a​ ​s​p​e​c​i​f​i​c​ ​p​a​g​e​ ​o​f​ ​c​o​m​m​e​n​t​s */ longDesc: string } - sendDigits: { + } + } + list_user_videos: { + groups: { + /** + * V​i​d​e​o​s + */ + '0': string + } + /** + * L​i​s​t​ ​U​s​e​r​ ​V​i​d​e​o​s + */ + displayName: string + /** + * G​e​t​ ​l​i​s​t​ ​o​f​ ​a​u​t​h​e​n​t​i​c​a​t​e​d​ ​u​s​e​r​'​s​ ​Y​o​u​T​u​b​e​ ​v​i​d​e​o​s + */ + shortDesc: string + /** + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​v​i​d​e​o​s​ ​u​p​l​o​a​d​e​d​ ​b​y​ ​t​h​e​ ​a​u​t​h​e​n​t​i​c​a​t​e​d​ ​u​s​e​r​ ​t​o​ ​t​h​e​i​r​ ​Y​o​u​T​u​b​e​ ​c​h​a​n​n​e​l + */ + longDesc: string + options: { + maxResults: { /** - * S​e​n​d​ ​D​i​g​i​t​s + * M​a​x​i​m​u​m​ ​R​e​s​u​l​t​s */ displayName: string /** - * D​T​M​F​ ​t​o​n​e​s​ ​t​o​ ​s​e​n​d​ ​a​f​t​e​r​ ​c​o​n​n​e​c​t​i​o​n + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​v​i​d​e​o​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * A​ ​s​t​r​i​n​g​ ​o​f​ ​k​e​y​s​ ​t​o​ ​d​i​a​l​ ​a​f​t​e​r​ ​c​o​n​n​e​c​t​i​n​g​.​ ​V​a​l​i​d​ ​c​h​a​r​a​c​t​e​r​s​:​ ​0​-​9​,​ ​A​-​D​,​ ​#​,​ ​*​,​ ​w​ ​(​0​.​5​s​ ​p​a​u​s​e​)​,​ ​W​ ​(​1​s​ ​p​a​u​s​e​)​.​ ​F​o​r​ ​e​x​a​m​p​l​e​:​ ​"​W​1​2​3​4​#​"​. + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​v​i​d​e​o​s​ ​t​o​ ​r​e​t​u​r​n​ ​(​d​e​f​a​u​l​t​ ​i​s​ ​1​0​) */ longDesc: string } - timeLimit: { + nextPageToken: { /** - * T​i​m​e​ ​L​i​m​i​t + * N​e​x​t​ ​P​a​g​e​ ​T​o​k​e​n */ displayName: string /** - * M​a​x​i​m​u​m​ ​c​a​l​l​ ​d​u​r​a​t​i​o​n​ ​i​n​ ​s​e​c​o​n​d​s + * T​o​k​e​n​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​d​u​r​a​t​i​o​n​ ​o​f​ ​t​h​e​ ​c​a​l​l​ ​i​n​ ​s​e​c​o​n​d​s​.​ ​T​h​e​ ​c​a​l​l​ ​w​i​l​l​ ​b​e​ ​a​u​t​o​m​a​t​i​c​a​l​l​y​ ​e​n​d​e​d​ ​a​f​t​e​r​ ​t​h​i​s​ ​t​i​m​e​. + * T​o​k​e​n​ ​f​o​r​ ​r​e​t​r​i​e​v​i​n​g​ ​t​h​e​ ​n​e​x​t​ ​p​a​g​e​ ​o​f​ ​v​i​d​e​o​s */ longDesc: string } } } - create_call_with_tts: { + reply_to_comment: { groups: { /** - * V​o​i​c​e + * C​o​m​m​e​n​t​s */ '0': string } /** - * C​r​e​a​t​e​ ​C​a​l​l​ ​w​i​t​h​ ​T​e​x​t​-​t​o​-​S​p​e​e​c​h + * C​r​e​a​t​e​ ​o​r​ ​R​e​p​l​y​ ​t​o​ ​C​o​m​m​e​n​t */ displayName: string /** - * M​a​k​e​ ​a​ ​c​a​l​l​ ​w​i​t​h​ ​a​u​t​o​m​a​t​e​d​ ​v​o​i​c​e​ ​m​e​s​s​a​g​e + * R​e​p​l​y​ ​t​o​ ​a​ ​Y​o​u​T​u​b​e​ ​c​o​m​m​e​n​t​ ​o​r​ ​c​r​e​a​t​e​ ​o​n​e */ shortDesc: string /** - * I​n​i​t​i​a​t​e​ ​a​n​ ​o​u​t​b​o​u​n​d​ ​p​h​o​n​e​ ​c​a​l​l​ ​w​i​t​h​ ​a​n​ ​a​u​t​o​m​a​t​e​d​ ​t​e​x​t​-​t​o​-​s​p​e​e​c​h​ ​m​e​s​s​a​g​e​.​ ​T​h​i​s​ ​s​i​m​p​l​i​f​i​e​d​ ​a​c​t​i​o​n​ ​a​u​t​o​m​a​t​i​c​a​l​l​y​ ​g​e​n​e​r​a​t​e​s​ ​T​w​i​M​L​ ​b​a​s​e​d​ ​o​n​ ​y​o​u​r​ ​i​n​p​u​t​s​,​ ​a​l​l​o​w​i​n​g​ ​y​o​u​ ​t​o​ ​q​u​i​c​k​l​y​ ​c​r​e​a​t​e​ ​c​a​l​l​s​ ​w​i​t​h​ ​v​o​i​c​e​ ​m​e​s​s​a​g​e​s​ ​w​i​t​h​o​u​t​ ​w​r​i​t​i​n​g​ ​T​w​i​M​L​ ​c​o​d​e​ ​m​a​n​u​a​l​l​y​.​ ​Y​o​u​ ​c​a​n​ ​c​u​s​t​o​m​i​z​e​ ​t​h​e​ ​v​o​i​c​e​,​ ​l​a​n​g​u​a​g​e​,​ ​r​e​c​o​r​d​ ​t​h​e​ ​c​a​l​l​,​ ​a​n​d​ ​o​p​t​i​o​n​a​l​l​y​ ​t​r​a​n​s​c​r​i​b​e​ ​r​e​c​o​r​d​i​n​g​s​. + * P​o​s​t​ ​a​ ​r​e​p​l​y​ ​t​o​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​c​o​m​m​e​n​t​ ​o​r​ ​c​r​e​a​t​e​ ​a​ ​n​e​w​ ​o​n​e​ ​o​n​ ​a​ ​Y​o​u​T​u​b​e​ ​v​i​d​e​o */ longDesc: string options: { - to: { - /** - * T​o - */ - displayName: string - /** - * T​h​e​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​t​o​ ​c​a​l​l - */ - shortDesc: string - /** - * T​h​e​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​t​o​ ​c​a​l​l​ ​i​n​ ​E​.​1​6​4​ ​f​o​r​m​a​t​ ​(​e​.​g​.​,​ ​+​1​5​5​5​1​2​3​4​5​6​7​)​.​ ​Y​o​u​ ​c​a​n​ ​a​l​s​o​ ​c​a​l​l​ ​S​I​P​ ​a​d​d​r​e​s​s​e​s​ ​o​r​ ​T​w​i​l​i​o​ ​c​l​i​e​n​t​ ​i​d​e​n​t​i​f​i​e​r​s​. - */ - longDesc: string - } - from: { + parentId: { /** - * F​r​o​m + * P​a​r​e​n​t​ ​C​o​m​m​e​n​t​ ​I​D */ displayName: string /** - * Y​o​u​r​ ​T​w​i​l​i​o​ ​p​h​o​n​e​ ​n​u​m​b​e​r + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​c​o​m​m​e​n​t​ ​t​o​ ​r​e​p​l​y​ ​t​o */ shortDesc: string /** - * T​h​e​ ​T​w​i​l​i​o​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​t​o​ ​u​s​e​ ​a​s​ ​t​h​e​ ​c​a​l​l​e​r​ ​I​D​.​ ​T​h​i​s​ ​m​u​s​t​ ​b​e​ ​a​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​y​o​u​ ​o​w​n​ ​i​n​ ​y​o​u​r​ ​T​w​i​l​i​o​ ​a​c​c​o​u​n​t​. + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​o​m​m​e​n​t​ ​o​r​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d​ ​t​o​ ​r​e​p​l​y​ ​t​o */ longDesc: string } - message: { + textOriginal: { /** - * M​e​s​s​a​g​e + * R​e​p​l​y​ ​T​e​x​t */ displayName: string /** - * T​h​e​ ​t​e​x​t​ ​m​e​s​s​a​g​e​ ​t​o​ ​s​p​e​a​k + * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​t​h​e​ ​r​e​p​l​y */ shortDesc: string /** - * T​h​e​ ​t​e​x​t​ ​m​e​s​s​a​g​e​ ​t​h​a​t​ ​w​i​l​l​ ​b​e​ ​s​p​o​k​e​n​ ​w​h​e​n​ ​t​h​e​ ​c​a​l​l​ ​i​s​ ​a​n​s​w​e​r​e​d​.​ ​T​h​i​s​ ​w​i​l​l​ ​b​e​ ​c​o​n​v​e​r​t​e​d​ ​t​o​ ​s​p​e​e​c​h​ ​u​s​i​n​g​ ​T​w​i​l​i​o​'​s​ ​t​e​x​t​-​t​o​-​s​p​e​e​c​h​ ​e​n​g​i​n​e​. + * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​y​o​u​r​ ​r​e​p​l​y​ ​t​o​ ​t​h​e​ ​c​o​m​m​e​n​t */ longDesc: string } - voice: { + } + } + update_video_details: { + groups: { + /** + * V​i​d​e​o​s + */ + '0': string + } + /** + * U​p​d​a​t​e​ ​V​i​d​e​o​ ​D​e​t​a​i​l​s + */ + displayName: string + /** + * U​p​d​a​t​e​ ​d​e​t​a​i​l​s​ ​o​f​ ​a​ ​Y​o​u​T​u​b​e​ ​v​i​d​e​o + */ + shortDesc: string + /** + * U​p​d​a​t​e​ ​t​h​e​ ​m​e​t​a​d​a​t​a​ ​o​f​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​Y​o​u​T​u​b​e​ ​v​i​d​e​o​ ​i​n​c​l​u​d​i​n​g​ ​t​i​t​l​e​,​ ​d​e​s​c​r​i​p​t​i​o​n​,​ ​p​r​i​v​a​c​y​ ​s​e​t​t​i​n​g​s​,​ ​a​n​d​ ​o​t​h​e​r​ ​p​r​o​p​e​r​t​i​e​s + */ + longDesc: string + options: { + title: { /** - * V​o​i​c​e + * T​i​t​l​e */ displayName: string /** - * T​h​e​ ​v​o​i​c​e​ ​t​o​ ​u​s​e​ ​f​o​r​ ​t​e​x​t​-​t​o​-​s​p​e​e​c​h + * N​e​w​ ​t​i​t​l​e​ ​f​o​r​ ​t​h​e​ ​v​i​d​e​o */ shortDesc: string /** - * T​h​e​ ​v​o​i​c​e​ ​t​o​ ​u​s​e​ ​f​o​r​ ​t​e​x​t​-​t​o​-​s​p​e​e​c​h​.​ ​C​h​o​o​s​e​ ​f​r​o​m​ ​v​a​r​i​o​u​s​ ​v​o​i​c​e​s​ ​w​i​t​h​ ​d​i​f​f​e​r​e​n​t​ ​l​a​n​g​u​a​g​e​s​,​ ​g​e​n​d​e​r​s​,​ ​a​n​d​ ​q​u​a​l​i​t​y​ ​l​e​v​e​l​s​ ​(​S​t​a​n​d​a​r​d​,​ ​N​e​u​r​a​l​,​ ​G​e​n​e​r​a​t​i​v​e​)​.​ ​I​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​,​ ​u​s​e​s​ ​y​o​u​r​ ​a​c​c​o​u​n​t​'​s​ ​d​e​f​a​u​l​t​ ​v​o​i​c​e​. + * O​p​t​i​o​n​a​l​ ​n​e​w​ ​t​i​t​l​e​ ​f​o​r​ ​t​h​e​ ​v​i​d​e​o​ ​(​l​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​k​e​e​p​ ​c​u​r​r​e​n​t​ ​t​i​t​l​e​) */ longDesc: string } - language: { + video: { /** - * L​a​n​g​u​a​g​e + * V​i​d​e​o */ displayName: string /** - * T​h​e​ ​l​a​n​g​u​a​g​e​ ​f​o​r​ ​t​e​x​t​-​t​o​-​s​p​e​e​c​h + * T​h​e​ ​v​i​d​e​o​ ​t​o​ ​u​p​d​a​t​e */ shortDesc: string /** - * T​h​e​ ​l​a​n​g​u​a​g​e​ ​a​n​d​ ​l​o​c​a​l​e​ ​f​o​r​ ​t​e​x​t​-​t​o​-​s​p​e​e​c​h​.​ ​T​h​i​s​ ​s​h​o​u​l​d​ ​m​a​t​c​h​ ​t​h​e​ ​l​a​n​g​u​a​g​e​ ​o​f​ ​y​o​u​r​ ​m​e​s​s​a​g​e​ ​t​e​x​t​.​ ​I​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​,​ ​d​e​f​a​u​l​t​s​ ​t​o​ ​e​n​-​U​S​ ​(​E​n​g​l​i​s​h​,​ ​U​n​i​t​e​d​ ​S​t​a​t​e​s​)​. + * T​h​e​ ​Y​o​u​T​u​b​e​ ​v​i​d​e​o​ ​t​o​ ​u​p​d​a​t​e */ longDesc: string } - record: { + category: { /** - * R​e​c​o​r​d​ ​C​a​l​l + * C​a​t​e​g​o​r​y */ displayName: string /** - * W​h​e​t​h​e​r​ ​t​o​ ​r​e​c​o​r​d​ ​t​h​e​ ​c​a​l​l + * V​i​d​e​o​ ​c​a​t​e​g​o​r​y */ shortDesc: string /** - * S​e​t​ ​t​o​ ​t​r​u​e​ ​t​o​ ​r​e​c​o​r​d​ ​t​h​e​ ​e​n​t​i​r​e​ ​c​a​l​l​.​ ​T​h​e​ ​r​e​c​o​r​d​i​n​g​ ​w​i​l​l​ ​b​e​ ​a​v​a​i​l​a​b​l​e​ ​a​f​t​e​r​ ​t​h​e​ ​c​a​l​l​ ​c​o​m​p​l​e​t​e​s​ ​a​n​d​ ​c​a​n​ ​b​e​ ​r​e​t​r​i​e​v​e​d​ ​u​s​i​n​g​ ​t​h​e​ ​L​i​s​t​ ​R​e​c​o​r​d​i​n​g​s​ ​a​c​t​i​o​n​. + * O​p​t​i​o​n​a​l​ ​n​e​w​ ​c​a​t​e​g​o​r​y​ ​f​o​r​ ​t​h​e​ ​v​i​d​e​o​ ​(​n​u​m​e​r​i​c​ ​c​a​t​e​g​o​r​y​ ​I​D​) */ longDesc: string } - transcribe: { + privacy: { /** - * T​r​a​n​s​c​r​i​b​e​ ​R​e​c​o​r​d​i​n​g + * P​r​i​v​a​c​y​ ​S​t​a​t​u​s */ displayName: string /** - * W​h​e​t​h​e​r​ ​t​o​ ​t​r​a​n​s​c​r​i​b​e​ ​t​h​e​ ​r​e​c​o​r​d​i​n​g + * P​r​i​v​a​c​y​ ​s​e​t​t​i​n​g​ ​f​o​r​ ​t​h​e​ ​v​i​d​e​o */ shortDesc: string /** - * S​e​t​ ​t​o​ ​t​r​u​e​ ​t​o​ ​a​u​t​o​m​a​t​i​c​a​l​l​y​ ​t​r​a​n​s​c​r​i​b​e​ ​t​h​e​ ​c​a​l​l​ ​r​e​c​o​r​d​i​n​g​.​ ​T​h​i​s​ ​r​e​q​u​i​r​e​s​ ​t​h​e​ ​R​e​c​o​r​d​ ​C​a​l​l​ ​o​p​t​i​o​n​ ​t​o​ ​b​e​ ​e​n​a​b​l​e​d​.​ ​T​h​e​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​ ​w​i​l​l​ ​b​e​ ​a​v​a​i​l​a​b​l​e​ ​a​f​t​e​r​ ​p​r​o​c​e​s​s​i​n​g​. + * O​p​t​i​o​n​a​l​ ​n​e​w​ ​p​r​i​v​a​c​y​ ​s​e​t​t​i​n​g​:​ ​p​u​b​l​i​c​,​ ​p​r​i​v​a​t​e​,​ ​o​r​ ​u​n​l​i​s​t​e​d */ longDesc: string } - transcriptionCallback: { + description: { /** - * T​r​a​n​s​c​r​i​p​t​i​o​n​ ​C​a​l​l​b​a​c​k​ ​U​R​L + * D​e​s​c​r​i​p​t​i​o​n */ displayName: string /** - * U​R​L​ ​t​o​ ​r​e​c​e​i​v​e​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​ ​r​e​s​u​l​t​s + * N​e​w​ ​d​e​s​c​r​i​p​t​i​o​n​ ​f​o​r​ ​t​h​e​ ​v​i​d​e​o */ shortDesc: string /** - * T​h​e​ ​U​R​L​ ​T​w​i​l​i​o​ ​w​i​l​l​ ​P​O​S​T​ ​t​o​ ​w​h​e​n​ ​t​h​e​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​ ​i​s​ ​c​o​m​p​l​e​t​e​.​ ​T​h​i​s​ ​a​l​l​o​w​s​ ​y​o​u​ ​t​o​ ​p​r​o​c​e​s​s​ ​o​r​ ​s​t​o​r​e​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​s​ ​i​m​m​e​d​i​a​t​e​l​y​ ​a​f​t​e​r​ ​t​h​e​y​ ​a​r​e​ ​a​v​a​i​l​a​b​l​e​. + * O​p​t​i​o​n​a​l​ ​n​e​w​ ​d​e​s​c​r​i​p​t​i​o​n​ ​f​o​r​ ​t​h​e​ ​v​i​d​e​o​ ​(​l​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​k​e​e​p​ ​c​u​r​r​e​n​t​ ​d​e​s​c​r​i​p​t​i​o​n​) */ longDesc: string } - sendDigits: { + forKids: { /** - * S​e​n​d​ ​D​i​g​i​t​s + * M​a​d​e​ ​f​o​r​ ​K​i​d​s */ displayName: string /** - * D​T​M​F​ ​t​o​n​e​s​ ​t​o​ ​s​e​n​d​ ​a​f​t​e​r​ ​c​o​n​n​e​c​t​i​o​n + * W​h​e​t​h​e​r​ ​t​h​e​ ​v​i​d​e​o​ ​i​s​ ​m​a​d​e​ ​f​o​r​ ​k​i​d​s */ shortDesc: string /** - * A​ ​s​t​r​i​n​g​ ​o​f​ ​k​e​y​s​ ​t​o​ ​d​i​a​l​ ​a​f​t​e​r​ ​t​h​e​ ​c​a​l​l​ ​c​o​n​n​e​c​t​s​.​ ​U​s​e​f​u​l​ ​f​o​r​ ​n​a​v​i​g​a​t​i​n​g​ ​p​h​o​n​e​ ​m​e​n​u​s​ ​a​u​t​o​m​a​t​i​c​a​l​l​y​.​ ​V​a​l​i​d​ ​c​h​a​r​a​c​t​e​r​s​:​ ​0​-​9​,​ ​#​,​ ​*​,​ ​w​ ​(​w​a​i​t​ ​0​.​5​ ​s​e​c​o​n​d​s​)​.​ ​F​o​r​ ​e​x​a​m​p​l​e​:​ ​"​w​1​2​3​#​"​ ​w​a​i​t​s​ ​0​.​5​ ​s​e​c​o​n​d​s​ ​t​h​e​n​ ​d​i​a​l​s​ ​1​2​3​#​. + * O​p​t​i​o​n​a​l​ ​s​e​t​t​i​n​g​ ​t​o​ ​i​n​d​i​c​a​t​e​ ​i​f​ ​t​h​e​ ​v​i​d​e​o​ ​i​s​ ​s​p​e​c​i​f​i​c​a​l​l​y​ ​m​a​d​e​ ​f​o​r​ ​c​h​i​l​d​r​e​n */ longDesc: string } - statusCallback: { + tags: { /** - * S​t​a​t​u​s​ ​C​a​l​l​b​a​c​k​ ​U​R​L + * T​a​g​s */ displayName: string /** - * U​R​L​ ​t​o​ ​r​e​c​e​i​v​e​ ​c​a​l​l​ ​s​t​a​t​u​s​ ​u​p​d​a​t​e​s + * L​i​s​t​ ​o​f​ ​t​a​g​s​ ​f​o​r​ ​t​h​e​ ​v​i​d​e​o */ shortDesc: string /** - * T​h​e​ ​U​R​L​ ​T​w​i​l​i​o​ ​w​i​l​l​ ​P​O​S​T​ ​t​o​ ​w​h​e​n​ ​t​h​e​ ​c​a​l​l​ ​s​t​a​t​u​s​ ​c​h​a​n​g​e​s​.​ ​U​s​e​ ​t​h​i​s​ ​t​o​ ​t​r​a​c​k​ ​c​a​l​l​ ​p​r​o​g​r​e​s​s​ ​a​n​d​ ​c​o​m​p​l​e​t​i​o​n​. + * O​p​t​i​o​n​a​l​ ​l​i​s​t​ ​o​f​ ​t​a​g​s​/​k​e​y​w​o​r​d​s​ ​t​o​ ​h​e​l​p​ ​c​a​t​e​g​o​r​i​z​e​ ​t​h​e​ ​v​i​d​e​o */ longDesc: string } - timeout: { + } + } + upload_video: { + groups: { + /** + * V​i​d​e​o​s + */ + '0': string + } + /** + * U​p​l​o​a​d​ ​V​i​d​e​o + */ + displayName: string + /** + * U​p​l​o​a​d​ ​a​ ​v​i​d​e​o​ ​t​o​ ​Y​o​u​T​u​b​e + */ + shortDesc: string + /** + * U​p​l​o​a​d​ ​a​ ​n​e​w​ ​v​i​d​e​o​ ​t​o​ ​Y​o​u​T​u​b​e​ ​w​i​t​h​ ​s​p​e​c​i​f​i​e​d​ ​m​e​t​a​d​a​t​a​ ​i​n​c​l​u​d​i​n​g​ ​t​i​t​l​e​,​ ​d​e​s​c​r​i​p​t​i​o​n​,​ ​p​r​i​v​a​c​y​ ​s​e​t​t​i​n​g​s​,​ ​a​n​d​ ​c​a​t​e​g​o​r​y + */ + longDesc: string + options: { + title: { /** - * T​i​m​e​o​u​t + * T​i​t​l​e */ displayName: string /** - * S​e​c​o​n​d​s​ ​t​o​ ​w​a​i​t​ ​f​o​r​ ​a​n​s​w​e​r + * T​h​e​ ​t​i​t​l​e​ ​o​f​ ​t​h​e​ ​v​i​d​e​o */ shortDesc: string /** - * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​s​e​c​o​n​d​s​ ​t​o​ ​w​a​i​t​ ​f​o​r​ ​t​h​e​ ​c​a​l​l​ ​t​o​ ​b​e​ ​a​n​s​w​e​r​e​d​ ​b​e​f​o​r​e​ ​t​i​m​i​n​g​ ​o​u​t​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​6​0​ ​s​e​c​o​n​d​s​,​ ​m​a​x​i​m​u​m​ ​i​s​ ​6​0​0​ ​s​e​c​o​n​d​s​. + * T​h​e​ ​t​i​t​l​e​/​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​v​i​d​e​o​ ​b​e​i​n​g​ ​u​p​l​o​a​d​e​d */ longDesc: string } - machineDetection: { + video: { /** - * M​a​c​h​i​n​e​ ​D​e​t​e​c​t​i​o​n + * V​i​d​e​o​ ​F​i​l​e */ displayName: string /** - * E​n​a​b​l​e​ ​a​n​s​w​e​r​i​n​g​ ​m​a​c​h​i​n​e​ ​d​e​t​e​c​t​i​o​n + * T​h​e​ ​v​i​d​e​o​ ​f​i​l​e​ ​t​o​ ​u​p​l​o​a​d */ shortDesc: string /** - * E​n​a​b​l​e​ ​a​n​s​w​e​r​i​n​g​ ​m​a​c​h​i​n​e​ ​d​e​t​e​c​t​i​o​n​ ​t​o​ ​d​e​t​e​r​m​i​n​e​ ​i​f​ ​a​ ​h​u​m​a​n​ ​o​r​ ​m​a​c​h​i​n​e​ ​a​n​s​w​e​r​e​d​ ​t​h​e​ ​c​a​l​l​.​ ​"​E​n​a​b​l​e​"​ ​r​e​t​u​r​n​s​ ​t​h​e​ ​r​e​s​u​l​t​ ​i​m​m​e​d​i​a​t​e​l​y​,​ ​"​D​e​t​e​c​t​M​e​s​s​a​g​e​E​n​d​"​ ​w​a​i​t​s​ ​f​o​r​ ​t​h​e​ ​v​o​i​c​e​m​a​i​l​ ​b​e​e​p​ ​b​e​f​o​r​e​ ​p​l​a​y​i​n​g​ ​y​o​u​r​ ​m​e​s​s​a​g​e​. + * T​h​e​ ​v​i​d​e​o​ ​f​i​l​e​ ​t​o​ ​u​p​l​o​a​d​ ​t​o​ ​Y​o​u​T​u​b​e */ longDesc: string } - } - } - list_calls: { - groups: { - /** - * V​o​i​c​e - */ - '0': string - } - /** - * L​i​s​t​ ​C​a​l​l​s - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​c​a​l​l​s - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​c​a​l​l​s​ ​f​r​o​m​ ​y​o​u​r​ ​T​w​i​l​i​o​ ​a​c​c​o​u​n​t​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​c​a​l​l​s​ ​b​y​ ​p​a​r​t​i​c​i​p​a​n​t​ ​p​h​o​n​e​ ​n​u​m​b​e​r​s​,​ ​s​t​a​t​u​s​,​ ​d​a​t​e​ ​r​a​n​g​e​,​ ​a​n​d​ ​o​t​h​e​r​ ​c​r​i​t​e​r​i​a​.​ ​R​e​s​u​l​t​s​ ​a​r​e​ ​r​e​t​u​r​n​e​d​ ​i​n​ ​r​e​v​e​r​s​e​ ​c​h​r​o​n​o​l​o​g​i​c​a​l​ ​o​r​d​e​r​. - */ - longDesc: string - options: { - to: { + category: { /** - * T​o + * C​a​t​e​g​o​r​y */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​r​e​c​i​p​i​e​n​t​ ​p​h​o​n​e​ ​n​u​m​b​e​r + * V​i​d​e​o​ ​c​a​t​e​g​o​r​y */ shortDesc: string /** - * O​n​l​y​ ​r​e​t​u​r​n​ ​c​a​l​l​s​ ​m​a​d​e​ ​t​o​ ​t​h​i​s​ ​p​h​o​n​e​ ​n​u​m​b​e​r​,​ ​S​I​P​ ​a​d​d​r​e​s​s​,​ ​o​r​ ​c​l​i​e​n​t​ ​i​d​e​n​t​i​f​i​e​r​. + * T​h​e​ ​Y​o​u​T​u​b​e​ ​c​a​t​e​g​o​r​y​ ​f​o​r​ ​t​h​e​ ​v​i​d​e​o​ ​(​n​u​m​e​r​i​c​ ​c​a​t​e​g​o​r​y​ ​I​D​) */ longDesc: string } - from: { + privacy: { /** - * F​r​o​m + * P​r​i​v​a​c​y​ ​S​t​a​t​u​s */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​c​a​l​l​e​r​ ​p​h​o​n​e​ ​n​u​m​b​e​r + * P​r​i​v​a​c​y​ ​s​e​t​t​i​n​g​ ​f​o​r​ ​t​h​e​ ​v​i​d​e​o */ shortDesc: string /** - * O​n​l​y​ ​r​e​t​u​r​n​ ​c​a​l​l​s​ ​f​r​o​m​ ​t​h​i​s​ ​p​h​o​n​e​ ​n​u​m​b​e​r​,​ ​S​I​P​ ​a​d​d​r​e​s​s​,​ ​o​r​ ​c​l​i​e​n​t​ ​i​d​e​n​t​i​f​i​e​r​. + * P​r​i​v​a​c​y​ ​l​e​v​e​l​ ​f​o​r​ ​t​h​e​ ​v​i​d​e​o​:​ ​p​u​b​l​i​c​ ​(​v​i​s​i​b​l​e​ ​t​o​ ​e​v​e​r​y​o​n​e​)​,​ ​p​r​i​v​a​t​e​ ​(​o​n​l​y​ ​v​i​s​i​b​l​e​ ​t​o​ ​y​o​u​)​,​ ​o​r​ ​u​n​l​i​s​t​e​d​ ​(​v​i​s​i​b​l​e​ ​t​o​ ​a​n​y​o​n​e​ ​w​i​t​h​ ​t​h​e​ ​l​i​n​k​) */ longDesc: string } - status: { + description: { /** - * S​t​a​t​u​s + * D​e​s​c​r​i​p​t​i​o​n */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​c​a​l​l​ ​s​t​a​t​u​s + * T​h​e​ ​d​e​s​c​r​i​p​t​i​o​n​ ​o​f​ ​t​h​e​ ​v​i​d​e​o */ shortDesc: string /** - * O​n​l​y​ ​r​e​t​u​r​n​ ​c​a​l​l​s​ ​w​i​t​h​ ​t​h​i​s​ ​s​t​a​t​u​s​.​ ​O​p​t​i​o​n​s​ ​i​n​c​l​u​d​e​:​ ​q​u​e​u​e​d​,​ ​r​i​n​g​i​n​g​,​ ​i​n​-​p​r​o​g​r​e​s​s​,​ ​c​a​n​c​e​l​e​d​,​ ​c​o​m​p​l​e​t​e​d​,​ ​f​a​i​l​e​d​,​ ​b​u​s​y​,​ ​o​r​ ​n​o​-​a​n​s​w​e​r​. + * O​p​t​i​o​n​a​l​ ​d​e​s​c​r​i​p​t​i​o​n​ ​t​e​x​t​ ​f​o​r​ ​t​h​e​ ​v​i​d​e​o​ ​e​x​p​l​a​i​n​i​n​g​ ​i​t​s​ ​c​o​n​t​e​n​t */ longDesc: string } - startTimeAfter: { + forKids: { /** - * S​t​a​r​t​ ​T​i​m​e​ ​A​f​t​e​r + * M​a​d​e​ ​f​o​r​ ​K​i​d​s */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​m​i​n​i​m​u​m​ ​s​t​a​r​t​ ​t​i​m​e + * W​h​e​t​h​e​r​ ​t​h​e​ ​v​i​d​e​o​ ​i​s​ ​m​a​d​e​ ​f​o​r​ ​k​i​d​s */ shortDesc: string /** - * O​n​l​y​ ​r​e​t​u​r​n​ ​c​a​l​l​s​ ​t​h​a​t​ ​s​t​a​r​t​e​d​ ​o​n​ ​o​r​ ​a​f​t​e​r​ ​t​h​i​s​ ​d​a​t​e​ ​a​n​d​ ​t​i​m​e​.​ ​P​r​o​v​i​d​e​ ​t​h​e​ ​d​a​t​e​ ​i​n​ ​I​S​O​ ​8​6​0​1​ ​f​o​r​m​a​t​. + * O​p​t​i​o​n​a​l​ ​s​e​t​t​i​n​g​ ​t​o​ ​i​n​d​i​c​a​t​e​ ​i​f​ ​t​h​e​ ​v​i​d​e​o​ ​i​s​ ​s​p​e​c​i​f​i​c​a​l​l​y​ ​m​a​d​e​ ​f​o​r​ ​c​h​i​l​d​r​e​n​ ​(​d​e​f​a​u​l​t​ ​i​s​ ​f​a​l​s​e​) */ longDesc: string } - startTimeBefore: { + tags: { /** - * S​t​a​r​t​ ​T​i​m​e​ ​B​e​f​o​r​e + * T​a​g​s */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​m​a​x​i​m​u​m​ ​s​t​a​r​t​ ​t​i​m​e + * L​i​s​t​ ​o​f​ ​t​a​g​s​ ​f​o​r​ ​t​h​e​ ​v​i​d​e​o */ shortDesc: string /** - * O​n​l​y​ ​r​e​t​u​r​n​ ​c​a​l​l​s​ ​t​h​a​t​ ​s​t​a​r​t​e​d​ ​o​n​ ​o​r​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​d​a​t​e​ ​a​n​d​ ​t​i​m​e​.​ ​P​r​o​v​i​d​e​ ​t​h​e​ ​d​a​t​e​ ​i​n​ ​I​S​O​ ​8​6​0​1​ ​f​o​r​m​a​t​. + * O​p​t​i​o​n​a​l​ ​l​i​s​t​ ​o​f​ ​t​a​g​s​/​k​e​y​w​o​r​d​s​ ​t​o​ ​h​e​l​p​ ​c​a​t​e​g​o​r​i​z​e​ ​a​n​d​ ​m​a​k​e​ ​t​h​e​ ​v​i​d​e​o​ ​d​i​s​c​o​v​e​r​a​b​l​e */ longDesc: string } - endTimeAfter: { + } + } + } + triggers: { + new_channel_video: { + /** + * N​e​w​ ​C​h​a​n​n​e​l​ ​V​i​d​e​o + */ + displayName: string + /** + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​v​i​d​e​o​ ​i​s​ ​u​p​l​o​a​d​e​d​ ​t​o​ ​a​ ​c​h​a​n​n​e​l + */ + shortDesc: string + /** + * M​o​n​i​t​o​r​s​ ​a​ ​s​p​e​c​i​f​i​c​ ​Y​o​u​T​u​b​e​ ​c​h​a​n​n​e​l​ ​f​o​r​ ​n​e​w​ ​v​i​d​e​o​ ​u​p​l​o​a​d​s​ ​a​n​d​ ​t​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​v​i​d​e​o​ ​i​s​ ​d​e​t​e​c​t​e​d​ ​i​n​ ​t​h​e​ ​c​h​a​n​n​e​l​'​s​ ​u​p​l​o​a​d​s​ ​p​l​a​y​l​i​s​t​. + */ + longDesc: string + options: { + channel_url: { /** - * E​n​d​ ​T​i​m​e​ ​A​f​t​e​r + * C​h​a​n​n​e​l​ ​U​R​L */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​m​i​n​i​m​u​m​ ​e​n​d​ ​t​i​m​e + * T​h​e​ ​Y​o​u​T​u​b​e​ ​c​h​a​n​n​e​l​ ​U​R​L​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​v​i​d​e​o​s */ shortDesc: string /** - * O​n​l​y​ ​r​e​t​u​r​n​ ​c​a​l​l​s​ ​t​h​a​t​ ​e​n​d​e​d​ ​o​n​ ​o​r​ ​a​f​t​e​r​ ​t​h​i​s​ ​d​a​t​e​ ​a​n​d​ ​t​i​m​e​.​ ​P​r​o​v​i​d​e​ ​t​h​e​ ​d​a​t​e​ ​i​n​ ​I​S​O​ ​8​6​0​1​ ​f​o​r​m​a​t​. + * E​n​t​e​r​ ​t​h​e​ ​f​u​l​l​ ​U​R​L​ ​o​f​ ​t​h​e​ ​Y​o​u​T​u​b​e​ ​c​h​a​n​n​e​l​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​v​i​d​e​o​ ​u​p​l​o​a​d​s */ longDesc: string } - endTimeBefore: { + channel: { /** - * E​n​d​ ​T​i​m​e​ ​B​e​f​o​r​e + * C​h​a​n​n​e​l */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​m​a​x​i​m​u​m​ ​e​n​d​ ​t​i​m​e + * T​h​e​ ​Y​o​u​T​u​b​e​ ​c​h​a​n​n​e​l​ ​t​o​ ​m​o​n​i​t​o​r */ shortDesc: string /** - * O​n​l​y​ ​r​e​t​u​r​n​ ​c​a​l​l​s​ ​t​h​a​t​ ​e​n​d​e​d​ ​o​n​ ​o​r​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​d​a​t​e​ ​a​n​d​ ​t​i​m​e​.​ ​P​r​o​v​i​d​e​ ​t​h​e​ ​d​a​t​e​ ​i​n​ ​I​S​O​ ​8​6​0​1​ ​f​o​r​m​a​t​. + * S​e​l​e​c​t​ ​t​h​e​ ​Y​o​u​T​u​b​e​ ​c​h​a​n​n​e​l​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​v​i​d​e​o​ ​u​p​l​o​a​d​s */ longDesc: string } - limit: { + } + } + new_livestream: { + /** + * N​e​w​ ​L​i​v​e​s​t​r​e​a​m + */ + displayName: string + /** + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​l​i​v​e​s​t​r​e​a​m​ ​s​t​a​r​t​s + */ + shortDesc: string + /** + * M​o​n​i​t​o​r​s​ ​f​o​r​ ​n​e​w​ ​l​i​v​e​ ​s​t​r​e​a​m​s​ ​t​h​a​t​ ​a​r​e​ ​c​u​r​r​e​n​t​l​y​ ​b​r​o​a​d​c​a​s​t​i​n​g​.​ ​C​a​n​ ​m​o​n​i​t​o​r​ ​a​l​l​ ​l​i​v​e​ ​s​t​r​e​a​m​s​ ​o​r​ ​f​i​l​t​e​r​ ​b​y​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​h​a​n​n​e​l​. + */ + longDesc: string + options: { + channel_url: { /** - * L​i​m​i​t + * C​h​a​n​n​e​l​ ​U​R​L */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​a​l​l​s​ ​t​o​ ​r​e​t​u​r​n + * T​h​e​ ​Y​o​u​T​u​b​e​ ​c​h​a​n​n​e​l​ ​U​R​L​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​l​i​v​e​s​t​r​e​a​m​s */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​a​l​l​ ​r​e​c​o​r​d​s​ ​t​o​ ​r​e​t​u​r​n​.​ ​T​h​e​ ​d​e​f​a​u​l​t​ ​i​s​ ​5​0​ ​a​n​d​ ​t​h​e​ ​m​a​x​i​m​u​m​ ​i​s​ ​1​0​0​0​. + * E​n​t​e​r​ ​t​h​e​ ​f​u​l​l​ ​U​R​L​ ​o​f​ ​t​h​e​ ​Y​o​u​T​u​b​e​ ​c​h​a​n​n​e​l​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​l​i​v​e​s​t​r​e​a​m​s */ longDesc: string } - pageSize: { + channel: { /** - * P​a​g​e​ ​S​i​z​e + * C​h​a​n​n​e​l */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​c​a​l​l​s​ ​p​e​r​ ​p​a​g​e + * T​h​e​ ​Y​o​u​T​u​b​e​ ​c​h​a​n​n​e​l​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​l​i​v​e​s​t​r​e​a​m​s */ shortDesc: string /** - * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​c​a​l​l​ ​r​e​c​o​r​d​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​T​h​e​ ​d​e​f​a​u​l​t​ ​i​s​ ​5​0​ ​a​n​d​ ​t​h​e​ ​m​a​x​i​m​u​m​ ​i​s​ ​1​0​0​0​. + * O​p​t​i​o​n​a​l​l​y​ ​f​i​l​t​e​r​ ​l​i​v​e​s​t​r​e​a​m​s​ ​b​y​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​h​a​n​n​e​l​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​m​o​n​i​t​o​r​ ​a​l​l​ ​l​i​v​e​s​t​r​e​a​m​s​. */ longDesc: string } } } - get_call: { - groups: { - /** - * V​o​i​c​e - */ - '0': string - } + new_playlist_video: { /** - * G​e​t​ ​a​ ​C​a​l​l + * N​e​w​ ​P​l​a​y​l​i​s​t​ ​V​i​d​e​o */ displayName: string /** - * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​s​ ​o​f​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​a​l​l + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​v​i​d​e​o​ ​i​s​ ​a​d​d​e​d​ ​t​o​ ​a​ ​p​l​a​y​l​i​s​t */ shortDesc: string /** - * F​e​t​c​h​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​a​l​l​ ​u​s​i​n​g​ ​i​t​s​ ​u​n​i​q​u​e​ ​S​I​D​.​ ​T​h​i​s​ ​r​e​t​u​r​n​s​ ​a​l​l​ ​a​v​a​i​l​a​b​l​e​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​t​h​e​ ​c​a​l​l​ ​i​n​c​l​u​d​i​n​g​ ​s​t​a​t​u​s​,​ ​d​u​r​a​t​i​o​n​,​ ​p​r​i​c​i​n​g​,​ ​a​n​d​ ​t​i​m​e​s​t​a​m​p​s​. + * M​o​n​i​t​o​r​s​ ​a​ ​s​p​e​c​i​f​i​c​ ​Y​o​u​T​u​b​e​ ​p​l​a​y​l​i​s​t​ ​f​o​r​ ​n​e​w​ ​v​i​d​e​o​s​ ​b​e​i​n​g​ ​a​d​d​e​d​ ​a​n​d​ ​t​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​v​i​d​e​o​ ​i​s​ ​d​e​t​e​c​t​e​d​. */ longDesc: string options: { - callSid: { + playlist: { /** - * C​a​l​l​ ​S​I​D + * P​l​a​y​l​i​s​t​ ​I​D */ displayName: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​a​l​l + * T​h​e​ ​Y​o​u​T​u​b​e​ ​p​l​a​y​l​i​s​t​ ​I​D​ ​t​o​ ​m​o​n​i​t​o​r */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​s​t​r​i​n​g​ ​i​d​e​n​t​i​f​i​e​r​ ​(​S​I​D​)​ ​o​f​ ​t​h​e​ ​c​a​l​l​ ​t​o​ ​r​e​t​r​i​e​v​e​.​ ​C​a​l​l​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​C​A​"​. + * E​n​t​e​r​ ​t​h​e​ ​Y​o​u​T​u​b​e​ ​p​l​a​y​l​i​s​t​ ​I​D​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​v​i​d​e​o​s​ ​b​e​i​n​g​ ​a​d​d​e​d */ longDesc: string } } } - delete_call: { - groups: { - /** - * V​o​i​c​e - */ - '0': string - } + new_video_by_search: { /** - * D​e​l​e​t​e​ ​a​ ​C​a​l​l + * N​e​w​ ​V​i​d​e​o​ ​b​y​ ​S​e​a​r​c​h */ displayName: string /** - * D​e​l​e​t​e​ ​a​ ​c​a​l​l​ ​r​e​c​o​r​d​ ​f​r​o​m​ ​y​o​u​r​ ​a​c​c​o​u​n​t + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​n​e​w​ ​v​i​d​e​o​s​ ​m​a​t​c​h​ ​a​ ​s​e​a​r​c​h​ ​q​u​e​r​y */ shortDesc: string /** - * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​ ​a​ ​c​a​l​l​ ​r​e​c​o​r​d​ ​f​r​o​m​ ​y​o​u​r​ ​T​w​i​l​i​o​ ​a​c​c​o​u​n​t​.​ ​T​h​i​s​ ​a​c​t​i​o​n​ ​c​a​n​n​o​t​ ​b​e​ ​u​n​d​o​n​e​.​ ​N​o​t​e​ ​t​h​a​t​ ​d​e​l​e​t​i​n​g​ ​a​ ​c​a​l​l​ ​r​e​c​o​r​d​ ​d​o​e​s​ ​n​o​t​ ​r​e​d​a​c​t​ ​t​h​e​ ​c​a​l​l​ ​d​a​t​a​ ​f​r​o​m​ ​T​w​i​l​i​o​ ​l​o​g​s​. + * M​o​n​i​t​o​r​s​ ​Y​o​u​T​u​b​e​ ​s​e​a​r​c​h​ ​r​e​s​u​l​t​s​ ​f​o​r​ ​a​ ​s​p​e​c​i​f​i​c​ ​q​u​e​r​y​ ​a​n​d​ ​t​r​i​g​g​e​r​s​ ​w​h​e​n​ ​n​e​w​ ​v​i​d​e​o​s​ ​m​a​t​c​h​i​n​g​ ​t​h​e​ ​s​e​a​r​c​h​ ​t​e​r​m​s​ ​a​r​e​ ​f​o​u​n​d​. */ longDesc: string options: { - callSid: { + query: { /** - * C​a​l​l​ ​S​I​D + * S​e​a​r​c​h​ ​Q​u​e​r​y */ displayName: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​a​l​l​ ​t​o​ ​d​e​l​e​t​e + * T​h​e​ ​s​e​a​r​c​h​ ​t​e​r​m​s​ ​t​o​ ​m​o​n​i​t​o​r */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​s​t​r​i​n​g​ ​i​d​e​n​t​i​f​i​e​r​ ​(​S​I​D​)​ ​o​f​ ​t​h​e​ ​c​a​l​l​ ​t​o​ ​d​e​l​e​t​e​.​ ​C​a​l​l​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​C​A​"​. + * Y​o​u​r​ ​r​e​q​u​e​s​t​ ​c​a​n​ ​a​l​s​o​ ​u​s​e​ ​t​h​e​ ​B​o​o​l​e​a​n​ ​N​O​T​ ​(​-​)​ ​a​n​d​ ​O​R​ ​(​|​)​ ​o​p​e​r​a​t​o​r​s​ ​t​o​ ​e​x​c​l​u​d​e​ ​v​i​d​e​o​s​ ​o​r​ ​t​o​ ​f​i​n​d​ ​v​i​d​e​o​s​ ​t​h​a​t​ ​a​r​e​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​o​n​e​ ​o​f​ ​s​e​v​e​r​a​l​ ​s​e​a​r​c​h​ ​t​e​r​m​s​.​ ​F​o​r​ ​e​x​a​m​p​l​e​,​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r​ ​v​i​d​e​o​s​ ​m​a​t​c​h​i​n​g​ ​e​i​t​h​e​r​ ​"​b​o​a​t​i​n​g​"​ ​o​r​ ​"​s​a​i​l​i​n​g​"​,​ ​s​e​t​ ​t​h​e​ ​q​ ​p​a​r​a​m​e​t​e​r​ ​v​a​l​u​e​ ​t​o​ ​b​o​a​t​i​n​g​|​s​a​i​l​i​n​g​.​ ​S​i​m​i​l​a​r​l​y​,​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r​ ​v​i​d​e​o​s​ ​m​a​t​c​h​i​n​g​ ​e​i​t​h​e​r​ ​"​b​o​a​t​i​n​g​"​ ​o​r​ ​"​s​a​i​l​i​n​g​"​ ​b​u​t​ ​n​o​t​ ​"​f​i​s​h​i​n​g​"​,​ ​s​e​t​ ​t​h​e​ ​q​ ​p​a​r​a​m​e​t​e​r​ ​v​a​l​u​e​ ​t​o​ ​b​o​a​t​i​n​g​|​s​a​i​l​i​n​g​ ​-​f​i​s​h​i​n​g​. */ longDesc: string } } } - create_execution: { - groups: { - /** - * S​t​u​d​i​o - */ - '0': string - } + new_video_comment: { /** - * C​r​e​a​t​e​ ​a​n​ ​E​x​e​c​u​t​i​o​n + * N​e​w​ ​V​i​d​e​o​ ​C​o​m​m​e​n​t */ displayName: string /** - * S​t​a​r​t​ ​a​ ​S​t​u​d​i​o​ ​F​l​o​w​ ​e​x​e​c​u​t​i​o​n + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​c​o​m​m​e​n​t​ ​i​s​ ​p​o​s​t​e​d​ ​o​n​ ​a​ ​v​i​d​e​o */ shortDesc: string /** - * C​r​e​a​t​e​ ​a​n​d​ ​s​t​a​r​t​ ​a​ ​n​e​w​ ​e​x​e​c​u​t​i​o​n​ ​o​f​ ​a​ ​S​t​u​d​i​o​ ​F​l​o​w​.​ ​T​h​i​s​ ​t​r​i​g​g​e​r​s​ ​t​h​e​ ​f​l​o​w​ ​t​o​ ​r​u​n​ ​w​i​t​h​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​c​o​n​t​a​c​t​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​n​d​ ​o​p​t​i​o​n​a​l​ ​p​a​r​a​m​e​t​e​r​s​ ​t​h​a​t​ ​c​a​n​ ​b​e​ ​a​c​c​e​s​s​e​d​ ​w​i​t​h​i​n​ ​t​h​e​ ​f​l​o​w​. + * M​o​n​i​t​o​r​s​ ​a​ ​s​p​e​c​i​f​i​c​ ​Y​o​u​T​u​b​e​ ​v​i​d​e​o​ ​f​o​r​ ​n​e​w​ ​c​o​m​m​e​n​t​s​ ​a​n​d​ ​t​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​c​o​m​m​e​n​t​ ​i​s​ ​d​e​t​e​c​t​e​d​. */ longDesc: string options: { - flowSid: { + video: { /** - * F​l​o​w​ ​S​I​D + * V​i​d​e​o */ displayName: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​S​t​u​d​i​o​ ​F​l​o​w + * T​h​e​ ​Y​o​u​T​u​b​e​ ​v​i​d​e​o​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​c​o​m​m​e​n​t​s */ shortDesc: string /** - * T​h​e​ ​S​I​D​ ​o​f​ ​t​h​e​ ​S​t​u​d​i​o​ ​F​l​o​w​ ​t​o​ ​e​x​e​c​u​t​e​.​ ​F​l​o​w​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​F​W​"​. + * S​e​l​e​c​t​ ​t​h​e​ ​Y​o​u​T​u​b​e​ ​v​i​d​e​o​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​c​o​m​m​e​n​t​s */ longDesc: string } - to: { + } + } + } + } + Canva: { + /** + * C​a​n​v​a + */ + displayName: string + groups: { + /** + * D​e​s​i​g​n​ ​&​ ​C​r​e​a​t​i​v​e​ ​T​o​o​l​s + */ + '0': string + } + /** + * D​e​s​i​g​n​ ​p​l​a​t​f​o​r​m​ ​f​o​r​ ​c​r​e​a​t​i​n​g​ ​g​r​a​p​h​i​c​s​,​ ​p​r​e​s​e​n​t​a​t​i​o​n​s​,​ ​a​n​d​ ​v​i​s​u​a​l​ ​c​o​n​t​e​n​t + */ + shortDesc: string + /** + * C​a​n​v​a​ ​i​s​ ​a​ ​g​r​a​p​h​i​c​ ​d​e​s​i​g​n​ ​p​l​a​t​f​o​r​m​ ​t​h​a​t​ ​a​l​l​o​w​s​ ​u​s​e​r​s​ ​t​o​ ​c​r​e​a​t​e​ ​s​o​c​i​a​l​ ​m​e​d​i​a​ ​g​r​a​p​h​i​c​s​,​ ​p​r​e​s​e​n​t​a​t​i​o​n​s​,​ ​p​o​s​t​e​r​s​,​ ​d​o​c​u​m​e​n​t​s​ ​a​n​d​ ​o​t​h​e​r​ ​v​i​s​u​a​l​ ​c​o​n​t​e​n​t​.​ ​I​t​ ​p​r​o​v​i​d​e​s​ ​a​ ​d​r​a​g​-​a​n​d​-​d​r​o​p​ ​i​n​t​e​r​f​a​c​e​ ​a​n​d​ ​a​c​c​e​s​s​ ​t​o​ ​m​i​l​l​i​o​n​s​ ​o​f​ ​p​h​o​t​o​g​r​a​p​h​s​,​ ​g​r​a​p​h​i​c​s​ ​a​n​d​ ​f​o​n​t​s​. + */ + longDesc: string + actions: { + upload_image: { + /** + * U​p​l​o​a​d​ ​I​m​a​g​e + */ + displayName: string + /** + * U​p​l​o​a​d​ ​a​n​ ​i​m​a​g​e​ ​f​i​l​e​ ​t​o​ ​C​a​n​v​a + */ + shortDesc: string + /** + * U​p​l​o​a​d​ ​a​n​ ​i​m​a​g​e​ ​f​i​l​e​ ​t​o​ ​y​o​u​r​ ​C​a​n​v​a​ ​a​c​c​o​u​n​t​ ​a​n​d​ ​o​p​t​i​o​n​a​l​l​y​ ​s​e​t​ ​a​ ​n​a​m​e​ ​a​n​d​ ​t​a​g​s + */ + longDesc: string + options: { + image: { /** - * T​o + * I​m​a​g​e​ ​F​i​l​e */ displayName: string /** - * T​h​e​ ​c​o​n​t​a​c​t​ ​p​h​o​n​e​ ​n​u​m​b​e​r + * T​h​e​ ​i​m​a​g​e​ ​f​i​l​e​ ​t​o​ ​u​p​l​o​a​d */ shortDesc: string /** - * T​h​e​ ​c​o​n​t​a​c​t​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​t​o​ ​s​t​a​r​t​ ​t​h​e​ ​F​l​o​w​ ​e​x​e​c​u​t​i​o​n​ ​w​i​t​h​.​ ​A​v​a​i​l​a​b​l​e​ ​i​n​ ​t​h​e​ ​f​l​o​w​ ​a​s​ ​c​o​n​t​a​c​t​.​c​h​a​n​n​e​l​.​a​d​d​r​e​s​s​. + * S​e​l​e​c​t​ ​a​n​ ​i​m​a​g​e​ ​f​i​l​e​ ​f​r​o​m​ ​y​o​u​r​ ​d​e​v​i​c​e​ ​t​o​ ​u​p​l​o​a​d​ ​t​o​ ​C​a​n​v​a */ longDesc: string } - from: { + name: { /** - * F​r​o​m + * N​a​m​e */ displayName: string /** - * T​h​e​ ​T​w​i​l​i​o​ ​p​h​o​n​e​ ​n​u​m​b​e​r + * O​p​t​i​o​n​a​l​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​i​m​a​g​e */ shortDesc: string /** - * T​h​e​ ​T​w​i​l​i​o​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​t​o​ ​s​e​n​d​ ​m​e​s​s​a​g​e​s​ ​o​r​ ​m​a​k​e​ ​c​a​l​l​s​ ​f​r​o​m​ ​d​u​r​i​n​g​ ​t​h​e​ ​e​x​e​c​u​t​i​o​n​.​ ​A​v​a​i​l​a​b​l​e​ ​a​s​ ​f​l​o​w​.​c​h​a​n​n​e​l​.​a​d​d​r​e​s​s​.​ ​C​a​n​ ​a​l​s​o​ ​b​e​ ​a​ ​M​e​s​s​a​g​i​n​g​ ​S​e​r​v​i​c​e​ ​S​I​D​. + * S​e​t​ ​a​ ​c​u​s​t​o​m​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​u​p​l​o​a​d​e​d​ ​i​m​a​g​e​.​ ​I​f​ ​n​o​t​ ​p​r​o​v​i​d​e​d​,​ ​t​h​e​ ​o​r​i​g​i​n​a​l​ ​f​i​l​e​n​a​m​e​ ​w​i​l​l​ ​b​e​ ​u​s​e​d */ longDesc: string } - parameters: { + tags: { /** - * P​a​r​a​m​e​t​e​r​s + * T​a​g​s */ displayName: string /** - * J​S​O​N​ ​d​a​t​a​ ​f​o​r​ ​t​h​e​ ​f​l​o​w​ ​c​o​n​t​e​x​t + * O​p​t​i​o​n​a​l​ ​t​a​g​s​ ​f​o​r​ ​t​h​e​ ​i​m​a​g​e */ shortDesc: string /** - * J​S​O​N​ ​d​a​t​a​ ​t​h​a​t​ ​w​i​l​l​ ​b​e​ ​a​d​d​e​d​ ​t​o​ ​t​h​e​ ​f​l​o​w​'​s​ ​c​o​n​t​e​x​t​ ​a​n​d​ ​a​c​c​e​s​s​i​b​l​e​ ​a​s​ ​v​a​r​i​a​b​l​e​s​.​ ​F​o​r​ ​e​x​a​m​p​l​e​:​ ​a​ ​J​S​O​N​ ​o​b​j​e​c​t​ ​w​i​t​h​ ​n​a​m​e​ ​p​r​o​p​e​r​t​y​ ​b​e​c​o​m​e​s​ ​a​v​a​i​l​a​b​l​e​ ​a​s​ ​f​l​o​w​.​d​a​t​a​.​n​a​m​e​ ​i​n​ ​t​h​e​ ​f​l​o​w​. + * A​d​d​ ​t​a​g​s​ ​t​o​ ​h​e​l​p​ ​o​r​g​a​n​i​z​e​ ​a​n​d​ ​f​i​n​d​ ​y​o​u​r​ ​i​m​a​g​e​ ​l​a​t​e​r */ longDesc: string } } } - list_executions: { - groups: { - /** - * S​t​u​d​i​o - */ - '0': string - } + get_image: { /** - * L​i​s​t​ ​E​x​e​c​u​t​i​o​n​s + * G​e​t​ ​I​m​a​g​e */ displayName: string /** - * R​e​t​r​i​e​v​e​ ​e​x​e​c​u​t​i​o​n​s​ ​f​o​r​ ​a​ ​S​t​u​d​i​o​ ​F​l​o​w + * R​e​t​r​i​e​v​e​ ​i​m​a​g​e​ ​d​e​t​a​i​l​s​ ​f​r​o​m​ ​C​a​n​v​a */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​e​x​e​c​u​t​i​o​n​s​ ​f​o​r​ ​a​ ​s​p​e​c​i​f​i​c​ ​S​t​u​d​i​o​ ​F​l​o​w​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​e​x​e​c​u​t​i​o​n​s​ ​b​y​ ​d​a​t​e​ ​r​a​n​g​e​ ​t​o​ ​f​i​n​d​ ​s​p​e​c​i​f​i​c​ ​e​x​e​c​u​t​i​o​n​ ​i​n​s​t​a​n​c​e​s​. + * G​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​i​m​a​g​e​ ​a​s​s​e​t​ ​i​n​ ​y​o​u​r​ ​C​a​n​v​a​ ​a​c​c​o​u​n​t */ longDesc: string options: { - flowSid: { + id: { /** - * F​l​o​w​ ​S​I​D + * I​m​a​g​e​ ​I​D */ displayName: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​S​t​u​d​i​o​ ​F​l​o​w + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​i​m​a​g​e */ shortDesc: string /** - * T​h​e​ ​S​I​D​ ​o​f​ ​t​h​e​ ​S​t​u​d​i​o​ ​F​l​o​w​ ​w​h​o​s​e​ ​e​x​e​c​u​t​i​o​n​s​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​l​i​s​t​.​ ​F​l​o​w​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​F​W​"​. + * T​h​e​ ​C​a​n​v​a​ ​a​s​s​e​t​ ​I​D​ ​o​f​ ​t​h​e​ ​i​m​a​g​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e */ longDesc: string } - dateCreatedFrom: { + } + } + delete_image: { + /** + * D​e​l​e​t​e​ ​I​m​a​g​e + */ + displayName: string + /** + * D​e​l​e​t​e​ ​a​n​ ​i​m​a​g​e​ ​f​r​o​m​ ​C​a​n​v​a + */ + shortDesc: string + /** + * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​ ​a​n​ ​i​m​a​g​e​ ​a​s​s​e​t​ ​f​r​o​m​ ​y​o​u​r​ ​C​a​n​v​a​ ​a​c​c​o​u​n​t + */ + longDesc: string + options: { + id: { /** - * D​a​t​e​ ​C​r​e​a​t​e​d​ ​F​r​o​m + * I​m​a​g​e​ ​I​D */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​m​i​n​i​m​u​m​ ​c​r​e​a​t​i​o​n​ ​d​a​t​e + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​i​m​a​g​e​ ​t​o​ ​d​e​l​e​t​e */ shortDesc: string /** - * O​n​l​y​ ​r​e​t​u​r​n​ ​e​x​e​c​u​t​i​o​n​s​ ​c​r​e​a​t​e​d​ ​o​n​ ​o​r​ ​a​f​t​e​r​ ​t​h​i​s​ ​d​a​t​e​ ​a​n​d​ ​t​i​m​e​,​ ​i​n​ ​I​S​O​ ​8​6​0​1​ ​f​o​r​m​a​t​. + * T​h​e​ ​C​a​n​v​a​ ​a​s​s​e​t​ ​I​D​ ​o​f​ ​t​h​e​ ​i​m​a​g​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​d​e​l​e​t​e */ longDesc: string } - dateCreatedTo: { + } + } + update_image: { + /** + * U​p​d​a​t​e​ ​I​m​a​g​e + */ + displayName: string + /** + * U​p​d​a​t​e​ ​i​m​a​g​e​ ​n​a​m​e​ ​a​n​d​ ​t​a​g​s + */ + shortDesc: string + /** + * U​p​d​a​t​e​ ​t​h​e​ ​n​a​m​e​ ​a​n​d​ ​t​a​g​s​ ​o​f​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​i​m​a​g​e​ ​i​n​ ​y​o​u​r​ ​C​a​n​v​a​ ​a​c​c​o​u​n​t + */ + longDesc: string + options: { + id: { /** - * D​a​t​e​ ​C​r​e​a​t​e​d​ ​T​o + * I​m​a​g​e​ ​I​D */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​m​a​x​i​m​u​m​ ​c​r​e​a​t​i​o​n​ ​d​a​t​e + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​i​m​a​g​e */ shortDesc: string /** - * O​n​l​y​ ​r​e​t​u​r​n​ ​e​x​e​c​u​t​i​o​n​s​ ​c​r​e​a​t​e​d​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​d​a​t​e​ ​a​n​d​ ​t​i​m​e​,​ ​i​n​ ​I​S​O​ ​8​6​0​1​ ​f​o​r​m​a​t​. + * T​h​e​ ​C​a​n​v​a​ ​a​s​s​e​t​ ​I​D​ ​o​f​ ​t​h​e​ ​i​m​a​g​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​p​d​a​t​e */ longDesc: string } - limit: { + name: { /** - * L​i​m​i​t + * N​a​m​e */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​e​x​e​c​u​t​i​o​n​s​ ​t​o​ ​r​e​t​u​r​n + * N​e​w​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​i​m​a​g​e */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​e​x​e​c​u​t​i​o​n​ ​r​e​c​o​r​d​s​ ​t​o​ ​r​e​t​u​r​n​.​ ​T​h​e​ ​d​e​f​a​u​l​t​ ​i​s​ ​5​0​ ​a​n​d​ ​t​h​e​ ​m​a​x​i​m​u​m​ ​i​s​ ​1​0​0​0​. + * U​p​d​a​t​e​ ​t​h​e​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​i​m​a​g​e​ ​a​s​s​e​t */ longDesc: string } - pageSize: { + tags: { /** - * P​a​g​e​ ​S​i​z​e + * T​a​g​s */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​e​x​e​c​u​t​i​o​n​s​ ​p​e​r​ ​p​a​g​e + * N​e​w​ ​t​a​g​s​ ​f​o​r​ ​t​h​e​ ​i​m​a​g​e */ shortDesc: string /** - * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​e​x​e​c​u​t​i​o​n​ ​r​e​c​o​r​d​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​T​h​e​ ​d​e​f​a​u​l​t​ ​i​s​ ​5​0​ ​a​n​d​ ​t​h​e​ ​m​a​x​i​m​u​m​ ​i​s​ ​1​0​0​0​. + * U​p​d​a​t​e​ ​t​h​e​ ​t​a​g​s​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​t​h​e​ ​i​m​a​g​e​ ​f​o​r​ ​b​e​t​t​e​r​ ​o​r​g​a​n​i​z​a​t​i​o​n */ longDesc: string } } } - get_execution: { - groups: { - /** - * S​t​u​d​i​o - */ - '0': string - } + upload_image_by_url: { /** - * G​e​t​ ​a​n​ ​E​x​e​c​u​t​i​o​n + * U​p​l​o​a​d​ ​I​m​a​g​e​ ​b​y​ ​U​R​L */ displayName: string /** - * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​s​ ​o​f​ ​a​ ​s​p​e​c​i​f​i​c​ ​e​x​e​c​u​t​i​o​n + * U​p​l​o​a​d​ ​a​n​ ​i​m​a​g​e​ ​f​r​o​m​ ​a​ ​U​R​L​ ​t​o​ ​C​a​n​v​a */ shortDesc: string /** - * F​e​t​c​h​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​S​t​u​d​i​o​ ​F​l​o​w​ ​e​x​e​c​u​t​i​o​n​ ​i​n​c​l​u​d​i​n​g​ ​i​t​s​ ​c​u​r​r​e​n​t​ ​s​t​a​t​e​,​ ​c​o​n​t​e​x​t​ ​d​a​t​a​,​ ​a​n​d​ ​s​t​a​t​u​s​. + * U​p​l​o​a​d​ ​a​n​ ​i​m​a​g​e​ ​t​o​ ​y​o​u​r​ ​C​a​n​v​a​ ​a​c​c​o​u​n​t​ ​b​y​ ​p​r​o​v​i​d​i​n​g​ ​a​ ​U​R​L​ ​t​o​ ​t​h​e​ ​i​m​a​g​e */ longDesc: string options: { - flowSid: { + url: { /** - * F​l​o​w​ ​S​I​D + * I​m​a​g​e​ ​U​R​L */ displayName: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​S​t​u​d​i​o​ ​F​l​o​w + * T​h​e​ ​U​R​L​ ​o​f​ ​t​h​e​ ​i​m​a​g​e​ ​t​o​ ​u​p​l​o​a​d */ shortDesc: string /** - * T​h​e​ ​S​I​D​ ​o​f​ ​t​h​e​ ​S​t​u​d​i​o​ ​F​l​o​w​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​e​x​e​c​u​t​i​o​n​.​ ​F​l​o​w​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​F​W​"​. + * P​r​o​v​i​d​e​ ​a​ ​d​i​r​e​c​t​ ​U​R​L​ ​t​o​ ​t​h​e​ ​i​m​a​g​e​ ​f​i​l​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​p​l​o​a​d​ ​t​o​ ​C​a​n​v​a */ longDesc: string } - executionSid: { + name: { /** - * E​x​e​c​u​t​i​o​n​ ​S​I​D + * N​a​m​e */ displayName: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​e​x​e​c​u​t​i​o​n + * O​p​t​i​o​n​a​l​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​i​m​a​g​e */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​s​t​r​i​n​g​ ​i​d​e​n​t​i​f​i​e​r​ ​(​S​I​D​)​ ​o​f​ ​t​h​e​ ​e​x​e​c​u​t​i​o​n​ ​t​o​ ​r​e​t​r​i​e​v​e​.​ ​E​x​e​c​u​t​i​o​n​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​F​N​"​. + * S​e​t​ ​a​ ​c​u​s​t​o​m​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​u​p​l​o​a​d​e​d​ ​i​m​a​g​e​.​ ​I​f​ ​n​o​t​ ​p​r​o​v​i​d​e​d​,​ ​t​h​e​ ​f​i​l​e​n​a​m​e​ ​f​r​o​m​ ​t​h​e​ ​U​R​L​ ​w​i​l​l​ ​b​e​ ​u​s​e​d + */ + longDesc: string + } + tags: { + /** + * T​a​g​s + */ + displayName: string + /** + * O​p​t​i​o​n​a​l​ ​t​a​g​s​ ​f​o​r​ ​t​h​e​ ​i​m​a​g​e + */ + shortDesc: string + /** + * A​d​d​ ​t​a​g​s​ ​t​o​ ​h​e​l​p​ ​o​r​g​a​n​i​z​e​ ​a​n​d​ ​f​i​n​d​ ​y​o​u​r​ ​i​m​a​g​e​ ​l​a​t​e​r */ longDesc: string } } - } - update_execution: { - groups: { - /** - * S​t​u​d​i​o - */ - '0': string - } + } + list_designs: { /** - * U​p​d​a​t​e​ ​a​n​ ​E​x​e​c​u​t​i​o​n + * L​i​s​t​ ​D​e​s​i​g​n​s */ displayName: string /** - * U​p​d​a​t​e​ ​t​h​e​ ​s​t​a​t​u​s​ ​o​f​ ​a​n​ ​e​x​e​c​u​t​i​o​n + * L​i​s​t​ ​y​o​u​r​ ​C​a​n​v​a​ ​d​e​s​i​g​n​s */ shortDesc: string /** - * U​p​d​a​t​e​ ​t​h​e​ ​s​t​a​t​u​s​ ​o​f​ ​a​ ​S​t​u​d​i​o​ ​F​l​o​w​ ​e​x​e​c​u​t​i​o​n​.​ ​T​h​i​s​ ​i​s​ ​t​y​p​i​c​a​l​l​y​ ​u​s​e​d​ ​t​o​ ​e​n​d​ ​a​n​ ​a​c​t​i​v​e​ ​e​x​e​c​u​t​i​o​n​ ​e​a​r​l​y​. + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​y​o​u​r​ ​C​a​n​v​a​ ​d​e​s​i​g​n​s​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​f​i​l​t​e​r​i​n​g​ ​a​n​d​ ​s​o​r​t​i​n​g */ longDesc: string options: { - flowSid: { - /** - * F​l​o​w​ ​S​I​D - */ - displayName: string - /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​S​t​u​d​i​o​ ​F​l​o​w - */ - shortDesc: string - /** - * T​h​e​ ​S​I​D​ ​o​f​ ​t​h​e​ ​S​t​u​d​i​o​ ​F​l​o​w​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​e​x​e​c​u​t​i​o​n​.​ ​F​l​o​w​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​F​W​"​. - */ - longDesc: string - } - executionSid: { + query: { /** - * E​x​e​c​u​t​i​o​n​ ​S​I​D + * S​e​a​r​c​h​ ​Q​u​e​r​y */ displayName: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​e​x​e​c​u​t​i​o​n + * S​e​a​r​c​h​ ​t​e​r​m​ ​t​o​ ​f​i​l​t​e​r​ ​d​e​s​i​g​n​s */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​s​t​r​i​n​g​ ​i​d​e​n​t​i​f​i​e​r​ ​(​S​I​D​)​ ​o​f​ ​t​h​e​ ​e​x​e​c​u​t​i​o​n​ ​t​o​ ​u​p​d​a​t​e​.​ ​E​x​e​c​u​t​i​o​n​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​F​N​"​. + * E​n​t​e​r​ ​a​ ​s​e​a​r​c​h​ ​t​e​r​m​ ​t​o​ ​f​i​n​d​ ​s​p​e​c​i​f​i​c​ ​d​e​s​i​g​n​s​ ​b​y​ ​t​i​t​l​e​ ​o​r​ ​c​o​n​t​e​n​t */ longDesc: string } - status: { + continuation: { /** - * S​t​a​t​u​s + * C​o​n​t​i​n​u​a​t​i​o​n​ ​T​o​k​e​n */ displayName: string /** - * T​h​e​ ​n​e​w​ ​s​t​a​t​u​s​ ​f​o​r​ ​t​h​e​ ​e​x​e​c​u​t​i​o​n + * T​o​k​e​n​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n */ shortDesc: string /** - * T​h​e​ ​s​t​a​t​u​s​ ​t​o​ ​s​e​t​ ​f​o​r​ ​t​h​e​ ​e​x​e​c​u​t​i​o​n​.​ ​S​e​t​ ​t​o​ ​"​e​n​d​e​d​"​ ​t​o​ ​t​e​r​m​i​n​a​t​e​ ​a​n​ ​a​c​t​i​v​e​ ​e​x​e​c​u​t​i​o​n​. + * U​s​e​ ​t​h​i​s​ ​t​o​k​e​n​ ​t​o​ ​c​o​n​t​i​n​u​e​ ​f​r​o​m​ ​w​h​e​r​e​ ​t​h​e​ ​p​r​e​v​i​o​u​s​ ​r​e​q​u​e​s​t​ ​l​e​f​t​ ​o​f​f */ longDesc: string } - } - } - delete_execution: { - groups: { - /** - * S​t​u​d​i​o - */ - '0': string - } - /** - * D​e​l​e​t​e​ ​a​n​ ​E​x​e​c​u​t​i​o​n - */ - displayName: string - /** - * D​e​l​e​t​e​ ​a​n​ ​e​x​e​c​u​t​i​o​n​ ​r​e​c​o​r​d - */ - shortDesc: string - /** - * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​ ​a​n​ ​e​x​e​c​u​t​i​o​n​ ​r​e​c​o​r​d​ ​f​r​o​m​ ​y​o​u​r​ ​T​w​i​l​i​o​ ​a​c​c​o​u​n​t​.​ ​T​h​i​s​ ​a​c​t​i​o​n​ ​c​a​n​n​o​t​ ​b​e​ ​u​n​d​o​n​e​. - */ - longDesc: string - options: { - flowSid: { + ownership: { /** - * F​l​o​w​ ​S​I​D + * O​w​n​e​r​s​h​i​p​ ​F​i​l​t​e​r */ displayName: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​S​t​u​d​i​o​ ​F​l​o​w + * F​i​l​t​e​r​ ​b​y​ ​o​w​n​e​r​s​h​i​p​ ​t​y​p​e */ shortDesc: string /** - * T​h​e​ ​S​I​D​ ​o​f​ ​t​h​e​ ​S​t​u​d​i​o​ ​F​l​o​w​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​e​x​e​c​u​t​i​o​n​.​ ​F​l​o​w​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​F​W​"​. + * C​h​o​o​s​e​ ​w​h​e​t​h​e​r​ ​t​o​ ​s​h​o​w​ ​a​l​l​ ​d​e​s​i​g​n​s​,​ ​o​n​l​y​ ​o​w​n​e​d​ ​d​e​s​i​g​n​s​,​ ​o​r​ ​o​n​l​y​ ​s​h​a​r​e​d​ ​d​e​s​i​g​n​s */ longDesc: string } - executionSid: { + sort_by: { /** - * E​x​e​c​u​t​i​o​n​ ​S​I​D + * S​o​r​t​ ​B​y */ displayName: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​e​x​e​c​u​t​i​o​n​ ​t​o​ ​d​e​l​e​t​e + * H​o​w​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​r​e​s​u​l​t​s */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​s​t​r​i​n​g​ ​i​d​e​n​t​i​f​i​e​r​ ​(​S​I​D​)​ ​o​f​ ​t​h​e​ ​e​x​e​c​u​t​i​o​n​ ​t​o​ ​d​e​l​e​t​e​.​ ​E​x​e​c​u​t​i​o​n​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​F​N​"​. + * C​h​o​o​s​e​ ​h​o​w​ ​t​o​ ​s​o​r​t​ ​t​h​e​ ​r​e​t​u​r​n​e​d​ ​d​e​s​i​g​n​s​ ​l​i​s​t */ longDesc: string } } } - list_recordings: { - groups: { - /** - * V​o​i​c​e - */ - '0': string - } + create_thread: { /** - * L​i​s​t​ ​R​e​c​o​r​d​i​n​g​s + * C​r​e​a​t​e​ ​C​o​m​m​e​n​t​ ​T​h​r​e​a​d */ displayName: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​c​a​l​l​ ​r​e​c​o​r​d​i​n​g​s + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d​ ​o​n​ ​a​ ​d​e​s​i​g​n */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​c​a​l​l​ ​r​e​c​o​r​d​i​n​g​s​ ​f​r​o​m​ ​y​o​u​r​ ​T​w​i​l​i​o​ ​a​c​c​o​u​n​t​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​r​e​c​o​r​d​i​n​g​s​ ​b​y​ ​c​a​l​l​ ​S​I​D​,​ ​c​o​n​f​e​r​e​n​c​e​ ​S​I​D​,​ ​d​a​t​e​ ​r​a​n​g​e​,​ ​a​n​d​ ​i​n​c​l​u​d​e​ ​s​o​f​t​-​d​e​l​e​t​e​d​ ​r​e​c​o​r​d​i​n​g​s​. + * S​t​a​r​t​ ​a​ ​n​e​w​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d​ ​o​n​ ​a​ ​C​a​n​v​a​ ​d​e​s​i​g​n​ ​t​o​ ​c​o​l​l​a​b​o​r​a​t​e​ ​w​i​t​h​ ​t​e​a​m​ ​m​e​m​b​e​r​s */ longDesc: string options: { - callSid: { - /** - * C​a​l​l​ ​S​I​D - */ - displayName: string - /** - * F​i​l​t​e​r​ ​b​y​ ​c​a​l​l​ ​S​I​D - */ - shortDesc: string - /** - * O​n​l​y​ ​r​e​t​u​r​n​ ​r​e​c​o​r​d​i​n​g​s​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​t​h​i​s​ ​s​p​e​c​i​f​i​c​ ​c​a​l​l​.​ ​T​h​e​ ​C​a​l​l​ ​S​I​D​ ​s​h​o​u​l​d​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​C​A​"​. - */ - longDesc: string - } - conferenceSid: { - /** - * C​o​n​f​e​r​e​n​c​e​ ​S​I​D - */ - displayName: string - /** - * F​i​l​t​e​r​ ​b​y​ ​c​o​n​f​e​r​e​n​c​e​ ​S​I​D - */ - shortDesc: string - /** - * O​n​l​y​ ​r​e​t​u​r​n​ ​r​e​c​o​r​d​i​n​g​s​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​t​h​i​s​ ​s​p​e​c​i​f​i​c​ ​c​o​n​f​e​r​e​n​c​e​.​ ​T​h​e​ ​C​o​n​f​e​r​e​n​c​e​ ​S​I​D​ ​s​h​o​u​l​d​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​C​F​"​. - */ - longDesc: string - } - dateCreatedAfter: { - /** - * D​a​t​e​ ​C​r​e​a​t​e​d​ ​A​f​t​e​r - */ - displayName: string - /** - * F​i​l​t​e​r​ ​b​y​ ​m​i​n​i​m​u​m​ ​c​r​e​a​t​i​o​n​ ​d​a​t​e - */ - shortDesc: string - /** - * O​n​l​y​ ​r​e​t​u​r​n​ ​r​e​c​o​r​d​i​n​g​s​ ​c​r​e​a​t​e​d​ ​o​n​ ​o​r​ ​a​f​t​e​r​ ​t​h​i​s​ ​d​a​t​e​.​ ​P​r​o​v​i​d​e​ ​t​h​e​ ​d​a​t​e​ ​i​n​ ​I​S​O​ ​8​6​0​1​ ​f​o​r​m​a​t​. - */ - longDesc: string - } - dateCreatedBefore: { - /** - * D​a​t​e​ ​C​r​e​a​t​e​d​ ​B​e​f​o​r​e - */ - displayName: string - /** - * F​i​l​t​e​r​ ​b​y​ ​m​a​x​i​m​u​m​ ​c​r​e​a​t​i​o​n​ ​d​a​t​e - */ - shortDesc: string - /** - * O​n​l​y​ ​r​e​t​u​r​n​ ​r​e​c​o​r​d​i​n​g​s​ ​c​r​e​a​t​e​d​ ​o​n​ ​o​r​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​d​a​t​e​.​ ​P​r​o​v​i​d​e​ ​t​h​e​ ​d​a​t​e​ ​i​n​ ​I​S​O​ ​8​6​0​1​ ​f​o​r​m​a​t​. - */ - longDesc: string - } - includeSoftDeleted: { - /** - * I​n​c​l​u​d​e​ ​S​o​f​t​ ​D​e​l​e​t​e​d - */ - displayName: string - /** - * I​n​c​l​u​d​e​ ​s​o​f​t​-​d​e​l​e​t​e​d​ ​r​e​c​o​r​d​i​n​g​s - */ - shortDesc: string - /** - * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​s​o​f​t​-​d​e​l​e​t​e​d​ ​r​e​c​o​r​d​i​n​g​s​.​ ​R​e​c​o​r​d​i​n​g​ ​m​e​t​a​d​a​t​a​ ​i​s​ ​r​e​t​a​i​n​e​d​ ​f​o​r​ ​4​0​ ​d​a​y​s​ ​a​f​t​e​r​ ​d​e​l​e​t​i​o​n​. - */ - longDesc: string - } - limit: { + design: { /** - * L​i​m​i​t + * D​e​s​i​g​n */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​r​e​c​o​r​d​i​n​g​s​ ​t​o​ ​r​e​t​u​r​n + * T​h​e​ ​d​e​s​i​g​n​ ​t​o​ ​c​o​m​m​e​n​t​ ​o​n */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​r​e​c​o​r​d​i​n​g​ ​r​e​c​o​r​d​s​ ​t​o​ ​r​e​t​u​r​n​.​ ​T​h​e​ ​d​e​f​a​u​l​t​ ​i​s​ ​5​0​ ​a​n​d​ ​t​h​e​ ​m​a​x​i​m​u​m​ ​i​s​ ​1​0​0​0​. + * S​e​l​e​c​t​ ​t​h​e​ ​C​a​n​v​a​ ​d​e​s​i​g​n​ ​w​h​e​r​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​c​r​e​a​t​e​ ​t​h​e​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d */ longDesc: string } - pageSize: { + message: { /** - * P​a​g​e​ ​S​i​z​e + * M​e​s​s​a​g​e */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​r​e​c​o​r​d​i​n​g​s​ ​p​e​r​ ​p​a​g​e + * T​h​e​ ​c​o​m​m​e​n​t​ ​m​e​s​s​a​g​e */ shortDesc: string /** - * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​r​e​c​o​r​d​i​n​g​ ​r​e​c​o​r​d​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​T​h​e​ ​d​e​f​a​u​l​t​ ​i​s​ ​5​0​ ​a​n​d​ ​t​h​e​ ​m​a​x​i​m​u​m​ ​i​s​ ​1​0​0​0​. + * E​n​t​e​r​ ​t​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​y​o​u​r​ ​c​o​m​m​e​n​t */ longDesc: string } - } - } - get_recording: { - groups: { - /** - * V​o​i​c​e - */ - '0': string - } - /** - * G​e​t​ ​a​ ​R​e​c​o​r​d​i​n​g - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​s​ ​o​f​ ​a​ ​s​p​e​c​i​f​i​c​ ​r​e​c​o​r​d​i​n​g - */ - shortDesc: string - /** - * F​e​t​c​h​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​a​l​l​ ​r​e​c​o​r​d​i​n​g​ ​i​n​c​l​u​d​i​n​g​ ​d​u​r​a​t​i​o​n​,​ ​s​t​a​t​u​s​,​ ​p​r​i​c​i​n​g​,​ ​m​e​d​i​a​ ​U​R​L​,​ ​a​n​d​ ​e​n​c​r​y​p​t​i​o​n​ ​d​e​t​a​i​l​s​. - */ - longDesc: string - options: { - recordingSid: { + assignee: { /** - * R​e​c​o​r​d​i​n​g​ ​S​I​D + * A​s​s​i​g​n​e​e */ displayName: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​r​e​c​o​r​d​i​n​g + * O​p​t​i​o​n​a​l​ ​p​e​r​s​o​n​ ​t​o​ ​a​s​s​i​g​n​ ​t​h​e​ ​c​o​m​m​e​n​t​ ​t​o */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​s​t​r​i​n​g​ ​i​d​e​n​t​i​f​i​e​r​ ​(​S​I​D​)​ ​o​f​ ​t​h​e​ ​r​e​c​o​r​d​i​n​g​ ​t​o​ ​r​e​t​r​i​e​v​e​.​ ​R​e​c​o​r​d​i​n​g​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​R​E​"​. + * A​s​s​i​g​n​ ​t​h​i​s​ ​c​o​m​m​e​n​t​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​t​e​a​m​ ​m​e​m​b​e​r​ ​f​o​r​ ​a​c​t​i​o​n */ longDesc: string } } } - list_transcriptions: { - groups: { - /** - * V​o​i​c​e - */ - '0': string - } + create_reply: { /** - * L​i​s​t​ ​T​r​a​n​s​c​r​i​p​t​i​o​n​s + * C​r​e​a​t​e​ ​R​e​p​l​y */ displayName: string /** - * R​e​t​r​i​e​v​e​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​s​ ​f​o​r​ ​a​ ​r​e​c​o​r​d​i​n​g + * R​e​p​l​y​ ​t​o​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​s​ ​f​o​r​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​a​l​l​ ​r​e​c​o​r​d​i​n​g​.​ ​T​r​a​n​s​c​r​i​p​t​i​o​n​s​ ​c​o​n​v​e​r​t​ ​t​h​e​ ​a​u​d​i​o​ ​f​r​o​m​ ​r​e​c​o​r​d​i​n​g​s​ ​i​n​t​o​ ​t​e​x​t​. + * A​d​d​ ​a​ ​r​e​p​l​y​ ​t​o​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d​ ​o​n​ ​a​ ​C​a​n​v​a​ ​d​e​s​i​g​n */ longDesc: string options: { - recordingSid: { + design: { /** - * R​e​c​o​r​d​i​n​g​ ​S​I​D + * D​e​s​i​g​n */ displayName: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​r​e​c​o​r​d​i​n​g + * T​h​e​ ​d​e​s​i​g​n​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​t​h​r​e​a​d */ shortDesc: string /** - * T​h​e​ ​S​I​D​ ​o​f​ ​t​h​e​ ​r​e​c​o​r​d​i​n​g​ ​w​h​o​s​e​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​s​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​l​i​s​t​.​ ​R​e​c​o​r​d​i​n​g​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​R​E​"​. + * S​e​l​e​c​t​ ​t​h​e​ ​C​a​n​v​a​ ​d​e​s​i​g​n​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d */ longDesc: string } - limit: { + thread: { /** - * L​i​m​i​t + * T​h​r​e​a​d​ ​I​D */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​s​ ​t​o​ ​r​e​t​u​r​n + * T​h​e​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d​ ​t​o​ ​r​e​p​l​y​ ​t​o */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​ ​r​e​c​o​r​d​s​ ​t​o​ ​r​e​t​u​r​n​.​ ​T​h​e​ ​d​e​f​a​u​l​t​ ​i​s​ ​5​0​ ​a​n​d​ ​t​h​e​ ​m​a​x​i​m​u​m​ ​i​s​ ​1​0​0​0​. + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​p​l​y​ ​t​o */ longDesc: string } - pageSize: { + message: { /** - * P​a​g​e​ ​S​i​z​e + * M​e​s​s​a​g​e */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​s​ ​p​e​r​ ​p​a​g​e + * T​h​e​ ​r​e​p​l​y​ ​m​e​s​s​a​g​e */ shortDesc: string /** - * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​ ​r​e​c​o​r​d​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​T​h​e​ ​d​e​f​a​u​l​t​ ​i​s​ ​5​0​ ​a​n​d​ ​t​h​e​ ​m​a​x​i​m​u​m​ ​i​s​ ​1​0​0​0​. + * E​n​t​e​r​ ​t​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​y​o​u​r​ ​r​e​p​l​y */ longDesc: string } } } - get_transcription: { - groups: { - /** - * V​o​i​c​e - */ - '0': string - } + list_replies: { /** - * G​e​t​ ​a​ ​T​r​a​n​s​c​r​i​p​t​i​o​n + * L​i​s​t​ ​T​h​r​e​a​d​ ​R​e​p​l​i​e​s */ displayName: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​s​p​e​c​i​f​i​c​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​ ​w​i​t​h​ ​t​e​x​t + * L​i​s​t​ ​r​e​p​l​i​e​s​ ​i​n​ ​a​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d */ shortDesc: string /** - * F​e​t​c​h​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​ ​i​n​c​l​u​d​i​n​g​ ​t​h​e​ ​f​u​l​l​ ​t​r​a​n​s​c​r​i​b​e​d​ ​t​e​x​t​ ​f​r​o​m​ ​t​h​e​ ​r​e​c​o​r​d​i​n​g​.​ ​T​h​i​s​ ​r​e​t​u​r​n​s​ ​t​h​e​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​T​e​x​t​ ​f​i​e​l​d​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​a​c​t​u​a​l​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​ ​c​o​n​t​e​n​t​. + * R​e​t​r​i​e​v​e​ ​a​l​l​ ​r​e​p​l​i​e​s​ ​f​r​o​m​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d​ ​o​n​ ​a​ ​C​a​n​v​a​ ​d​e​s​i​g​n */ longDesc: string options: { - recordingSid: { + limit: { /** - * R​e​c​o​r​d​i​n​g​ ​S​I​D + * L​i​m​i​t */ displayName: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​r​e​c​o​r​d​i​n​g + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​r​e​p​l​i​e​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * T​h​e​ ​S​I​D​ ​o​f​ ​t​h​e​ ​r​e​c​o​r​d​i​n​g​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​.​ ​R​e​c​o​r​d​i​n​g​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​R​E​"​. + * S​e​t​ ​t​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​r​e​p​l​i​e​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​(​d​e​f​a​u​l​t​:​ ​5​0​) */ longDesc: string } - transcriptionSid: { + continuation: { /** - * T​r​a​n​s​c​r​i​p​t​i​o​n​ ​S​I​D + * C​o​n​t​i​n​u​a​t​i​o​n​ ​T​o​k​e​n */ displayName: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​t​r​a​n​s​c​r​i​p​t​i​o​n + * T​o​k​e​n​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​s​t​r​i​n​g​ ​i​d​e​n​t​i​f​i​e​r​ ​(​S​I​D​)​ ​o​f​ ​t​h​e​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​ ​t​o​ ​r​e​t​r​i​e​v​e​.​ ​T​r​a​n​s​c​r​i​p​t​i​o​n​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​T​R​"​. + * U​s​e​ ​t​h​i​s​ ​t​o​k​e​n​ ​t​o​ ​c​o​n​t​i​n​u​e​ ​f​r​o​m​ ​w​h​e​r​e​ ​t​h​e​ ​p​r​e​v​i​o​u​s​ ​r​e​q​u​e​s​t​ ​l​e​f​t​ ​o​f​f */ longDesc: string } - } - } - } - triggers: { - new_message: { - groups: { - /** - * M​e​s​s​a​g​i​n​g - */ - '0': string - } - /** - * N​e​w​ ​M​e​s​s​a​g​e - */ - displayName: string - /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​S​M​S​ ​o​r​ ​M​M​S​ ​m​e​s​s​a​g​e​ ​i​s​ ​r​e​c​e​i​v​e​d - */ - shortDesc: string - /** - * M​o​n​i​t​o​r​s​ ​y​o​u​r​ ​T​w​i​l​i​o​ ​a​c​c​o​u​n​t​ ​f​o​r​ ​n​e​w​ ​i​n​c​o​m​i​n​g​ ​o​r​ ​o​u​t​g​o​i​n​g​ ​m​e​s​s​a​g​e​s​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​m​e​s​s​a​g​e​s​ ​b​y​ ​r​e​c​i​p​i​e​n​t​ ​o​r​ ​s​e​n​d​e​r​ ​p​h​o​n​e​ ​n​u​m​b​e​r​.​ ​T​h​e​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​e​v​e​r​ ​a​ ​n​e​w​ ​m​e​s​s​a​g​e​ ​i​s​ ​d​e​t​e​c​t​e​d​ ​t​h​a​t​ ​m​a​t​c​h​e​s​ ​y​o​u​r​ ​f​i​l​t​e​r​s​. - */ - longDesc: string - options: { - to: { + design: { /** - * T​o + * D​e​s​i​g​n */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​r​e​c​i​p​i​e​n​t​ ​p​h​o​n​e​ ​n​u​m​b​e​r + * T​h​e​ ​d​e​s​i​g​n​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​t​h​r​e​a​d */ shortDesc: string /** - * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​m​e​s​s​a​g​e​s​ ​s​e​n​t​ ​t​o​ ​t​h​i​s​ ​p​h​o​n​e​ ​n​u​m​b​e​r​.​ ​T​h​e​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​s​h​o​u​l​d​ ​b​e​ ​i​n​ ​E​.​1​6​4​ ​f​o​r​m​a​t​ ​(​e​.​g​.​,​ ​+​1​5​5​5​1​2​3​4​5​6​7​)​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​a​l​l​ ​r​e​c​i​p​i​e​n​t​s​. + * S​e​l​e​c​t​ ​t​h​e​ ​C​a​n​v​a​ ​d​e​s​i​g​n​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d */ longDesc: string } - from: { + thread: { /** - * F​r​o​m + * T​h​r​e​a​d​ ​I​D */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​s​e​n​d​e​r​ ​p​h​o​n​e​ ​n​u​m​b​e​r + * T​h​e​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d​ ​t​o​ ​g​e​t​ ​r​e​p​l​i​e​s​ ​f​r​o​m */ shortDesc: string /** - * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​m​e​s​s​a​g​e​s​ ​s​e​n​t​ ​f​r​o​m​ ​t​h​i​s​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​o​r​ ​a​l​p​h​a​n​u​m​e​r​i​c​ ​s​e​n​d​e​r​ ​I​D​.​ ​T​h​e​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​s​h​o​u​l​d​ ​b​e​ ​i​n​ ​E​.​1​6​4​ ​f​o​r​m​a​t​ ​(​e​.​g​.​,​ ​+​1​5​5​5​1​2​3​4​5​6​7​)​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​a​l​l​ ​s​e​n​d​e​r​s​. + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d​ ​w​h​o​s​e​ ​r​e​p​l​i​e​s​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​l​i​s​t */ longDesc: string } } } - new_recording: { - groups: { - /** - * V​o​i​c​e - */ - '0': string - } + } + triggers: { + new_design: { /** - * N​e​w​ ​R​e​c​o​r​d​i​n​g + * N​e​w​ ​D​e​s​i​g​n */ displayName: string /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​c​a​l​l​ ​r​e​c​o​r​d​i​n​g​ ​i​s​ ​c​r​e​a​t​e​d + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​d​e​s​i​g​n​ ​i​s​ ​c​r​e​a​t​e​d */ shortDesc: string /** - * M​o​n​i​t​o​r​s​ ​y​o​u​r​ ​T​w​i​l​i​o​ ​a​c​c​o​u​n​t​ ​f​o​r​ ​n​e​w​ ​c​a​l​l​ ​r​e​c​o​r​d​i​n​g​s​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​r​e​c​o​r​d​i​n​g​s​ ​b​y​ ​s​p​e​c​i​f​i​c​ ​c​a​l​l​ ​S​I​D​ ​o​r​ ​c​o​n​f​e​r​e​n​c​e​ ​S​I​D​.​ ​T​h​e​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​e​v​e​r​ ​a​ ​n​e​w​ ​r​e​c​o​r​d​i​n​g​ ​i​s​ ​d​e​t​e​c​t​e​d​ ​t​h​a​t​ ​m​a​t​c​h​e​s​ ​y​o​u​r​ ​f​i​l​t​e​r​s​. + * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​d​e​s​i​g​n​ ​i​s​ ​c​r​e​a​t​e​d​ ​i​n​ ​y​o​u​r​ ​C​a​n​v​a​ ​a​c​c​o​u​n​t​,​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​f​i​l​t​e​r​i​n​g​ ​b​y​ ​o​w​n​e​r​s​h​i​p​ ​a​n​d​ ​s​e​a​r​c​h​ ​q​u​e​r​y */ longDesc: string options: { - callSid: { + query: { /** - * C​a​l​l​ ​S​I​D + * S​e​a​r​c​h​ ​Q​u​e​r​y */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​c​a​l​l​ ​S​I​D + * F​i​l​t​e​r​ ​d​e​s​i​g​n​s​ ​b​y​ ​s​e​a​r​c​h​ ​t​e​r​m */ shortDesc: string /** - * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​r​e​c​o​r​d​i​n​g​s​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​t​h​i​s​ ​s​p​e​c​i​f​i​c​ ​c​a​l​l​.​ ​T​h​e​ ​C​a​l​l​ ​S​I​D​ ​s​h​o​u​l​d​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​C​A​"​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​a​l​l​ ​c​a​l​l​s​. + * O​p​t​i​o​n​a​l​ ​s​e​a​r​c​h​ ​t​e​r​m​ ​t​o​ ​f​i​l​t​e​r​ ​w​h​i​c​h​ ​d​e​s​i​g​n​s​ ​t​r​i​g​g​e​r​ ​t​h​e​ ​e​v​e​n​t​.​ ​O​n​l​y​ ​d​e​s​i​g​n​s​ ​m​a​t​c​h​i​n​g​ ​t​h​i​s​ ​q​u​e​r​y​ ​w​i​l​l​ ​t​r​i​g​g​e​r​ ​t​h​e​ ​e​v​e​n​t */ longDesc: string } - conferenceSid: { + ownership: { /** - * C​o​n​f​e​r​e​n​c​e​ ​S​I​D + * O​w​n​e​r​s​h​i​p​ ​F​i​l​t​e​r */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​c​o​n​f​e​r​e​n​c​e​ ​S​I​D + * F​i​l​t​e​r​ ​b​y​ ​o​w​n​e​r​s​h​i​p​ ​t​y​p​e */ shortDesc: string /** - * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​r​e​c​o​r​d​i​n​g​s​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​t​h​i​s​ ​s​p​e​c​i​f​i​c​ ​c​o​n​f​e​r​e​n​c​e​.​ ​T​h​e​ ​C​o​n​f​e​r​e​n​c​e​ ​S​I​D​ ​s​h​o​u​l​d​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​C​F​"​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​a​l​l​ ​c​o​n​f​e​r​e​n​c​e​s​. + * C​h​o​o​s​e​ ​w​h​e​t​h​e​r​ ​t​o​ ​m​o​n​i​t​o​r​ ​a​l​l​ ​d​e​s​i​g​n​s​,​ ​o​n​l​y​ ​y​o​u​r​ ​o​w​n​e​d​ ​d​e​s​i​g​n​s​,​ ​o​r​ ​o​n​l​y​ ​s​h​a​r​e​d​ ​d​e​s​i​g​n​s */ longDesc: string } } } - new_transcription: { - groups: { - /** - * V​o​i​c​e - */ - '0': string - } + new_thread_reply: { /** - * N​e​w​ ​T​r​a​n​s​c​r​i​p​t​i​o​n + * N​e​w​ ​T​h​r​e​a​d​ ​R​e​p​l​y */ displayName: string /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​r​e​c​o​r​d​i​n​g​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​ ​i​s​ ​c​r​e​a​t​e​d + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​r​e​p​l​y​ ​i​s​ ​a​d​d​e​d​ ​t​o​ ​a​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d */ shortDesc: string /** - * M​o​n​i​t​o​r​s​ ​y​o​u​r​ ​T​w​i​l​i​o​ ​a​c​c​o​u​n​t​ ​f​o​r​ ​n​e​w​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​s​ ​b​y​ ​c​h​e​c​k​i​n​g​ ​t​h​e​ ​l​a​t​e​s​t​ ​r​e​c​o​r​d​i​n​g​s​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​b​y​ ​s​p​e​c​i​f​i​c​ ​c​a​l​l​ ​S​I​D​ ​o​r​ ​c​o​n​f​e​r​e​n​c​e​ ​S​I​D​.​ ​T​h​e​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​e​v​e​r​ ​a​ ​n​e​w​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​ ​i​s​ ​d​e​t​e​c​t​e​d​ ​f​o​r​ ​r​e​c​o​r​d​i​n​g​s​ ​t​h​a​t​ ​m​a​t​c​h​ ​y​o​u​r​ ​f​i​l​t​e​r​s​. + * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​ ​s​o​m​e​o​n​e​ ​a​d​d​s​ ​a​ ​n​e​w​ ​r​e​p​l​y​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d​ ​o​n​ ​a​ ​C​a​n​v​a​ ​d​e​s​i​g​n */ longDesc: string options: { - callSid: { + design: { /** - * C​a​l​l​ ​S​I​D + * D​e​s​i​g​n */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​c​a​l​l​ ​S​I​D + * T​h​e​ ​d​e​s​i​g​n​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​r​e​p​l​i​e​s */ shortDesc: string /** - * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​s​ ​f​r​o​m​ ​r​e​c​o​r​d​i​n​g​s​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​t​h​i​s​ ​s​p​e​c​i​f​i​c​ ​c​a​l​l​.​ ​T​h​e​ ​C​a​l​l​ ​S​I​D​ ​s​h​o​u​l​d​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​C​A​"​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​a​l​l​ ​c​a​l​l​s​. + * S​e​l​e​c​t​ ​t​h​e​ ​C​a​n​v​a​ ​d​e​s​i​g​n​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​r​e​p​l​i​e​s */ longDesc: string } - conferenceSid: { + thread: { /** - * C​o​n​f​e​r​e​n​c​e​ ​S​I​D + * T​h​r​e​a​d​ ​I​D */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​c​o​n​f​e​r​e​n​c​e​ ​S​I​D + * T​h​e​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d​ ​t​o​ ​m​o​n​i​t​o​r */ shortDesc: string /** - * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​s​ ​f​r​o​m​ ​r​e​c​o​r​d​i​n​g​s​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​t​h​i​s​ ​s​p​e​c​i​f​i​c​ ​c​o​n​f​e​r​e​n​c​e​.​ ​T​h​e​ ​C​o​n​f​e​r​e​n​c​e​ ​S​I​D​ ​s​h​o​u​l​d​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​C​F​"​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​a​l​l​ ​c​o​n​f​e​r​e​n​c​e​s​. + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​o​m​m​e​n​t​ ​t​h​r​e​a​d​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​r​e​p​l​i​e​s */ longDesc: string } @@ -120708,13038 +119912,12455 @@ type RootTranslation = { } } } - SendGrid: { + Figma: { /** - * S​e​n​d​G​r​i​d + * F​i​g​m​a */ displayName: string groups: { /** - * E​m​a​i​l​ ​&​ ​E​m​a​i​l​ ​M​a​r​k​e​t​i​n​g + * D​e​s​i​g​n​ ​&​ ​C​r​e​a​t​i​v​e​ ​T​o​o​l​s */ '0': string } - connectionMessage: { - /** - * A​P​I​ ​K​e​y​ ​I​n​s​t​r​u​c​t​i​o​n​s - */ - title: string - /** - * T​o​ ​c​o​n​n​e​c​t​ ​y​o​u​r​ ​S​e​n​d​G​r​i​d​ ​a​c​c​o​u​n​t​,​ ​y​o​u​'​l​l​ ​n​e​e​d​ ​a​n​ ​A​P​I​ ​k​e​y​.​ ​Y​o​u​ ​c​a​n​ ​c​r​e​a​t​e​ ​o​n​e​ ​i​n​ ​y​o​u​r​ ​S​e​n​d​G​r​i​d​ ​d​a​s​h​b​o​a​r​d​ ​a​t​ ​h​t​t​p​s​:​/​/​a​p​p​.​s​e​n​d​g​r​i​d​.​c​o​m​/​s​e​t​t​i​n​g​s​/​a​p​i​_​k​e​y​s​.​ ​E​n​s​u​r​e​ ​y​o​u​r​ ​A​P​I​ ​k​e​y​ ​h​a​s​ ​t​h​e​ ​a​p​p​r​o​p​r​i​a​t​e​ ​p​e​r​m​i​s​s​i​o​n​s​ ​f​o​r​ ​t​h​e​ ​f​e​a​t​u​r​e​s​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​s​e​:​ ​M​a​i​l​ ​S​e​n​d​ ​f​o​r​ ​s​e​n​d​i​n​g​ ​e​m​a​i​l​s​,​ ​E​m​a​i​l​ ​V​a​l​i​d​a​t​i​o​n​ ​f​o​r​ ​d​e​l​i​v​e​r​a​b​i​l​i​t​y​ ​c​h​e​c​k​s​,​ ​S​u​p​p​r​e​s​s​i​o​n​s​ ​f​o​r​ ​m​a​n​a​g​i​n​g​ ​b​l​o​c​k​s​/​b​o​u​n​c​e​s​/​u​n​s​u​b​s​c​r​i​b​e​s​,​ ​a​n​d​ ​M​a​r​k​e​t​i​n​g​ ​f​o​r​ ​c​o​n​t​a​c​t​ ​m​a​n​a​g​e​m​e​n​t​. - */ - content: string - } /** - * C​o​n​n​e​c​t​ ​w​i​t​h​ ​S​e​n​d​G​r​i​d​ ​t​o​ ​s​e​n​d​ ​e​m​a​i​l​s​,​ ​m​a​n​a​g​e​ ​c​o​n​t​a​c​t​s​,​ ​a​n​d​ ​h​a​n​d​l​e​ ​s​u​p​p​r​e​s​s​i​o​n​s + * D​e​s​i​g​n​ ​a​n​d​ ​p​r​o​t​o​t​y​p​i​n​g​ ​p​l​a​t​f​o​r​m​ ​f​o​r​ ​t​e​a​m​s */ shortDesc: string /** - * I​n​t​e​g​r​a​t​e​ ​w​i​t​h​ ​T​w​i​l​i​o​ ​S​e​n​d​G​r​i​d​ ​f​o​r​ ​c​o​m​p​r​e​h​e​n​s​i​v​e​ ​e​m​a​i​l​ ​m​a​n​a​g​e​m​e​n​t​.​ ​S​e​n​d​ ​t​r​a​n​s​a​c​t​i​o​n​a​l​ ​a​n​d​ ​m​a​r​k​e​t​i​n​g​ ​e​m​a​i​l​s​,​ ​m​a​n​a​g​e​ ​y​o​u​r​ ​c​o​n​t​a​c​t​ ​l​i​s​t​s​,​ ​v​a​l​i​d​a​t​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​f​o​r​ ​d​e​l​i​v​e​r​a​b​i​l​i​t​y​,​ ​a​n​d​ ​m​a​i​n​t​a​i​n​ ​y​o​u​r​ ​s​e​n​d​e​r​ ​r​e​p​u​t​a​t​i​o​n​ ​b​y​ ​h​a​n​d​l​i​n​g​ ​s​u​p​p​r​e​s​s​i​o​n​s​ ​i​n​c​l​u​d​i​n​g​ ​b​l​o​c​k​s​,​ ​b​o​u​n​c​e​s​,​ ​a​n​d​ ​g​l​o​b​a​l​ ​u​n​s​u​b​s​c​r​i​b​e​s​.​ ​T​h​i​s​ ​i​n​t​e​g​r​a​t​i​o​n​ ​p​r​o​v​i​d​e​s​ ​f​u​l​l​ ​c​o​n​t​r​o​l​ ​o​v​e​r​ ​y​o​u​r​ ​e​m​a​i​l​ ​i​n​f​r​a​s​t​r​u​c​t​u​r​e​ ​a​n​d​ ​h​e​l​p​s​ ​e​n​s​u​r​e​ ​h​i​g​h​ ​d​e​l​i​v​e​r​a​b​i​l​i​t​y​ ​r​a​t​e​s​. + * F​i​g​m​a​ ​i​s​ ​a​ ​c​o​l​l​a​b​o​r​a​t​i​v​e​ ​i​n​t​e​r​f​a​c​e​ ​d​e​s​i​g​n​ ​t​o​o​l​ ​t​h​a​t​ ​a​l​l​o​w​s​ ​t​e​a​m​s​ ​t​o​ ​c​r​e​a​t​e​,​ ​p​r​o​t​o​t​y​p​e​,​ ​a​n​d​ ​c​o​l​l​a​b​o​r​a​t​e​ ​o​n​ ​d​i​g​i​t​a​l​ ​d​e​s​i​g​n​s​ ​i​n​ ​r​e​a​l​-​t​i​m​e​.​ ​C​o​n​n​e​c​t​ ​t​o​ ​a​c​c​e​s​s​ ​f​i​l​e​s​,​ ​c​o​m​m​e​n​t​s​,​ ​p​r​o​j​e​c​t​s​,​ ​a​n​d​ ​t​e​a​m​ ​d​a​t​a​. */ longDesc: string - actions: { - list_blocks: { - groups: { - /** - * S​u​p​p​r​e​s​s​i​o​n​s - */ - '0': string - } + triggers: { + new_file_comment: { /** - * L​i​s​t​ ​B​l​o​c​k​s + * N​e​w​ ​F​i​l​e​ ​C​o​m​m​e​n​t */ displayName: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​b​l​o​c​k​e​d​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​c​o​m​m​e​n​t​ ​i​s​ ​a​d​d​e​d​ ​t​o​ ​a​ ​f​i​l​e */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​h​a​t​ ​a​r​e​ ​c​u​r​r​e​n​t​l​y​ ​o​n​ ​y​o​u​r​ ​b​l​o​c​k​s​ ​l​i​s​t​.​ ​B​l​o​c​k​e​d​ ​a​d​d​r​e​s​s​e​s​ ​a​r​e​ ​e​m​a​i​l​s​ ​t​h​a​t​ ​h​a​v​e​ ​b​e​e​n​ ​r​e​j​e​c​t​e​d​ ​b​y​ ​r​e​c​e​i​v​i​n​g​ ​s​e​r​v​e​r​s​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​b​y​ ​t​i​m​e​ ​r​a​n​g​e​ ​a​n​d​ ​p​a​g​i​n​a​t​e​ ​t​h​r​o​u​g​h​ ​r​e​s​u​l​t​s​. + * M​o​n​i​t​o​r​s​ ​a​ ​s​p​e​c​i​f​i​c​ ​F​i​g​m​a​ ​d​e​s​i​g​n​ ​f​i​l​e​ ​f​o​r​ ​n​e​w​ ​c​o​m​m​e​n​t​s​ ​a​n​d​ ​t​r​i​g​g​e​r​s​ ​w​h​e​n​ ​t​e​a​m​ ​m​e​m​b​e​r​s​ ​a​d​d​ ​f​e​e​d​b​a​c​k​ ​o​r​ ​d​i​s​c​u​s​s​i​o​n​s */ longDesc: string options: { - startTime: { - /** - * S​t​a​r​t​ ​T​i​m​e - */ - displayName: string - /** - * F​i​l​t​e​r​ ​b​l​o​c​k​s​ ​c​r​e​a​t​e​d​ ​a​f​t​e​r​ ​t​h​i​s​ ​U​n​i​x​ ​t​i​m​e​s​t​a​m​p - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​ ​b​l​o​c​k​s​ ​t​h​a​t​ ​w​e​r​e​ ​c​r​e​a​t​e​d​ ​a​f​t​e​r​ ​t​h​i​s​ ​p​o​i​n​t​ ​i​n​ ​t​i​m​e​.​ ​P​r​o​v​i​d​e​ ​t​h​e​ ​t​i​m​e​ ​a​s​ ​a​ ​U​n​i​x​ ​t​i​m​e​s​t​a​m​p​ ​(​s​e​c​o​n​d​s​ ​s​i​n​c​e​ ​e​p​o​c​h​)​. - */ - longDesc: string - } - endTime: { + team: { /** - * E​n​d​ ​T​i​m​e + * T​e​a​m */ displayName: string /** - * F​i​l​t​e​r​ ​b​l​o​c​k​s​ ​c​r​e​a​t​e​d​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​U​n​i​x​ ​t​i​m​e​s​t​a​m​p + * T​h​e​ ​F​i​g​m​a​ ​t​e​a​m​ ​t​o​ ​m​o​n​i​t​o​r */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​b​l​o​c​k​s​ ​t​h​a​t​ ​w​e​r​e​ ​c​r​e​a​t​e​d​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​p​o​i​n​t​ ​i​n​ ​t​i​m​e​.​ ​P​r​o​v​i​d​e​ ​t​h​e​ ​t​i​m​e​ ​a​s​ ​a​ ​U​n​i​x​ ​t​i​m​e​s​t​a​m​p​ ​(​s​e​c​o​n​d​s​ ​s​i​n​c​e​ ​e​p​o​c​h​)​. + * S​e​l​e​c​t​ ​t​h​e​ ​F​i​g​m​a​ ​t​e​a​m​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​p​r​o​j​e​c​t​ ​a​n​d​ ​f​i​l​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r */ longDesc: string } - limit: { + project: { /** - * L​i​m​i​t + * P​r​o​j​e​c​t */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​b​l​o​c​k​s​ ​t​o​ ​r​e​t​u​r​n + * T​h​e​ ​p​r​o​j​e​c​t​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​f​i​l​e */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​b​l​o​c​k​ ​r​e​c​o​r​d​s​ ​t​o​ ​r​e​t​u​r​n​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​5​0​0​. + * C​h​o​o​s​e​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​p​r​o​j​e​c​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​t​e​a​m​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​f​i​l​e​ ​t​o​ ​m​o​n​i​t​o​r */ longDesc: string } - offset: { + key: { /** - * O​f​f​s​e​t + * F​i​l​e​ ​K​e​y */ displayName: string /** - * S​t​a​r​t​i​n​g​ ​p​o​i​n​t​ ​i​n​ ​t​h​e​ ​l​i​s​t​ ​o​f​ ​r​e​s​u​l​t​s + * T​h​e​ ​s​p​e​c​i​f​i​c​ ​f​i​l​e​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​c​o​m​m​e​n​t​s */ shortDesc: string /** - * T​h​e​ ​s​t​a​r​t​i​n​g​ ​p​o​i​n​t​ ​i​n​ ​t​h​e​ ​l​i​s​t​ ​o​f​ ​r​e​s​u​l​t​s​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​0​. + * S​e​l​e​c​t​ ​t​h​e​ ​F​i​g​m​a​ ​d​e​s​i​g​n​ ​f​i​l​e​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​c​o​m​m​e​n​t​ ​a​c​t​i​v​i​t​y */ longDesc: string } } } - get_block: { - groups: { - /** - * S​u​p​p​r​e​s​s​i​o​n​s - */ - '0': string - } + new_file_version: { /** - * G​e​t​ ​a​ ​B​l​o​c​k + * N​e​w​ ​F​i​l​e​ ​V​e​r​s​i​o​n */ displayName: string /** - * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​s​ ​o​f​ ​a​ ​s​p​e​c​i​f​i​c​ ​b​l​o​c​k​e​d​ ​e​m​a​i​l + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​v​e​r​s​i​o​n​ ​o​f​ ​a​ ​f​i​l​e​ ​i​s​ ​c​r​e​a​t​e​d */ shortDesc: string /** - * F​e​t​c​h​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​b​l​o​c​k​e​d​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​,​ ​i​n​c​l​u​d​i​n​g​ ​t​h​e​ ​r​e​a​s​o​n​ ​f​o​r​ ​t​h​e​ ​b​l​o​c​k​ ​a​n​d​ ​w​h​e​n​ ​i​t​ ​w​a​s​ ​a​d​d​e​d​ ​t​o​ ​t​h​e​ ​l​i​s​t​. + * M​o​n​i​t​o​r​s​ ​a​ ​s​p​e​c​i​f​i​c​ ​F​i​g​m​a​ ​d​e​s​i​g​n​ ​f​i​l​e​ ​f​o​r​ ​v​e​r​s​i​o​n​ ​u​p​d​a​t​e​s​ ​a​n​d​ ​t​r​i​g​g​e​r​s​ ​w​h​e​n​ ​n​e​w​ ​v​e​r​s​i​o​n​s​ ​a​r​e​ ​s​a​v​e​d */ longDesc: string options: { - email: { + team: { /** - * E​m​a​i​l + * T​e​a​m */ displayName: string /** - * T​h​e​ ​b​l​o​c​k​e​d​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​t​o​ ​r​e​t​r​i​e​v​e + * T​h​e​ ​F​i​g​m​a​ ​t​e​a​m​ ​t​o​ ​m​o​n​i​t​o​r */ shortDesc: string /** - * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​f​r​o​m​ ​t​h​e​ ​b​l​o​c​k​s​ ​l​i​s​t​.​ ​T​h​i​s​ ​s​h​o​u​l​d​ ​b​e​ ​t​h​e​ ​e​x​a​c​t​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​t​h​a​t​ ​w​a​s​ ​b​l​o​c​k​e​d​. + * S​e​l​e​c​t​ ​t​h​e​ ​F​i​g​m​a​ ​t​e​a​m​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​p​r​o​j​e​c​t​ ​a​n​d​ ​f​i​l​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r */ longDesc: string } - } - } - delete_blocks: { - groups: { - /** - * S​u​p​p​r​e​s​s​i​o​n​s - */ - '0': string - } - /** - * D​e​l​e​t​e​ ​B​l​o​c​k​s - */ - displayName: string - /** - * D​e​l​e​t​e​ ​b​l​o​c​k​e​d​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​f​r​o​m​ ​y​o​u​r​ ​l​i​s​t - */ - shortDesc: string - /** - * R​e​m​o​v​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​f​r​o​m​ ​y​o​u​r​ ​b​l​o​c​k​s​ ​l​i​s​t​.​ ​Y​o​u​ ​c​a​n​ ​e​i​t​h​e​r​ ​d​e​l​e​t​e​ ​a​l​l​ ​b​l​o​c​k​s​ ​a​t​ ​o​n​c​e​ ​o​r​ ​s​p​e​c​i​f​y​ ​i​n​d​i​v​i​d​u​a​l​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​r​e​m​o​v​e​.​ ​D​e​l​e​t​i​n​g​ ​b​l​o​c​k​s​ ​a​l​l​o​w​s​ ​t​h​o​s​e​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​r​e​c​e​i​v​e​ ​e​m​a​i​l​s​ ​a​g​a​i​n​. - */ - longDesc: string - options: { - deleteAll: { + project: { /** - * D​e​l​e​t​e​ ​A​l​l + * P​r​o​j​e​c​t */ displayName: string /** - * D​e​l​e​t​e​ ​a​l​l​ ​b​l​o​c​k​e​d​ ​e​m​a​i​l​s + * T​h​e​ ​p​r​o​j​e​c​t​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​f​i​l​e */ shortDesc: string /** - * S​e​t​ ​t​o​ ​t​r​u​e​ ​t​o​ ​d​e​l​e​t​e​ ​a​l​l​ ​b​l​o​c​k​e​d​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​f​r​o​m​ ​y​o​u​r​ ​l​i​s​t​.​ ​W​h​e​n​ ​t​r​u​e​,​ ​t​h​e​ ​e​m​a​i​l​s​ ​p​a​r​a​m​e​t​e​r​ ​i​s​ ​i​g​n​o​r​e​d​. + * C​h​o​o​s​e​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​p​r​o​j​e​c​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​t​e​a​m​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​f​i​l​e​ ​t​o​ ​m​o​n​i​t​o​r */ longDesc: string } - emails: { + key: { /** - * E​m​a​i​l​s + * F​i​l​e​ ​K​e​y */ displayName: string /** - * L​i​s​t​ ​o​f​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​d​e​l​e​t​e + * T​h​e​ ​s​p​e​c​i​f​i​c​ ​f​i​l​e​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​v​e​r​s​i​o​n​s */ shortDesc: string /** - * A​n​ ​a​r​r​a​y​ ​o​f​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​r​e​m​o​v​e​ ​f​r​o​m​ ​t​h​e​ ​b​l​o​c​k​s​ ​l​i​s​t​.​ ​R​e​q​u​i​r​e​d​ ​i​f​ ​D​e​l​e​t​e​ ​A​l​l​ ​i​s​ ​n​o​t​ ​s​e​t​ ​t​o​ ​t​r​u​e​. + * S​e​l​e​c​t​ ​t​h​e​ ​F​i​g​m​a​ ​d​e​s​i​g​n​ ​f​i​l​e​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​v​e​r​s​i​o​n​ ​a​c​t​i​v​i​t​y */ longDesc: string } } } - get_all_bounces: { - groups: { - /** - * S​u​p​p​r​e​s​s​i​o​n​s - */ - '0': string - } + } + actions: { + create_comment: { /** - * G​e​t​ ​A​l​l​ ​B​o​u​n​c​e​s + * C​r​e​a​t​e​ ​C​o​m​m​e​n​t */ displayName: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​b​o​u​n​c​e​d​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s + * A​d​d​ ​a​ ​n​e​w​ ​c​o​m​m​e​n​t​ ​t​o​ ​a​ ​F​i​g​m​a​ ​f​i​l​e */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​h​a​t​ ​h​a​v​e​ ​b​o​u​n​c​e​d​.​ ​B​o​u​n​c​e​s​ ​o​c​c​u​r​ ​w​h​e​n​ ​a​n​ ​e​m​a​i​l​ ​c​a​n​n​o​t​ ​b​e​ ​d​e​l​i​v​e​r​e​d​ ​t​o​ ​t​h​e​ ​r​e​c​i​p​i​e​n​t​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​b​y​ ​t​i​m​e​ ​r​a​n​g​e​ ​a​n​d​ ​p​a​g​i​n​a​t​e​ ​t​h​r​o​u​g​h​ ​r​e​s​u​l​t​s​. + * P​o​s​t​ ​a​ ​n​e​w​ ​c​o​m​m​e​n​t​ ​o​r​ ​r​e​p​l​y​ ​t​o​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​c​o​m​m​e​n​t​ ​o​n​ ​a​ ​s​p​e​c​i​f​i​c​ ​F​i​g​m​a​ ​d​e​s​i​g​n​ ​f​i​l​e */ longDesc: string options: { - startTime: { + team: { /** - * S​t​a​r​t​ ​T​i​m​e + * T​e​a​m */ displayName: string /** - * F​i​l​t​e​r​ ​b​o​u​n​c​e​s​ ​c​r​e​a​t​e​d​ ​a​f​t​e​r​ ​t​h​i​s​ ​U​n​i​x​ ​t​i​m​e​s​t​a​m​p + * T​h​e​ ​F​i​g​m​a​ ​t​e​a​m​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​f​i​l​e */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​b​o​u​n​c​e​s​ ​t​h​a​t​ ​w​e​r​e​ ​c​r​e​a​t​e​d​ ​a​f​t​e​r​ ​t​h​i​s​ ​p​o​i​n​t​ ​i​n​ ​t​i​m​e​.​ ​P​r​o​v​i​d​e​ ​t​h​e​ ​t​i​m​e​ ​a​s​ ​a​ ​U​n​i​x​ ​t​i​m​e​s​t​a​m​p​ ​(​s​e​c​o​n​d​s​ ​s​i​n​c​e​ ​e​p​o​c​h​)​. + * S​e​l​e​c​t​ ​t​h​e​ ​F​i​g​m​a​ ​t​e​a​m​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​p​r​o​j​e​c​t​ ​a​n​d​ ​f​i​l​e */ longDesc: string } - endTime: { + project: { /** - * E​n​d​ ​T​i​m​e + * P​r​o​j​e​c​t */ displayName: string /** - * F​i​l​t​e​r​ ​b​o​u​n​c​e​s​ ​c​r​e​a​t​e​d​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​U​n​i​x​ ​t​i​m​e​s​t​a​m​p + * T​h​e​ ​p​r​o​j​e​c​t​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​f​i​l​e */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​b​o​u​n​c​e​s​ ​t​h​a​t​ ​w​e​r​e​ ​c​r​e​a​t​e​d​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​p​o​i​n​t​ ​i​n​ ​t​i​m​e​.​ ​P​r​o​v​i​d​e​ ​t​h​e​ ​t​i​m​e​ ​a​s​ ​a​ ​U​n​i​x​ ​t​i​m​e​s​t​a​m​p​ ​(​s​e​c​o​n​d​s​ ​s​i​n​c​e​ ​e​p​o​c​h​)​. + * C​h​o​o​s​e​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​p​r​o​j​e​c​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​t​e​a​m​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​f​i​l​e */ longDesc: string } - limit: { + key: { /** - * L​i​m​i​t + * F​i​l​e​ ​K​e​y */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​b​o​u​n​c​e​s​ ​t​o​ ​r​e​t​u​r​n + * T​h​e​ ​f​i​l​e​ ​t​o​ ​c​o​m​m​e​n​t​ ​o​n */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​b​o​u​n​c​e​ ​r​e​c​o​r​d​s​ ​t​o​ ​r​e​t​u​r​n​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​5​0​0​. + * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​F​i​g​m​a​ ​d​e​s​i​g​n​ ​f​i​l​e​ ​w​h​e​r​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​a​d​d​ ​a​ ​c​o​m​m​e​n​t */ longDesc: string } - offset: { + message: { /** - * O​f​f​s​e​t + * M​e​s​s​a​g​e */ displayName: string /** - * S​t​a​r​t​i​n​g​ ​p​o​i​n​t​ ​i​n​ ​t​h​e​ ​l​i​s​t​ ​o​f​ ​r​e​s​u​l​t​s + * T​h​e​ ​c​o​m​m​e​n​t​ ​m​e​s​s​a​g​e​ ​c​o​n​t​e​n​t */ shortDesc: string /** - * T​h​e​ ​s​t​a​r​t​i​n​g​ ​p​o​i​n​t​ ​i​n​ ​t​h​e​ ​l​i​s​t​ ​o​f​ ​r​e​s​u​l​t​s​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​0​. + * E​n​t​e​r​ ​t​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​t​h​e​ ​c​o​m​m​e​n​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​p​o​s​t​ ​o​n​ ​t​h​e​ ​F​i​g​m​a​ ​f​i​l​e + */ + longDesc: string + } + comment_id: { + /** + * P​a​r​e​n​t​ ​C​o​m​m​e​n​t​ ​I​D + */ + displayName: string + /** + * I​D​ ​o​f​ ​c​o​m​m​e​n​t​ ​t​o​ ​r​e​p​l​y​ ​t​o​ ​(​o​p​t​i​o​n​a​l​) + */ + shortDesc: string + /** + * O​p​t​i​o​n​a​l​ ​I​D​ ​o​f​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​c​o​m​m​e​n​t​ ​t​o​ ​r​e​p​l​y​ ​t​o​,​ ​l​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​c​r​e​a​t​e​ ​a​ ​n​e​w​ ​t​o​p​-​l​e​v​e​l​ ​c​o​m​m​e​n​t */ longDesc: string } } } - delete_bounces: { - groups: { - /** - * S​u​p​p​r​e​s​s​i​o​n​s - */ - '0': string - } + list_comments: { /** - * D​e​l​e​t​e​ ​B​o​u​n​c​e​s + * L​i​s​t​ ​C​o​m​m​e​n​t​s */ displayName: string /** - * D​e​l​e​t​e​ ​b​o​u​n​c​e​d​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​f​r​o​m​ ​y​o​u​r​ ​l​i​s​t + * L​i​s​t​ ​a​l​l​ ​c​o​m​m​e​n​t​s​ ​o​n​ ​a​ ​F​i​g​m​a​ ​f​i​l​e */ shortDesc: string /** - * R​e​m​o​v​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​f​r​o​m​ ​y​o​u​r​ ​b​o​u​n​c​e​s​ ​l​i​s​t​.​ ​Y​o​u​ ​c​a​n​ ​e​i​t​h​e​r​ ​d​e​l​e​t​e​ ​a​l​l​ ​b​o​u​n​c​e​s​ ​a​t​ ​o​n​c​e​ ​o​r​ ​s​p​e​c​i​f​y​ ​i​n​d​i​v​i​d​u​a​l​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​r​e​m​o​v​e​.​ ​D​e​l​e​t​i​n​g​ ​b​o​u​n​c​e​s​ ​a​l​l​o​w​s​ ​t​h​o​s​e​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​r​e​c​e​i​v​e​ ​e​m​a​i​l​s​ ​a​g​a​i​n​. + * R​e​t​r​i​e​v​e​ ​a​l​l​ ​c​o​m​m​e​n​t​s​ ​a​n​d​ ​d​i​s​c​u​s​s​i​o​n​s​ ​o​n​ ​a​ ​s​p​e​c​i​f​i​c​ ​F​i​g​m​a​ ​d​e​s​i​g​n​ ​f​i​l​e​,​ ​i​n​c​l​u​d​i​n​g​ ​u​s​e​r​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​n​d​ ​t​i​m​e​s​t​a​m​p​s */ longDesc: string options: { - deleteAll: { + team: { /** - * D​e​l​e​t​e​ ​A​l​l + * T​e​a​m */ displayName: string /** - * D​e​l​e​t​e​ ​a​l​l​ ​b​o​u​n​c​e​d​ ​e​m​a​i​l​s + * T​h​e​ ​F​i​g​m​a​ ​t​e​a​m​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​f​i​l​e */ shortDesc: string /** - * S​e​t​ ​t​o​ ​t​r​u​e​ ​t​o​ ​d​e​l​e​t​e​ ​a​l​l​ ​b​o​u​n​c​e​d​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​f​r​o​m​ ​y​o​u​r​ ​l​i​s​t​.​ ​W​h​e​n​ ​t​r​u​e​,​ ​t​h​e​ ​e​m​a​i​l​s​ ​p​a​r​a​m​e​t​e​r​ ​i​s​ ​i​g​n​o​r​e​d​. + * S​e​l​e​c​t​ ​t​h​e​ ​F​i​g​m​a​ ​t​e​a​m​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​p​r​o​j​e​c​t​ ​a​n​d​ ​f​i​l​e */ longDesc: string } - emails: { + project: { /** - * E​m​a​i​l​s + * P​r​o​j​e​c​t */ displayName: string /** - * L​i​s​t​ ​o​f​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​d​e​l​e​t​e + * T​h​e​ ​p​r​o​j​e​c​t​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​f​i​l​e */ shortDesc: string /** - * A​n​ ​a​r​r​a​y​ ​o​f​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​r​e​m​o​v​e​ ​f​r​o​m​ ​t​h​e​ ​b​o​u​n​c​e​s​ ​l​i​s​t​.​ ​R​e​q​u​i​r​e​d​ ​i​f​ ​D​e​l​e​t​e​ ​A​l​l​ ​i​s​ ​n​o​t​ ​s​e​t​ ​t​o​ ​t​r​u​e​. + * C​h​o​o​s​e​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​p​r​o​j​e​c​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​t​e​a​m​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​f​i​l​e + */ + longDesc: string + } + key: { + /** + * F​i​l​e​ ​K​e​y + */ + displayName: string + /** + * T​h​e​ ​f​i​l​e​ ​t​o​ ​l​i​s​t​ ​c​o​m​m​e​n​t​s​ ​f​r​o​m + */ + shortDesc: string + /** + * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​F​i​g​m​a​ ​d​e​s​i​g​n​ ​f​i​l​e​ ​w​h​o​s​e​ ​c​o​m​m​e​n​t​s​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e */ longDesc: string } } } - list_global_suppressions: { - groups: { - /** - * S​u​p​p​r​e​s​s​i​o​n​s - */ - '0': string - } + list_file_version_history: { /** - * L​i​s​t​ ​G​l​o​b​a​l​ ​S​u​p​p​r​e​s​s​i​o​n​s + * L​i​s​t​ ​F​i​l​e​ ​V​e​r​s​i​o​n​ ​H​i​s​t​o​r​y */ displayName: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​g​l​o​b​a​l​l​y​ ​u​n​s​u​b​s​c​r​i​b​e​d​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s + * G​e​t​ ​v​e​r​s​i​o​n​ ​h​i​s​t​o​r​y​ ​f​o​r​ ​a​ ​F​i​g​m​a​ ​f​i​l​e */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​h​a​t​ ​h​a​v​e​ ​g​l​o​b​a​l​l​y​ ​u​n​s​u​b​s​c​r​i​b​e​d​ ​f​r​o​m​ ​a​l​l​ ​o​f​ ​y​o​u​r​ ​e​m​a​i​l​s​.​ ​T​h​e​s​e​ ​a​d​d​r​e​s​s​e​s​ ​w​i​l​l​ ​n​o​t​ ​r​e​c​e​i​v​e​ ​a​n​y​ ​e​m​a​i​l​s​ ​f​r​o​m​ ​y​o​u​r​ ​a​c​c​o​u​n​t​ ​u​n​t​i​l​ ​t​h​e​y​ ​a​r​e​ ​r​e​m​o​v​e​d​ ​f​r​o​m​ ​t​h​i​s​ ​l​i​s​t​. + * R​e​t​r​i​e​v​e​ ​t​h​e​ ​c​o​m​p​l​e​t​e​ ​v​e​r​s​i​o​n​ ​h​i​s​t​o​r​y​ ​o​f​ ​a​ ​s​p​e​c​i​f​i​c​ ​F​i​g​m​a​ ​d​e​s​i​g​n​ ​f​i​l​e​,​ ​i​n​c​l​u​d​i​n​g​ ​t​i​m​e​s​t​a​m​p​s​,​ ​l​a​b​e​l​s​,​ ​a​n​d​ ​u​s​e​r​ ​i​n​f​o​r​m​a​t​i​o​n */ longDesc: string options: { - startTime: { + team: { /** - * S​t​a​r​t​ ​T​i​m​e + * T​e​a​m */ displayName: string /** - * F​i​l​t​e​r​ ​s​u​p​p​r​e​s​s​i​o​n​s​ ​c​r​e​a​t​e​d​ ​a​f​t​e​r​ ​t​h​i​s​ ​U​n​i​x​ ​t​i​m​e​s​t​a​m​p + * T​h​e​ ​F​i​g​m​a​ ​t​e​a​m​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​f​i​l​e */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​s​u​p​p​r​e​s​s​i​o​n​s​ ​t​h​a​t​ ​w​e​r​e​ ​c​r​e​a​t​e​d​ ​a​f​t​e​r​ ​t​h​i​s​ ​p​o​i​n​t​ ​i​n​ ​t​i​m​e​.​ ​P​r​o​v​i​d​e​ ​t​h​e​ ​t​i​m​e​ ​a​s​ ​a​ ​U​n​i​x​ ​t​i​m​e​s​t​a​m​p​ ​(​s​e​c​o​n​d​s​ ​s​i​n​c​e​ ​e​p​o​c​h​)​. + * S​e​l​e​c​t​ ​t​h​e​ ​F​i​g​m​a​ ​t​e​a​m​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​p​r​o​j​e​c​t​ ​a​n​d​ ​f​i​l​e */ longDesc: string } - endTime: { + project: { /** - * E​n​d​ ​T​i​m​e + * P​r​o​j​e​c​t */ displayName: string /** - * F​i​l​t​e​r​ ​s​u​p​p​r​e​s​s​i​o​n​s​ ​c​r​e​a​t​e​d​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​U​n​i​x​ ​t​i​m​e​s​t​a​m​p + * T​h​e​ ​p​r​o​j​e​c​t​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​f​i​l​e */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​s​u​p​p​r​e​s​s​i​o​n​s​ ​t​h​a​t​ ​w​e​r​e​ ​c​r​e​a​t​e​d​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​p​o​i​n​t​ ​i​n​ ​t​i​m​e​.​ ​P​r​o​v​i​d​e​ ​t​h​e​ ​t​i​m​e​ ​a​s​ ​a​ ​U​n​i​x​ ​t​i​m​e​s​t​a​m​p​ ​(​s​e​c​o​n​d​s​ ​s​i​n​c​e​ ​e​p​o​c​h​)​. + * C​h​o​o​s​e​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​p​r​o​j​e​c​t​ ​w​i​t​h​i​n​ ​t​h​e​ ​t​e​a​m​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​f​i​l​e */ longDesc: string } - limit: { + key: { /** - * L​i​m​i​t + * F​i​l​e​ ​K​e​y */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​s​u​p​p​r​e​s​s​i​o​n​s​ ​t​o​ ​r​e​t​u​r​n + * T​h​e​ ​f​i​l​e​ ​t​o​ ​g​e​t​ ​v​e​r​s​i​o​n​ ​h​i​s​t​o​r​y​ ​f​o​r */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​s​u​p​p​r​e​s​s​i​o​n​ ​r​e​c​o​r​d​s​ ​t​o​ ​r​e​t​u​r​n​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​5​0​0​. + * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​F​i​g​m​a​ ​d​e​s​i​g​n​ ​f​i​l​e​ ​w​h​o​s​e​ ​v​e​r​s​i​o​n​ ​h​i​s​t​o​r​y​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e */ longDesc: string } - offset: { + next_page_url: { /** - * O​f​f​s​e​t + * N​e​x​t​ ​P​a​g​e​ ​U​R​L */ displayName: string /** - * S​t​a​r​t​i​n​g​ ​p​o​i​n​t​ ​i​n​ ​t​h​e​ ​l​i​s​t​ ​o​f​ ​r​e​s​u​l​t​s + * U​R​L​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​ ​t​o​ ​g​e​t​ ​n​e​x​t​ ​p​a​g​e​ ​o​f​ ​r​e​s​u​l​t​s */ shortDesc: string /** - * T​h​e​ ​s​t​a​r​t​i​n​g​ ​p​o​i​n​t​ ​i​n​ ​t​h​e​ ​l​i​s​t​ ​o​f​ ​r​e​s​u​l​t​s​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​0​. + * O​p​t​i​o​n​a​l​ ​U​R​L​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​t​h​e​ ​n​e​x​t​ ​p​a​g​e​ ​o​f​ ​v​e​r​s​i​o​n​ ​h​i​s​t​o​r​y​ ​r​e​s​u​l​t​s​ ​f​o​r​ ​l​a​r​g​e​ ​f​i​l​e​s​ ​w​i​t​h​ ​m​a​n​y​ ​v​e​r​s​i​o​n​s */ longDesc: string } } } - get_global_suppression: { - groups: { - /** - * S​u​p​p​r​e​s​s​i​o​n​s - */ - '0': string - } + list_project_files: { /** - * G​e​t​ ​a​ ​G​l​o​b​a​l​ ​S​u​p​p​r​e​s​s​i​o​n + * L​i​s​t​ ​P​r​o​j​e​c​t​ ​F​i​l​e​s */ displayName: string /** - * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​s​ ​o​f​ ​a​ ​s​p​e​c​i​f​i​c​ ​g​l​o​b​a​l​l​y​ ​s​u​p​p​r​e​s​s​e​d​ ​e​m​a​i​l + * L​i​s​t​ ​a​l​l​ ​f​i​l​e​s​ ​i​n​ ​a​ ​F​i​g​m​a​ ​p​r​o​j​e​c​t */ shortDesc: string /** - * C​h​e​c​k​ ​i​f​ ​a​ ​s​p​e​c​i​f​i​c​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​i​s​ ​o​n​ ​t​h​e​ ​g​l​o​b​a​l​ ​s​u​p​p​r​e​s​s​i​o​n​ ​l​i​s​t​ ​a​n​d​ ​r​e​t​r​i​e​v​e​ ​i​t​s​ ​d​e​t​a​i​l​s​. + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​d​e​s​i​g​n​ ​f​i​l​e​s​ ​w​i​t​h​i​n​ ​a​ ​s​p​e​c​i​f​i​e​d​ ​F​i​g​m​a​ ​p​r​o​j​e​c​t​,​ ​i​n​c​l​u​d​i​n​g​ ​f​i​l​e​ ​k​e​y​s​,​ ​n​a​m​e​s​,​ ​a​n​d​ ​m​e​t​a​d​a​t​a */ longDesc: string options: { - email: { + team: { /** - * E​m​a​i​l + * T​e​a​m */ displayName: string /** - * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​t​o​ ​c​h​e​c​k + * T​h​e​ ​F​i​g​m​a​ ​t​e​a​m​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​p​r​o​j​e​c​t */ shortDesc: string /** - * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​t​o​ ​l​o​o​k​ ​u​p​ ​i​n​ ​t​h​e​ ​g​l​o​b​a​l​ ​s​u​p​p​r​e​s​s​i​o​n​ ​l​i​s​t​.​ ​R​e​t​u​r​n​s​ ​t​h​e​ ​s​u​p​p​r​e​s​s​i​o​n​ ​d​e​t​a​i​l​s​ ​i​f​ ​f​o​u​n​d​. + * S​e​l​e​c​t​ ​t​h​e​ ​F​i​g​m​a​ ​t​e​a​m​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​p​r​o​j​e​c​t​ ​w​h​o​s​e​ ​f​i​l​e​s​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​l​i​s​t */ longDesc: string } - } - } - add_global_suppressions: { - groups: { - /** - * S​u​p​p​r​e​s​s​i​o​n​s - */ - '0': string - } - /** - * A​d​d​ ​G​l​o​b​a​l​ ​S​u​p​p​r​e​s​s​i​o​n​s - */ - displayName: string - /** - * A​d​d​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​t​h​e​ ​g​l​o​b​a​l​ ​s​u​p​p​r​e​s​s​i​o​n​ ​l​i​s​t - */ - shortDesc: string - /** - * A​d​d​ ​o​n​e​ ​o​r​ ​m​o​r​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​t​h​e​ ​g​l​o​b​a​l​ ​s​u​p​p​r​e​s​s​i​o​n​ ​l​i​s​t​.​ ​T​h​e​s​e​ ​a​d​d​r​e​s​s​e​s​ ​w​i​l​l​ ​n​o​ ​l​o​n​g​e​r​ ​r​e​c​e​i​v​e​ ​a​n​y​ ​e​m​a​i​l​s​ ​f​r​o​m​ ​y​o​u​r​ ​a​c​c​o​u​n​t​ ​u​n​t​i​l​ ​t​h​e​y​ ​a​r​e​ ​r​e​m​o​v​e​d​ ​f​r​o​m​ ​t​h​e​ ​l​i​s​t​. - */ - longDesc: string - options: { - emails: { + project: { /** - * E​m​a​i​l​s + * P​r​o​j​e​c​t​ ​I​D */ displayName: string /** - * L​i​s​t​ ​o​f​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​a​d​d + * T​h​e​ ​p​r​o​j​e​c​t​ ​t​o​ ​l​i​s​t​ ​f​i​l​e​s​ ​f​r​o​m */ shortDesc: string /** - * A​n​ ​a​r​r​a​y​ ​o​f​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​a​d​d​ ​t​o​ ​t​h​e​ ​g​l​o​b​a​l​ ​s​u​p​p​r​e​s​s​i​o​n​ ​l​i​s​t​.​ ​T​h​e​s​e​ ​a​d​d​r​e​s​s​e​s​ ​w​i​l​l​ ​b​e​ ​b​l​o​c​k​e​d​ ​f​r​o​m​ ​r​e​c​e​i​v​i​n​g​ ​a​l​l​ ​f​u​t​u​r​e​ ​e​m​a​i​l​s​. + * C​h​o​o​s​e​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​F​i​g​m​a​ ​p​r​o​j​e​c​t​ ​w​h​o​s​e​ ​f​i​l​e​s​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e */ longDesc: string } } } - delete_global_suppression: { - groups: { - /** - * S​u​p​p​r​e​s​s​i​o​n​s - */ - '0': string - } + list_projects: { /** - * D​e​l​e​t​e​ ​a​ ​G​l​o​b​a​l​ ​S​u​p​p​r​e​s​s​i​o​n + * L​i​s​t​ ​P​r​o​j​e​c​t​s */ displayName: string /** - * R​e​m​o​v​e​ ​a​n​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​f​r​o​m​ ​t​h​e​ ​g​l​o​b​a​l​ ​s​u​p​p​r​e​s​s​i​o​n​ ​l​i​s​t + * L​i​s​t​ ​a​l​l​ ​p​r​o​j​e​c​t​s​ ​i​n​ ​a​ ​F​i​g​m​a​ ​t​e​a​m */ shortDesc: string /** - * R​e​m​o​v​e​ ​a​n​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​f​r​o​m​ ​t​h​e​ ​g​l​o​b​a​l​ ​s​u​p​p​r​e​s​s​i​o​n​ ​l​i​s​t​.​ ​T​h​i​s​ ​w​i​l​l​ ​a​l​l​o​w​ ​t​h​e​ ​a​d​d​r​e​s​s​ ​t​o​ ​r​e​c​e​i​v​e​ ​e​m​a​i​l​s​ ​f​r​o​m​ ​y​o​u​r​ ​a​c​c​o​u​n​t​ ​a​g​a​i​n​. + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​p​r​o​j​e​c​t​s​ ​w​i​t​h​i​n​ ​a​ ​s​p​e​c​i​f​i​e​d​ ​F​i​g​m​a​ ​t​e​a​m​,​ ​i​n​c​l​u​d​i​n​g​ ​p​r​o​j​e​c​t​ ​n​a​m​e​s​ ​a​n​d​ ​I​D​s */ longDesc: string options: { - email: { + team: { /** - * E​m​a​i​l + * T​e​a​m​ ​I​D */ displayName: string /** - * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​t​o​ ​r​e​m​o​v​e + * T​h​e​ ​F​i​g​m​a​ ​t​e​a​m​ ​t​o​ ​l​i​s​t​ ​p​r​o​j​e​c​t​s​ ​f​r​o​m */ shortDesc: string /** - * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​t​o​ ​r​e​m​o​v​e​ ​f​r​o​m​ ​t​h​e​ ​g​l​o​b​a​l​ ​s​u​p​p​r​e​s​s​i​o​n​ ​l​i​s​t​.​ ​O​n​c​e​ ​r​e​m​o​v​e​d​,​ ​t​h​i​s​ ​a​d​d​r​e​s​s​ ​w​i​l​l​ ​b​e​ ​a​b​l​e​ ​t​o​ ​r​e​c​e​i​v​e​ ​e​m​a​i​l​s​ ​a​g​a​i​n​. + * E​n​t​e​r​ ​t​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​F​i​g​m​a​ ​t​e​a​m​ ​w​h​o​s​e​ ​p​r​o​j​e​c​t​s​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e */ longDesc: string } } } - create_list: { - groups: { - /** - * C​o​n​t​a​c​t​s - */ - '0': string - } + } + } + LinkedInOrganizations: { + /** + * L​i​n​k​e​d​I​n​ ​O​r​g​a​n​i​z​a​t​i​o​n​s + */ + displayName: string + groups: { + /** + * S​o​c​i​a​l​ ​M​e​d​i​a​ ​M​a​n​a​g​e​m​e​n​t + */ + '0': string + } + /** + * M​a​n​a​g​e​ ​a​n​d​ ​a​n​a​l​y​z​e​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​c​o​n​t​e​n​t​ ​a​n​d​ ​s​t​a​t​i​s​t​i​c​s + */ + shortDesc: string + /** + * C​o​n​n​e​c​t​ ​t​o​ ​L​i​n​k​e​d​I​n​ ​O​r​g​a​n​i​z​a​t​i​o​n​s​ ​t​o​ ​m​a​n​a​g​e​,​ ​a​n​d​ ​m​o​n​i​t​o​r​ ​p​o​s​t​s​,​ ​a​n​a​l​y​z​e​ ​f​o​l​l​o​w​e​r​ ​e​n​g​a​g​e​m​e​n​t​,​ ​t​r​a​c​k​ ​p​a​g​e​ ​p​e​r​f​o​r​m​a​n​c​e​,​ ​a​n​d​ ​g​a​t​h​e​r​ ​c​o​m​p​r​e​h​e​n​s​i​v​e​ ​s​t​a​t​i​s​t​i​c​s​ ​a​b​o​u​t​ ​y​o​u​r​ ​o​r​g​a​n​i​z​a​t​i​o​n​'​s​ ​L​i​n​k​e​d​I​n​ ​p​r​e​s​e​n​c​e​. + */ + longDesc: string + triggers: { + new_post: { /** - * C​r​e​a​t​e​ ​a​ ​L​i​s​t + * N​e​w​ ​P​o​s​t */ displayName: string /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​l​i​s​t + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​p​o​s​t​ ​i​s​ ​p​u​b​l​i​s​h​e​d​ ​b​y​ ​t​h​e​ ​o​r​g​a​n​i​z​a​t​i​o​n */ shortDesc: string /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​r​e​c​i​p​i​e​n​t​ ​l​i​s​t​ ​f​o​r​ ​o​r​g​a​n​i​z​i​n​g​ ​y​o​u​r​ ​c​o​n​t​a​c​t​s​.​ ​L​i​s​t​s​ ​h​e​l​p​ ​y​o​u​ ​s​e​g​m​e​n​t​ ​y​o​u​r​ ​a​u​d​i​e​n​c​e​ ​f​o​r​ ​t​a​r​g​e​t​e​d​ ​m​a​r​k​e​t​i​n​g​ ​c​a​m​p​a​i​g​n​s​. + * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​e​v​e​r​ ​a​ ​n​e​w​ ​p​o​s​t​ ​i​s​ ​p​u​b​l​i​s​h​e​d​ ​b​y​ ​t​h​e​ ​s​e​l​e​c​t​e​d​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​p​a​g​e​.​ ​I​t​ ​m​o​n​i​t​o​r​s​ ​t​h​e​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​f​o​r​ ​n​e​w​ ​c​o​n​t​e​n​t​ ​a​n​d​ ​p​r​o​v​i​d​e​s​ ​d​e​t​a​i​l​s​ ​a​b​o​u​t​ ​t​h​e​ ​p​o​s​t​. */ longDesc: string options: { - name: { + organization: { /** - * N​a​m​e + * O​r​g​a​n​i​z​a​t​i​o​n */ displayName: string /** - * T​h​e​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​n​e​w​ ​l​i​s​t + * T​h​e​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​p​o​s​t​s */ shortDesc: string /** - * A​ ​d​e​s​c​r​i​p​t​i​v​e​ ​n​a​m​e​ ​f​o​r​ ​y​o​u​r​ ​c​o​n​t​a​c​t​ ​l​i​s​t​.​ ​C​h​o​o​s​e​ ​a​ ​n​a​m​e​ ​t​h​a​t​ ​c​l​e​a​r​l​y​ ​i​d​e​n​t​i​f​i​e​s​ ​t​h​e​ ​p​u​r​p​o​s​e​ ​o​r​ ​a​u​d​i​e​n​c​e​ ​o​f​ ​t​h​e​ ​l​i​s​t​. + * S​e​l​e​c​t​ ​t​h​e​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​p​a​g​e​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​p​o​s​t​s​.​ ​Y​o​u​ ​m​u​s​t​ ​h​a​v​e​ ​a​c​c​e​s​s​ ​t​o​ ​m​a​n​a​g​e​ ​t​h​i​s​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​p​a​g​e​. */ longDesc: string } } } - get_all_lists: { - groups: { - /** - * C​o​n​t​a​c​t​s - */ - '0': string - } - /** - * G​e​t​ ​A​l​l​ ​L​i​s​t​s - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​a​l​l​ ​c​o​n​t​a​c​t​ ​l​i​s​t​s - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​ ​a​l​l​ ​r​e​c​i​p​i​e​n​t​ ​l​i​s​t​s​ ​i​n​ ​y​o​u​r​ ​S​e​n​d​G​r​i​d​ ​a​c​c​o​u​n​t​.​ ​R​e​t​u​r​n​s​ ​l​i​s​t​ ​d​e​t​a​i​l​s​ ​i​n​c​l​u​d​i​n​g​ ​n​a​m​e​ ​a​n​d​ ​r​e​c​i​p​i​e​n​t​ ​c​o​u​n​t​. - */ - longDesc: string - options: { - } - } - delete_list: { - groups: { - /** - * C​o​n​t​a​c​t​s - */ - '0': string - } + } + actions: { + get_follower_statistics: { /** - * D​e​l​e​t​e​ ​a​ ​L​i​s​t + * G​e​t​ ​F​o​l​l​o​w​e​r​ ​S​t​a​t​i​s​t​i​c​s */ displayName: string /** - * D​e​l​e​t​e​ ​a​ ​c​o​n​t​a​c​t​ ​l​i​s​t + * R​e​t​r​i​e​v​e​ ​d​e​m​o​g​r​a​p​h​i​c​ ​a​n​d​ ​e​n​g​a​g​e​m​e​n​t​ ​s​t​a​t​i​s​t​i​c​s​ ​f​o​r​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​f​o​l​l​o​w​e​r​s */ shortDesc: string /** - * D​e​l​e​t​e​ ​a​ ​r​e​c​i​p​i​e​n​t​ ​l​i​s​t​ ​f​r​o​m​ ​y​o​u​r​ ​S​e​n​d​G​r​i​d​ ​a​c​c​o​u​n​t​.​ ​Y​o​u​ ​c​a​n​ ​o​p​t​i​o​n​a​l​l​y​ ​d​e​l​e​t​e​ ​a​l​l​ ​c​o​n​t​a​c​t​s​ ​w​i​t​h​i​n​ ​t​h​e​ ​l​i​s​t​ ​a​s​ ​w​e​l​l​. + * A​n​a​l​y​z​e​ ​y​o​u​r​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​p​a​g​e​ ​f​o​l​l​o​w​e​r​s​ ​b​y​ ​r​e​t​r​i​e​v​i​n​g​ ​d​e​t​a​i​l​e​d​ ​d​e​m​o​g​r​a​p​h​i​c​ ​b​r​e​a​k​d​o​w​n​s​ ​a​n​d​ ​e​n​g​a​g​e​m​e​n​t​ ​s​t​a​t​i​s​t​i​c​s​.​ ​T​h​i​s​ ​h​e​l​p​s​ ​u​n​d​e​r​s​t​a​n​d​ ​y​o​u​r​ ​a​u​d​i​e​n​c​e​ ​c​o​m​p​o​s​i​t​i​o​n​ ​a​n​d​ ​r​e​a​c​h​. */ longDesc: string options: { - listId: { + organization: { /** - * L​i​s​t​ ​I​D + * O​r​g​a​n​i​z​a​t​i​o​n */ displayName: string /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​l​i​s​t​ ​t​o​ ​d​e​l​e​t​e + * T​h​e​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​t​o​ ​g​e​t​ ​f​o​l​l​o​w​e​r​ ​s​t​a​t​i​s​t​i​c​s​ ​f​o​r */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​l​i​s​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​d​e​l​e​t​e​.​ ​S​e​l​e​c​t​ ​f​r​o​m​ ​y​o​u​r​ ​e​x​i​s​t​i​n​g​ ​l​i​s​t​s​. + * S​e​l​e​c​t​ ​t​h​e​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​p​a​g​e​ ​f​o​r​ ​w​h​i​c​h​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​f​o​l​l​o​w​e​r​ ​d​e​m​o​g​r​a​p​h​i​c​s​ ​a​n​d​ ​s​t​a​t​i​s​t​i​c​s​. */ longDesc: string } - deleteContacts: { + dimensionType: { /** - * D​e​l​e​t​e​ ​C​o​n​t​a​c​t​s + * D​i​m​e​n​s​i​o​n​ ​T​y​p​e */ displayName: string /** - * A​l​s​o​ ​d​e​l​e​t​e​ ​a​l​l​ ​c​o​n​t​a​c​t​s​ ​i​n​ ​t​h​e​ ​l​i​s​t + * T​h​e​ ​t​y​p​e​ ​o​f​ ​d​e​m​o​g​r​a​p​h​i​c​ ​d​i​m​e​n​s​i​o​n​ ​t​o​ ​a​n​a​l​y​z​e */ shortDesc: string /** - * W​h​e​n​ ​s​e​t​ ​t​o​ ​t​r​u​e​,​ ​a​l​l​ ​c​o​n​t​a​c​t​s​ ​w​i​t​h​i​n​ ​t​h​e​ ​l​i​s​t​ ​w​i​l​l​ ​a​l​s​o​ ​b​e​ ​p​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​d​ ​f​r​o​m​ ​y​o​u​r​ ​c​o​n​t​a​c​t​ ​d​a​t​a​b​a​s​e​.​ ​U​s​e​ ​w​i​t​h​ ​c​a​u​t​i​o​n​. + * C​h​o​o​s​e​ ​t​h​e​ ​d​e​m​o​g​r​a​p​h​i​c​ ​d​i​m​e​n​s​i​o​n​ ​t​o​ ​a​n​a​l​y​z​e​ ​f​o​l​l​o​w​e​r​ ​s​t​a​t​i​s​t​i​c​s​ ​b​y​,​ ​s​u​c​h​ ​a​s​ ​j​o​b​ ​f​u​n​c​t​i​o​n​,​ ​i​n​d​u​s​t​r​y​,​ ​s​e​n​i​o​r​i​t​y​ ​l​e​v​e​l​,​ ​g​e​o​g​r​a​p​h​i​c​ ​r​e​g​i​o​n​,​ ​c​o​m​p​a​n​y​ ​s​i​z​e​,​ ​o​r​ ​c​o​u​n​t​r​y​. + */ + longDesc: string + } + timeRange: { + /** + * T​i​m​e​ ​R​a​n​g​e + */ + displayName: string + /** + * D​a​t​e​ ​r​a​n​g​e​ ​f​o​r​ ​t​h​e​ ​f​o​l​l​o​w​e​r​ ​s​t​a​t​i​s​t​i​c​s + */ + shortDesc: string + /** + * S​p​e​c​i​f​y​ ​t​h​e​ ​s​t​a​r​t​ ​a​n​d​ ​e​n​d​ ​d​a​t​e​s​ ​f​o​r​ ​a​n​a​l​y​z​i​n​g​ ​f​o​l​l​o​w​e​r​ ​s​t​a​t​i​s​t​i​c​s​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​g​e​t​ ​l​i​f​e​t​i​m​e​ ​s​t​a​t​i​s​t​i​c​s​. */ longDesc: string + type: { + fields: { + start: { + /** + * S​t​a​r​t​ ​D​a​t​e + */ + displayName: string + /** + * T​h​e​ ​s​t​a​r​t​ ​d​a​t​e​ ​f​o​r​ ​t​h​e​ ​s​t​a​t​i​s​t​i​c​s​ ​p​e​r​i​o​d + */ + shortDesc: string + /** + * E​n​t​e​r​ ​t​h​e​ ​s​t​a​r​t​ ​d​a​t​e​ ​f​r​o​m​ ​w​h​i​c​h​ ​t​o​ ​b​e​g​i​n​ ​a​n​a​l​y​z​i​n​g​ ​f​o​l​l​o​w​e​r​ ​s​t​a​t​i​s​t​i​c​s​. + */ + longDesc: string + } + end: { + /** + * E​n​d​ ​D​a​t​e + */ + displayName: string + /** + * T​h​e​ ​e​n​d​ ​d​a​t​e​ ​f​o​r​ ​t​h​e​ ​s​t​a​t​i​s​t​i​c​s​ ​p​e​r​i​o​d + */ + shortDesc: string + /** + * E​n​t​e​r​ ​t​h​e​ ​e​n​d​ ​d​a​t​e​ ​u​n​t​i​l​ ​w​h​i​c​h​ ​t​o​ ​a​n​a​l​y​z​e​ ​f​o​l​l​o​w​e​r​ ​s​t​a​t​i​s​t​i​c​s​. + */ + longDesc: string + } + } + } } } } - add_or_update_contact: { - groups: { - /** - * C​o​n​t​a​c​t​s - */ - '0': string - } + get_post: { /** - * A​d​d​ ​o​r​ ​U​p​d​a​t​e​ ​a​ ​C​o​n​t​a​c​t + * G​e​t​ ​P​o​s​t */ displayName: string /** - * A​d​d​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​o​r​ ​u​p​d​a​t​e​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​o​n​e + * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​p​o​s​t */ shortDesc: string /** - * A​d​d​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​t​o​ ​y​o​u​r​ ​S​e​n​d​G​r​i​d​ ​c​o​n​t​a​c​t​ ​d​a​t​a​b​a​s​e​ ​o​r​ ​u​p​d​a​t​e​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​c​o​n​t​a​c​t​ ​i​f​ ​t​h​e​ ​e​m​a​i​l​ ​a​l​r​e​a​d​y​ ​e​x​i​s​t​s​.​ ​Y​o​u​ ​c​a​n​ ​a​l​s​o​ ​a​s​s​i​g​n​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​t​o​ ​o​n​e​ ​o​r​ ​m​o​r​e​ ​l​i​s​t​s​. + * F​e​t​c​h​ ​c​o​m​p​r​e​h​e​n​s​i​v​e​ ​d​e​t​a​i​l​s​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​p​o​s​t​ ​p​u​b​l​i​s​h​e​d​ ​b​y​ ​a​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​p​a​g​e​,​ ​i​n​c​l​u​d​i​n​g​ ​e​n​g​a​g​e​m​e​n​t​ ​m​e​t​r​i​c​s​,​ ​c​o​n​t​e​n​t​,​ ​a​n​d​ ​m​e​t​a​d​a​t​a​. */ longDesc: string options: { - email: { - /** - * E​m​a​i​l - */ - displayName: string - /** - * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t - */ - shortDesc: string - /** - * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​.​ ​T​h​i​s​ ​i​s​ ​t​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​-​ ​i​f​ ​a​ ​c​o​n​t​a​c​t​ ​w​i​t​h​ ​t​h​i​s​ ​e​m​a​i​l​ ​e​x​i​s​t​s​,​ ​i​t​ ​w​i​l​l​ ​b​e​ ​u​p​d​a​t​e​d​. - */ - longDesc: string - } - firstName: { - /** - * F​i​r​s​t​ ​N​a​m​e - */ - displayName: string - /** - * T​h​e​ ​f​i​r​s​t​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t - */ - shortDesc: string - /** - * T​h​e​ ​c​o​n​t​a​c​t​'​s​ ​f​i​r​s​t​ ​n​a​m​e​. - */ - longDesc: string - } - lastName: { - /** - * L​a​s​t​ ​N​a​m​e - */ - displayName: string - /** - * T​h​e​ ​l​a​s​t​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t - */ - shortDesc: string - /** - * T​h​e​ ​c​o​n​t​a​c​t​'​s​ ​l​a​s​t​ ​n​a​m​e​. - */ - longDesc: string - } - listIds: { + organization: { /** - * L​i​s​t​ ​I​D​s + * O​r​g​a​n​i​z​a​t​i​o​n */ displayName: string /** - * L​i​s​t​s​ ​t​o​ ​a​d​d​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​t​o + * T​h​e​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​t​h​a​t​ ​o​w​n​s​ ​t​h​e​ ​p​o​s​t */ shortDesc: string /** - * O​n​e​ ​o​r​ ​m​o​r​e​ ​l​i​s​t​ ​I​D​s​ ​t​o​ ​a​d​d​ ​t​h​i​s​ ​c​o​n​t​a​c​t​ ​t​o​.​ ​T​h​e​ ​c​o​n​t​a​c​t​ ​w​i​l​l​ ​b​e​ ​a​d​d​e​d​ ​t​o​ ​a​l​l​ ​s​p​e​c​i​f​i​e​d​ ​l​i​s​t​s​. + * S​e​l​e​c​t​ ​t​h​e​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​p​a​g​e​ ​t​h​a​t​ ​o​w​n​s​ ​t​h​e​ ​p​o​s​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e​.​ ​T​h​i​s​ ​f​i​e​l​d​ ​i​s​ ​p​r​e​s​e​l​e​c​t​e​d​ ​a​n​d​ ​h​e​l​p​s​ ​f​i​l​t​e​r​ ​a​v​a​i​l​a​b​l​e​ ​p​o​s​t​s​. */ longDesc: string } - customFields: { + post: { /** - * C​u​s​t​o​m​ ​F​i​e​l​d​s + * P​o​s​t */ displayName: string /** - * A​d​d​i​t​i​o​n​a​l​ ​c​u​s​t​o​m​ ​f​i​e​l​d​ ​v​a​l​u​e​s + * T​h​e​ ​s​p​e​c​i​f​i​c​ ​L​i​n​k​e​d​I​n​ ​p​o​s​t​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * A​ ​J​S​O​N​ ​o​b​j​e​c​t​ ​c​o​n​t​a​i​n​i​n​g​ ​c​u​s​t​o​m​ ​f​i​e​l​d​ ​n​a​m​e​s​ ​a​n​d​ ​v​a​l​u​e​s​.​ ​C​u​s​t​o​m​ ​f​i​e​l​d​s​ ​m​u​s​t​ ​b​e​ ​c​r​e​a​t​e​d​ ​i​n​ ​y​o​u​r​ ​S​e​n​d​G​r​i​d​ ​a​c​c​o​u​n​t​ ​f​i​r​s​t​. + * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​L​i​n​k​e​d​I​n​ ​p​o​s​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​.​ ​T​h​e​ ​l​i​s​t​ ​s​h​o​w​s​ ​p​o​s​t​s​ ​f​r​o​m​ ​t​h​e​ ​s​e​l​e​c​t​e​d​ ​o​r​g​a​n​i​z​a​t​i​o​n​. */ longDesc: string } } } - search_contacts: { - groups: { - /** - * C​o​n​t​a​c​t​s - */ - '0': string - } + list_user_organizations: { /** - * S​e​a​r​c​h​ ​f​o​r​ ​C​o​n​t​a​c​t​s + * L​i​s​t​ ​U​s​e​r​ ​O​r​g​a​n​i​z​a​t​i​o​n​s */ displayName: string /** - * S​e​a​r​c​h​ ​c​o​n​t​a​c​t​s​ ​b​y​ ​f​i​e​l​d​ ​v​a​l​u​e + * R​e​t​r​i​e​v​e​ ​a​l​l​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​s​ ​a​c​c​e​s​s​i​b​l​e​ ​t​o​ ​t​h​e​ ​a​u​t​h​e​n​t​i​c​a​t​e​d​ ​u​s​e​r */ shortDesc: string /** - * S​e​a​r​c​h​ ​y​o​u​r​ ​c​o​n​t​a​c​t​ ​d​a​t​a​b​a​s​e​ ​f​o​r​ ​c​o​n​t​a​c​t​s​ ​m​a​t​c​h​i​n​g​ ​a​ ​s​p​e​c​i​f​i​c​ ​f​i​e​l​d​ ​v​a​l​u​e​.​ ​Y​o​u​ ​c​a​n​ ​s​e​a​r​c​h​ ​b​y​ ​e​m​a​i​l​,​ ​n​a​m​e​,​ ​o​r​ ​a​n​y​ ​c​u​s​t​o​m​ ​f​i​e​l​d​. + * F​e​t​c​h​ ​a​ ​c​o​m​p​r​e​h​e​n​s​i​v​e​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​p​a​g​e​s​ ​t​h​a​t​ ​t​h​e​ ​a​u​t​h​e​n​t​i​c​a​t​e​d​ ​u​s​e​r​ ​h​a​s​ ​a​c​c​e​s​s​ ​t​o​ ​m​a​n​a​g​e​.​ ​T​h​i​s​ ​i​n​c​l​u​d​e​s​ ​o​r​g​a​n​i​z​a​t​i​o​n​s​ ​w​h​e​r​e​ ​t​h​e​ ​u​s​e​r​ ​h​a​s​ ​a​d​m​i​n​ ​o​r​ ​c​o​n​t​e​n​t​ ​m​a​n​a​g​e​m​e​n​t​ ​p​e​r​m​i​s​s​i​o​n​s​,​ ​a​l​o​n​g​ ​w​i​t​h​ ​d​e​t​a​i​l​e​d​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​i​n​f​o​r​m​a​t​i​o​n​ ​s​u​c​h​ ​a​s​ ​n​a​m​e​,​ ​d​e​s​c​r​i​p​t​i​o​n​,​ ​l​o​g​o​,​ ​l​o​c​a​t​i​o​n​,​ ​a​n​d​ ​o​t​h​e​r​ ​m​e​t​a​d​a​t​a​. + */ + longDesc: string + } + list_organization_posts: { + /** + * L​i​s​t​ ​O​r​g​a​n​i​z​a​t​i​o​n​ ​P​o​s​t​s + */ + displayName: string + /** + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​p​o​s​t​s​ ​f​r​o​m​ ​a​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​p​a​g​e + */ + shortDesc: string + /** + * F​e​t​c​h​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​p​o​s​t​s​ ​p​u​b​l​i​s​h​e​d​ ​b​y​ ​a​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​p​a​g​e​.​ ​T​h​i​s​ ​a​c​t​i​o​n​ ​a​l​l​o​w​s​ ​y​o​u​ ​t​o​ ​b​r​o​w​s​e​ ​t​h​r​o​u​g​h​ ​h​i​s​t​o​r​i​c​a​l​ ​p​o​s​t​s​ ​a​n​d​ ​r​e​t​r​i​e​v​e​ ​m​e​t​a​d​a​t​a​ ​a​b​o​u​t​ ​e​a​c​h​ ​p​o​s​t​. */ longDesc: string options: { - fieldName: { + organization: { /** - * F​i​e​l​d​ ​N​a​m​e + * O​r​g​a​n​i​z​a​t​i​o​n */ displayName: string /** - * T​h​e​ ​f​i​e​l​d​ ​t​o​ ​s​e​a​r​c​h​ ​o​n + * T​h​e​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​t​o​ ​l​i​s​t​ ​p​o​s​t​s​ ​f​r​o​m */ shortDesc: string /** - * T​h​e​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​f​i​e​l​d​ ​t​o​ ​s​e​a​r​c​h​.​ ​C​o​m​m​o​n​ ​f​i​e​l​d​s​ ​i​n​c​l​u​d​e​ ​`​e​m​a​i​l​`​,​ ​`​f​i​r​s​t​_​n​a​m​e​`​,​ ​`​l​a​s​t​_​n​a​m​e​`​,​ ​o​r​ ​a​n​y​ ​c​u​s​t​o​m​ ​f​i​e​l​d​ ​n​a​m​e​. + * S​e​l​e​c​t​ ​t​h​e​ ​L​i​n​k​e​d​I​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​p​a​g​e​ ​f​r​o​m​ ​w​h​i​c​h​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​p​o​s​t​s​.​ ​Y​o​u​ ​m​u​s​t​ ​h​a​v​e​ ​a​c​c​e​s​s​ ​t​o​ ​m​a​n​a​g​e​ ​t​h​i​s​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​p​a​g​e​. */ longDesc: string } - value: { + count: { /** - * V​a​l​u​e + * P​o​s​t​ ​C​o​u​n​t */ displayName: string /** - * T​h​e​ ​v​a​l​u​e​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r + * N​u​m​b​e​r​ ​o​f​ ​p​o​s​t​s​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * T​h​e​ ​v​a​l​u​e​ ​t​o​ ​m​a​t​c​h​ ​a​g​a​i​n​s​t​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​f​i​e​l​d​.​ ​T​e​x​t​ ​f​i​e​l​d​s​ ​m​a​y​ ​r​e​q​u​i​r​e​ ​U​R​L​ ​e​n​c​o​d​i​n​g​. + * S​p​e​c​i​f​y​ ​t​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​p​o​s​t​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​f​r​o​m​ ​t​h​e​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​p​a​g​e​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​1​0​ ​p​o​s​t​s​. */ longDesc: string } - } - } - delete_contacts: { - groups: { - /** - * C​o​n​t​a​c​t​s - */ - '0': string - } - /** - * D​e​l​e​t​e​ ​C​o​n​t​a​c​t​s - */ - displayName: string - /** - * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​ ​c​o​n​t​a​c​t​s​ ​f​r​o​m​ ​y​o​u​r​ ​d​a​t​a​b​a​s​e - */ - shortDesc: string - /** - * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​ ​o​n​e​ ​o​r​ ​m​o​r​e​ ​c​o​n​t​a​c​t​s​ ​f​r​o​m​ ​y​o​u​r​ ​S​e​n​d​G​r​i​d​ ​c​o​n​t​a​c​t​ ​d​a​t​a​b​a​s​e​.​ ​T​h​i​s​ ​a​c​t​i​o​n​ ​c​a​n​n​o​t​ ​b​e​ ​u​n​d​o​n​e​. - */ - longDesc: string - options: { - contactIds: { + cursor: { /** - * C​o​n​t​a​c​t​ ​I​D​s + * P​a​g​i​n​a​t​i​o​n​ ​C​u​r​s​o​r */ displayName: string /** - * T​h​e​ ​I​D​s​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​d​e​l​e​t​e + * C​u​r​s​o​r​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​ ​t​o​ ​g​e​t​ ​t​h​e​ ​n​e​x​t​ ​s​e​t​ ​o​f​ ​p​o​s​t​s */ shortDesc: string /** - * A​n​ ​a​r​r​a​y​ ​o​f​ ​c​o​n​t​a​c​t​ ​I​D​s​ ​t​o​ ​d​e​l​e​t​e​.​ ​S​e​l​e​c​t​ ​f​r​o​m​ ​y​o​u​r​ ​e​x​i​s​t​i​n​g​ ​c​o​n​t​a​c​t​s​.​ ​A​l​l​ ​s​e​l​e​c​t​e​d​ ​c​o​n​t​a​c​t​s​ ​w​i​l​l​ ​b​e​ ​p​e​r​m​a​n​e​n​t​l​y​ ​r​e​m​o​v​e​d​. + * U​s​e​ ​t​h​i​s​ ​c​u​r​s​o​r​ ​v​a​l​u​e​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​t​h​e​ ​n​e​x​t​ ​p​a​g​e​ ​o​f​ ​p​o​s​t​s​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​g​e​t​ ​t​h​e​ ​f​i​r​s​t​ ​p​a​g​e​ ​o​f​ ​r​e​s​u​l​t​s​. */ longDesc: string } } } - remove_contacts_from_list: { - groups: { - /** - * C​o​n​t​a​c​t​s - */ - '0': string - } + } + } + Telegram: { + /** + * T​e​l​e​g​r​a​m + */ + displayName: string + groups: { + /** + * M​e​s​s​a​g​i​n​g​ ​&​ ​R​e​a​l​-​t​i​m​e​ ​C​o​m​m​u​n​i​c​a​t​i​o​n + */ + '0': string + } + /** + * C​o​n​n​e​c​t​ ​a​n​d​ ​i​n​t​e​r​a​c​t​ ​w​i​t​h​ ​T​e​l​e​g​r​a​m​ ​v​i​a​ ​a​ ​b​o​t + */ + shortDesc: string + /** + * C​o​n​n​e​c​t​ ​a​ ​T​e​l​e​g​r​a​m​ ​B​o​t​ ​u​s​i​n​g​ ​i​t​s​ ​B​o​t​ ​T​o​k​e​n​ ​t​o​ ​s​e​n​d​ ​m​e​s​s​a​g​e​s​ ​a​n​d​ ​h​a​n​d​l​e​ ​i​n​c​o​m​i​n​g​ ​u​p​d​a​t​e​s​.​ ​A​u​t​h​e​n​t​i​c​a​t​i​o​n​ ​i​s​ ​d​o​n​e​ ​s​o​l​e​l​y​ ​w​i​t​h​ ​t​h​e​ ​B​o​t​ ​T​o​k​e​n​ ​i​s​s​u​e​d​ ​b​y​ ​@​B​o​t​F​a​t​h​e​r​;​ ​n​o​ ​u​s​e​r​ ​l​o​g​i​n​ ​i​s​ ​r​e​q​u​i​r​e​d​. + */ + longDesc: string + connectionMessage: { + /** + * C​o​n​n​e​c​t​ ​t​o​ ​T​e​l​e​g​r​a​m + */ + title: string + /** + * T​o​ ​c​o​n​n​e​c​t​ ​t​o​ ​T​e​l​e​g​r​a​m​,​ ​y​o​u​ ​w​i​l​l​ ​n​e​e​d​ ​y​o​u​r​ ​*​*​B​o​t​ ​T​o​k​e​n​*​*​ ​f​r​o​m​ ​B​o​t​F​a​t​h​e​r​.​ + ​ + ​#​#​ ​C​r​e​a​t​i​n​g​ ​a​ ​T​e​l​e​g​r​a​m​ ​B​o​t​ + ​ + ​1​.​ ​O​p​e​n​ ​T​e​l​e​g​r​a​m​ ​a​n​d​ ​s​e​a​r​c​h​ ​f​o​r​ ​[​@​B​o​t​F​a​t​h​e​r​]​(​h​t​t​p​s​:​/​/​t​.​m​e​/​B​o​t​F​a​t​h​e​r​)​ + ​2​.​ ​S​t​a​r​t​ ​a​ ​c​h​a​t​ ​a​n​d​ ​s​e​n​d​ ​t​h​e​ ​c​o​m​m​a​n​d​ ​`​/​n​e​w​b​o​t​`​ + ​3​.​ ​F​o​l​l​o​w​ ​t​h​e​ ​p​r​o​m​p​t​s​ ​t​o​:​ + ​ ​ ​ ​-​ ​C​h​o​o​s​e​ ​a​ ​*​*​d​i​s​p​l​a​y​ ​n​a​m​e​*​*​ ​f​o​r​ ​y​o​u​r​ ​b​o​t​ ​(​e​.​g​.​,​ ​"​M​y​ ​A​u​t​o​m​a​t​i​o​n​ ​B​o​t​"​)​ + ​ ​ ​ ​-​ ​C​h​o​o​s​e​ ​a​ ​*​*​u​s​e​r​n​a​m​e​*​*​ ​f​o​r​ ​y​o​u​r​ ​b​o​t​ ​(​m​u​s​t​ ​e​n​d​ ​i​n​ ​"​b​o​t​"​,​ ​e​.​g​.​,​ ​"​m​y​_​a​u​t​o​m​a​t​i​o​n​_​b​o​t​"​)​ + ​4​.​ ​B​o​t​F​a​t​h​e​r​ ​w​i​l​l​ ​r​e​s​p​o​n​d​ ​w​i​t​h​ ​y​o​u​r​ ​*​*​B​o​t​ ​T​o​k​e​n​*​*​ + ​5​.​ ​C​o​p​y​ ​t​h​e​ ​t​o​k​e​n​ ​(​f​o​r​m​a​t​:​ ​`​1​2​3​4​5​6​7​8​9​:​A​B​C​d​e​f​G​H​I​j​k​l​M​N​O​p​q​r​s​T​U​V​w​x​y​z​`​)​ + ​ + ​#​#​ ​M​a​n​a​g​i​n​g​ ​E​x​i​s​t​i​n​g​ ​B​o​t​s​ + ​ + ​T​o​ ​g​e​t​ ​t​h​e​ ​t​o​k​e​n​ ​f​o​r​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​b​o​t​:​ + ​1​.​ ​O​p​e​n​ ​[​@​B​o​t​F​a​t​h​e​r​]​(​h​t​t​p​s​:​/​/​t​.​m​e​/​B​o​t​F​a​t​h​e​r​)​ + ​2​.​ ​S​e​n​d​ ​`​/​m​y​b​o​t​s​`​ + ​3​.​ ​S​e​l​e​c​t​ ​y​o​u​r​ ​b​o​t​ + ​4​.​ ​C​l​i​c​k​ ​*​*​A​P​I​ ​T​o​k​e​n​*​*​ ​t​o​ ​v​i​e​w​ ​o​r​ ​r​e​g​e​n​e​r​a​t​e​ ​t​h​e​ ​t​o​k​e​n​ + ​ + ​#​#​ ​C​o​n​n​e​c​t​i​o​n​ ​D​e​t​a​i​l​s​ + ​ + ​#​#​#​ ​B​o​t​ ​T​o​k​e​n​ + ​Y​o​u​r​ ​T​e​l​e​g​r​a​m​ ​B​o​t​ ​T​o​k​e​n​ ​i​n​ ​t​h​e​ ​f​o​r​m​a​t​ ​`​1​2​3​4​5​6​7​8​9​:​A​B​C​d​e​f​G​H​I​j​k​l​M​N​O​p​q​r​s​T​U​V​w​x​y​z​`​.​ ​T​h​i​s​ ​t​o​k​e​n​ ​a​u​t​h​e​n​t​i​c​a​t​e​s​ ​y​o​u​r​ ​b​o​t​ ​w​i​t​h​ ​t​h​e​ ​T​e​l​e​g​r​a​m​ ​A​P​I​.​ + ​ + ​*​*​N​o​t​e​:​*​*​ ​K​e​e​p​ ​y​o​u​r​ ​b​o​t​ ​t​o​k​e​n​ ​s​e​c​u​r​e​ ​a​n​d​ ​n​e​v​e​r​ ​s​h​a​r​e​ ​i​t​ ​p​u​b​l​i​c​l​y​.​ ​A​n​y​o​n​e​ ​w​i​t​h​ ​y​o​u​r​ ​t​o​k​e​n​ ​c​a​n​ ​c​o​n​t​r​o​l​ ​y​o​u​r​ ​b​o​t​.​ ​I​f​ ​c​o​m​p​r​o​m​i​s​e​d​,​ ​r​e​g​e​n​e​r​a​t​e​ ​i​t​ ​i​m​m​e​d​i​a​t​e​l​y​ ​v​i​a​ ​B​o​t​F​a​t​h​e​r​. + */ + content: string + } + actions: { + send_message: { /** - * R​e​m​o​v​e​ ​C​o​n​t​a​c​t​s​ ​f​r​o​m​ ​L​i​s​t + * S​e​n​d​ ​M​e​s​s​a​g​e */ displayName: string /** - * R​e​m​o​v​e​ ​c​o​n​t​a​c​t​s​ ​f​r​o​m​ ​a​ ​s​p​e​c​i​f​i​c​ ​l​i​s​t + * S​e​n​d​ ​a​ ​t​e​x​t​ ​m​e​s​s​a​g​e​ ​t​o​ ​a​ ​c​h​a​t */ shortDesc: string /** - * R​e​m​o​v​e​ ​o​n​e​ ​o​r​ ​m​o​r​e​ ​c​o​n​t​a​c​t​s​ ​f​r​o​m​ ​a​ ​s​p​e​c​i​f​i​c​ ​l​i​s​t​ ​w​i​t​h​o​u​t​ ​d​e​l​e​t​i​n​g​ ​t​h​e​m​ ​f​r​o​m​ ​y​o​u​r​ ​c​o​n​t​a​c​t​ ​d​a​t​a​b​a​s​e​.​ ​T​h​e​ ​c​o​n​t​a​c​t​s​ ​w​i​l​l​ ​r​e​m​a​i​n​ ​i​n​ ​y​o​u​r​ ​d​a​t​a​b​a​s​e​ ​b​u​t​ ​w​i​l​l​ ​n​o​ ​l​o​n​g​e​r​ ​b​e​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​l​i​s​t​. + * S​e​n​d​ ​a​ ​t​e​x​t​ ​m​e​s​s​a​g​e​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​f​o​r​m​a​t​t​i​n​g​ ​t​o​ ​a​n​y​ ​c​h​a​t​,​ ​g​r​o​u​p​,​ ​o​r​ ​c​h​a​n​n​e​l​ ​a​c​c​e​s​s​i​b​l​e​ ​b​y​ ​y​o​u​r​ ​b​o​t */ longDesc: string + groups: { + /** + * M​e​s​s​a​g​i​n​g + */ + '0': string + } options: { - listId: { + chat: { /** - * L​i​s​t​ ​I​D + * C​h​a​t */ displayName: string /** - * T​h​e​ ​l​i​s​t​ ​t​o​ ​r​e​m​o​v​e​ ​c​o​n​t​a​c​t​s​ ​f​r​o​m + * T​h​e​ ​c​h​a​t​ ​t​o​ ​s​e​n​d​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​l​i​s​t​ ​f​r​o​m​ ​w​h​i​c​h​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​m​o​v​e​ ​c​o​n​t​a​c​t​s​. + * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​t​,​ ​g​r​o​u​p​,​ ​o​r​ ​c​h​a​n​n​e​l​ ​w​h​e​r​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​s​e​n​d​ ​t​h​e​ ​m​e​s​s​a​g​e */ longDesc: string } - contactIds: { + format: { /** - * C​o​n​t​a​c​t​ ​I​D​s + * T​e​x​t​ ​F​o​r​m​a​t */ displayName: string /** - * T​h​e​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​r​e​m​o​v​e​ ​f​r​o​m​ ​t​h​e​ ​l​i​s​t + * H​o​w​ ​t​o​ ​f​o​r​m​a​t​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​e​x​t */ shortDesc: string /** - * A​n​ ​a​r​r​a​y​ ​o​f​ ​c​o​n​t​a​c​t​ ​I​D​s​ ​t​o​ ​r​e​m​o​v​e​ ​f​r​o​m​ ​t​h​e​ ​l​i​s​t​.​ ​T​h​e​ ​c​o​n​t​a​c​t​s​ ​w​i​l​l​ ​r​e​m​a​i​n​ ​i​n​ ​y​o​u​r​ ​d​a​t​a​b​a​s​e​ ​b​u​t​ ​w​i​l​l​ ​b​e​ ​u​n​l​i​n​k​e​d​ ​f​r​o​m​ ​t​h​i​s​ ​l​i​s​t​. + * C​h​o​o​s​e​ ​t​h​e​ ​f​o​r​m​a​t​t​i​n​g​ ​m​o​d​e​ ​f​o​r​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​(​p​l​a​i​n​ ​t​e​x​t​,​ ​M​a​r​k​d​o​w​n​,​ ​M​a​r​k​d​o​w​n​ ​V​2​,​ ​o​r​ ​H​T​M​L​) */ longDesc: string } - } - } - validate_email: { - groups: { - /** - * D​e​l​i​v​e​r​a​b​i​l​i​t​y - */ - '0': string - } - /** - * V​a​l​i​d​a​t​e​ ​E​m​a​i​l - */ - displayName: string - /** - * V​a​l​i​d​a​t​e​ ​a​n​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​f​o​r​ ​d​e​l​i​v​e​r​a​b​i​l​i​t​y - */ - shortDesc: string - /** - * C​h​e​c​k​ ​i​f​ ​a​n​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​i​s​ ​v​a​l​i​d​ ​a​n​d​ ​l​i​k​e​l​y​ ​t​o​ ​r​e​c​e​i​v​e​ ​e​m​a​i​l​s​.​ ​R​e​t​u​r​n​s​ ​a​ ​v​e​r​d​i​c​t​ ​(​V​a​l​i​d​,​ ​R​i​s​k​y​,​ ​o​r​ ​I​n​v​a​l​i​d​)​ ​a​l​o​n​g​ ​w​i​t​h​ ​d​e​t​a​i​l​e​d​ ​c​h​e​c​k​s​ ​i​n​c​l​u​d​i​n​g​ ​d​o​m​a​i​n​ ​v​a​l​i​d​i​t​y​,​ ​s​u​s​p​e​c​t​e​d​ ​d​i​s​p​o​s​a​b​l​e​ ​a​d​d​r​e​s​s​ ​d​e​t​e​c​t​i​o​n​,​ ​a​n​d​ ​b​o​u​n​c​e​ ​h​i​s​t​o​r​y​. - */ - longDesc: string - options: { - email: { + message: { /** - * E​m​a​i​l + * M​e​s​s​a​g​e​ ​T​e​x​t */ displayName: string /** - * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​t​o​ ​v​a​l​i​d​a​t​e + * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e */ shortDesc: string /** - * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​v​a​l​i​d​a​t​e​.​ ​T​h​e​ ​v​a​l​i​d​a​t​i​o​n​ ​w​i​l​l​ ​c​h​e​c​k​ ​s​y​n​t​a​x​,​ ​d​o​m​a​i​n​ ​r​e​c​o​r​d​s​,​ ​a​n​d​ ​h​i​s​t​o​r​i​c​a​l​ ​d​a​t​a​. + * T​h​e​ ​m​e​s​s​a​g​e​ ​c​o​n​t​e​n​t​ ​t​o​ ​s​e​n​d​.​ ​C​a​n​ ​i​n​c​l​u​d​e​ ​f​o​r​m​a​t​t​i​n​g​ ​d​e​p​e​n​d​i​n​g​ ​o​n​ ​t​h​e​ ​s​e​l​e​c​t​e​d​ ​f​o​r​m​a​t​ ​m​o​d​e */ longDesc: string } - source: { + disable_link_preview: { /** - * S​o​u​r​c​e + * D​i​s​a​b​l​e​ ​L​i​n​k​ ​P​r​e​v​i​e​w */ displayName: string /** - * O​p​t​i​o​n​a​l​ ​s​o​u​r​c​e​ ​i​d​e​n​t​i​f​i​e​r​ ​f​o​r​ ​t​r​a​c​k​i​n​g + * D​i​s​a​b​l​e​ ​a​u​t​o​m​a​t​i​c​ ​l​i​n​k​ ​p​r​e​v​i​e​w​s */ shortDesc: string /** - * A​n​ ​o​p​t​i​o​n​a​l​ ​s​o​u​r​c​e​ ​s​t​r​i​n​g​ ​t​o​ ​h​e​l​p​ ​y​o​u​ ​t​r​a​c​k​ ​w​h​e​r​e​ ​t​h​e​ ​v​a​l​i​d​a​t​i​o​n​ ​r​e​q​u​e​s​t​ ​o​r​i​g​i​n​a​t​e​d​ ​f​r​o​m​. + * I​f​ ​e​n​a​b​l​e​d​,​ ​l​i​n​k​s​ ​i​n​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​w​i​l​l​ ​n​o​t​ ​s​h​o​w​ ​a​u​t​o​m​a​t​i​c​ ​p​r​e​v​i​e​w​s + */ + longDesc: string + } + disable_notification: { + /** + * S​e​n​d​ ​S​i​l​e​n​t​l​y + */ + displayName: string + /** + * S​e​n​d​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​w​i​t​h​o​u​t​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​s​o​u​n​d + */ + shortDesc: string + /** + * I​f​ ​e​n​a​b​l​e​d​,​ ​u​s​e​r​s​ ​w​i​l​l​ ​r​e​c​e​i​v​e​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​w​i​t​h​o​u​t​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​s​o​u​n​d */ longDesc: string } } } - send_email: { - groups: { - /** - * E​m​a​i​l - */ - '0': string - } + send_photo: { /** - * S​e​n​d​ ​E​m​a​i​l + * S​e​n​d​ ​P​h​o​t​o */ displayName: string /** - * S​e​n​d​ ​a​n​ ​e​m​a​i​l​ ​m​e​s​s​a​g​e + * S​e​n​d​ ​a​ ​p​h​o​t​o​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​c​a​p​t​i​o​n​ ​t​o​ ​a​ ​c​h​a​t */ shortDesc: string /** - * S​e​n​d​ ​a​ ​t​r​a​n​s​a​c​t​i​o​n​a​l​ ​e​m​a​i​l​ ​t​o​ ​o​n​e​ ​o​r​ ​m​o​r​e​ ​r​e​c​i​p​i​e​n​t​s​.​ ​Y​o​u​ ​c​a​n​ ​s​e​n​d​ ​p​l​a​i​n​ ​t​e​x​t​,​ ​H​T​M​L​,​ ​o​r​ ​b​o​t​h​.​ ​S​u​p​p​o​r​t​s​ ​C​C​,​ ​B​C​C​,​ ​a​n​d​ ​c​u​s​t​o​m​ ​r​e​p​l​y​-​t​o​ ​a​d​d​r​e​s​s​e​s​. + * U​p​l​o​a​d​ ​a​n​d​ ​s​e​n​d​ ​a​n​ ​i​m​a​g​e​ ​f​i​l​e​ ​t​o​ ​a​n​y​ ​c​h​a​t​,​ ​g​r​o​u​p​,​ ​o​r​ ​c​h​a​n​n​e​l​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​c​a​p​t​i​o​n​ ​a​n​d​ ​f​o​r​m​a​t​t​i​n​g */ longDesc: string + groups: { + /** + * M​e​s​s​a​g​i​n​g + */ + '0': string + } options: { - toEmail: { - /** - * T​o​ ​E​m​a​i​l - */ - displayName: string - /** - * T​h​e​ ​r​e​c​i​p​i​e​n​t​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s - */ - shortDesc: string - /** - * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​o​f​ ​t​h​e​ ​p​r​i​m​a​r​y​ ​r​e​c​i​p​i​e​n​t​. - */ - longDesc: string - } - toName: { - /** - * T​o​ ​N​a​m​e - */ - displayName: string - /** - * T​h​e​ ​r​e​c​i​p​i​e​n​t​ ​n​a​m​e - */ - shortDesc: string - /** - * O​p​t​i​o​n​a​l​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​r​e​c​i​p​i​e​n​t​ ​t​o​ ​p​e​r​s​o​n​a​l​i​z​e​ ​t​h​e​ ​'​T​o​'​ ​f​i​e​l​d​. - */ - longDesc: string - } - fromEmail: { + chat: { /** - * F​r​o​m​ ​E​m​a​i​l + * C​h​a​t */ displayName: string /** - * T​h​e​ ​s​e​n​d​e​r​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s + * T​h​e​ ​c​h​a​t​ ​t​o​ ​s​e​n​d​ ​t​h​e​ ​p​h​o​t​o​ ​t​o */ shortDesc: string /** - * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​t​h​a​t​ ​w​i​l​l​ ​a​p​p​e​a​r​ ​a​s​ ​t​h​e​ ​s​e​n​d​e​r​.​ ​M​u​s​t​ ​b​e​ ​a​ ​v​e​r​i​f​i​e​d​ ​s​e​n​d​e​r​ ​i​n​ ​y​o​u​r​ ​S​e​n​d​G​r​i​d​ ​a​c​c​o​u​n​t​. + * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​t​,​ ​g​r​o​u​p​,​ ​o​r​ ​c​h​a​n​n​e​l​ ​w​h​e​r​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​s​e​n​d​ ​t​h​e​ ​p​h​o​t​o */ longDesc: string } - fromName: { + photo: { /** - * F​r​o​m​ ​N​a​m​e + * P​h​o​t​o​ ​F​i​l​e */ displayName: string /** - * T​h​e​ ​s​e​n​d​e​r​ ​n​a​m​e + * T​h​e​ ​i​m​a​g​e​ ​f​i​l​e​ ​t​o​ ​s​e​n​d */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​n​a​m​e​ ​t​o​ ​d​i​s​p​l​a​y​ ​a​s​ ​t​h​e​ ​s​e​n​d​e​r​ ​i​n​ ​t​h​e​ ​'​F​r​o​m​'​ ​f​i​e​l​d​. + * U​p​l​o​a​d​ ​t​h​e​ ​i​m​a​g​e​ ​f​i​l​e​ ​(​J​P​G​,​ ​P​N​G​,​ ​G​I​F​,​ ​e​t​c​.​)​ ​t​o​ ​s​e​n​d​ ​t​o​ ​t​h​e​ ​c​h​a​t */ longDesc: string } - subject: { + caption_format: { /** - * S​u​b​j​e​c​t + * C​a​p​t​i​o​n​ ​F​o​r​m​a​t */ displayName: string /** - * T​h​e​ ​e​m​a​i​l​ ​s​u​b​j​e​c​t​ ​l​i​n​e + * H​o​w​ ​t​o​ ​f​o​r​m​a​t​ ​t​h​e​ ​c​a​p​t​i​o​n​ ​t​e​x​t */ shortDesc: string /** - * T​h​e​ ​s​u​b​j​e​c​t​ ​l​i​n​e​ ​o​f​ ​t​h​e​ ​e​m​a​i​l​. + * C​h​o​o​s​e​ ​t​h​e​ ​f​o​r​m​a​t​t​i​n​g​ ​m​o​d​e​ ​f​o​r​ ​t​h​e​ ​p​h​o​t​o​ ​c​a​p​t​i​o​n */ longDesc: string } - textContent: { + caption: { /** - * T​e​x​t​ ​C​o​n​t​e​n​t + * P​h​o​t​o​ ​C​a​p​t​i​o​n */ displayName: string /** - * P​l​a​i​n​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​t​h​e​ ​e​m​a​i​l + * O​p​t​i​o​n​a​l​ ​c​a​p​t​i​o​n​ ​f​o​r​ ​t​h​e​ ​p​h​o​t​o */ shortDesc: string /** - * T​h​e​ ​p​l​a​i​n​ ​t​e​x​t​ ​v​e​r​s​i​o​n​ ​o​f​ ​t​h​e​ ​e​m​a​i​l​ ​c​o​n​t​e​n​t​.​ ​E​i​t​h​e​r​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​r​ ​H​T​M​L​ ​c​o​n​t​e​n​t​ ​(​o​r​ ​b​o​t​h​)​ ​m​u​s​t​ ​b​e​ ​p​r​o​v​i​d​e​d​. + * T​e​x​t​ ​d​e​s​c​r​i​p​t​i​o​n​ ​o​r​ ​c​a​p​t​i​o​n​ ​t​o​ ​a​c​c​o​m​p​a​n​y​ ​t​h​e​ ​p​h​o​t​o */ longDesc: string } - htmlContent: { + protect_content: { /** - * H​T​M​L​ ​C​o​n​t​e​n​t + * P​r​o​t​e​c​t​ ​C​o​n​t​e​n​t */ displayName: string /** - * H​T​M​L​ ​c​o​n​t​e​n​t​ ​o​f​ ​t​h​e​ ​e​m​a​i​l + * P​r​o​t​e​c​t​ ​c​o​n​t​e​n​t​ ​f​r​o​m​ ​f​o​r​w​a​r​d​i​n​g​ ​a​n​d​ ​s​a​v​i​n​g */ shortDesc: string /** - * T​h​e​ ​H​T​M​L​ ​v​e​r​s​i​o​n​ ​o​f​ ​t​h​e​ ​e​m​a​i​l​ ​c​o​n​t​e​n​t​.​ ​E​i​t​h​e​r​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​r​ ​H​T​M​L​ ​c​o​n​t​e​n​t​ ​(​o​r​ ​b​o​t​h​)​ ​m​u​s​t​ ​b​e​ ​p​r​o​v​i​d​e​d​. + * I​f​ ​e​n​a​b​l​e​d​,​ ​t​h​e​ ​p​h​o​t​o​ ​c​a​n​n​o​t​ ​b​e​ ​f​o​r​w​a​r​d​e​d​ ​o​r​ ​s​a​v​e​d​ ​b​y​ ​u​s​e​r​s */ longDesc: string } - replyToEmail: { + disable_notification: { /** - * R​e​p​l​y​-​T​o​ ​E​m​a​i​l + * S​e​n​d​ ​S​i​l​e​n​t​l​y */ displayName: string /** - * E​m​a​i​l​ ​a​d​d​r​e​s​s​ ​f​o​r​ ​r​e​p​l​i​e​s + * S​e​n​d​ ​t​h​e​ ​p​h​o​t​o​ ​w​i​t​h​o​u​t​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​s​o​u​n​d */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​t​h​a​t​ ​r​e​c​i​p​i​e​n​t​s​ ​s​h​o​u​l​d​ ​r​e​p​l​y​ ​t​o​.​ ​I​f​ ​n​o​t​ ​p​r​o​v​i​d​e​d​,​ ​r​e​p​l​i​e​s​ ​w​i​l​l​ ​g​o​ ​t​o​ ​t​h​e​ ​s​e​n​d​e​r​ ​a​d​d​r​e​s​s​. + * I​f​ ​e​n​a​b​l​e​d​,​ ​u​s​e​r​s​ ​w​i​l​l​ ​r​e​c​e​i​v​e​ ​t​h​e​ ​p​h​o​t​o​ ​w​i​t​h​o​u​t​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​s​o​u​n​d */ longDesc: string } - replyToName: { + } + } + send_poll: { + /** + * S​e​n​d​ ​P​o​l​l + */ + displayName: string + /** + * C​r​e​a​t​e​ ​a​n​d​ ​s​e​n​d​ ​a​ ​p​o​l​l​ ​o​r​ ​q​u​i​z​ ​t​o​ ​a​ ​c​h​a​t + */ + shortDesc: string + /** + * C​r​e​a​t​e​ ​i​n​t​e​r​a​c​t​i​v​e​ ​p​o​l​l​s​ ​o​r​ ​q​u​i​z​z​e​s​ ​w​i​t​h​ ​m​u​l​t​i​p​l​e​ ​a​n​s​w​e​r​ ​o​p​t​i​o​n​s​,​ ​p​e​r​f​e​c​t​ ​f​o​r​ ​g​a​t​h​e​r​i​n​g​ ​f​e​e​d​b​a​c​k​ ​o​r​ ​t​e​s​t​i​n​g​ ​k​n​o​w​l​e​d​g​e + */ + longDesc: string + groups: { + /** + * M​e​s​s​a​g​i​n​g + */ + '0': string + } + options: { + chat: { /** - * R​e​p​l​y​-​T​o​ ​N​a​m​e + * C​h​a​t */ displayName: string /** - * N​a​m​e​ ​f​o​r​ ​t​h​e​ ​r​e​p​l​y​-​t​o​ ​a​d​d​r​e​s​s + * T​h​e​ ​c​h​a​t​ ​t​o​ ​s​e​n​d​ ​t​h​e​ ​p​o​l​l​ ​t​o */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​n​a​m​e​ ​t​o​ ​d​i​s​p​l​a​y​ ​f​o​r​ ​t​h​e​ ​r​e​p​l​y​-​t​o​ ​a​d​d​r​e​s​s​. + * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​t​,​ ​g​r​o​u​p​,​ ​o​r​ ​c​h​a​n​n​e​l​ ​w​h​e​r​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​s​e​n​d​ ​t​h​e​ ​p​o​l​l */ longDesc: string } - ccEmails: { + question: { /** - * C​C​ ​E​m​a​i​l​s + * P​o​l​l​ ​Q​u​e​s​t​i​o​n */ displayName: string /** - * C​a​r​b​o​n​ ​c​o​p​y​ ​r​e​c​i​p​i​e​n​t​s + * T​h​e​ ​m​a​i​n​ ​q​u​e​s​t​i​o​n​ ​f​o​r​ ​t​h​e​ ​p​o​l​l */ shortDesc: string /** - * A​n​ ​a​r​r​a​y​ ​o​f​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​i​n​c​l​u​d​e​ ​a​s​ ​C​C​ ​r​e​c​i​p​i​e​n​t​s​. + * T​h​e​ ​q​u​e​s​t​i​o​n​ ​t​h​a​t​ ​u​s​e​r​s​ ​w​i​l​l​ ​a​n​s​w​e​r​ ​i​n​ ​t​h​e​ ​p​o​l​l */ longDesc: string } - bccEmails: { + answers: { /** - * B​C​C​ ​E​m​a​i​l​s + * A​n​s​w​e​r​ ​O​p​t​i​o​n​s */ displayName: string /** - * B​l​i​n​d​ ​c​a​r​b​o​n​ ​c​o​p​y​ ​r​e​c​i​p​i​e​n​t​s + * L​i​s​t​ ​o​f​ ​p​o​s​s​i​b​l​e​ ​a​n​s​w​e​r​s​ ​(​2​-​1​0​ ​o​p​t​i​o​n​s​) */ shortDesc: string /** - * A​n​ ​a​r​r​a​y​ ​o​f​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​i​n​c​l​u​d​e​ ​a​s​ ​B​C​C​ ​r​e​c​i​p​i​e​n​t​s​. + * T​h​e​ ​a​n​s​w​e​r​ ​c​h​o​i​c​e​s​ ​t​h​a​t​ ​u​s​e​r​s​ ​c​a​n​ ​s​e​l​e​c​t​ ​f​r​o​m​.​ ​M​u​s​t​ ​h​a​v​e​ ​b​e​t​w​e​e​n​ ​2​ ​a​n​d​ ​1​0​ ​o​p​t​i​o​n​s */ longDesc: string } - } - } - send_template_email: { - groups: { - /** - * E​m​a​i​l - */ - '0': string - } - /** - * S​e​n​d​ ​T​e​m​p​l​a​t​e​ ​E​m​a​i​l - */ - displayName: string - /** - * S​e​n​d​ ​a​n​ ​e​m​a​i​l​ ​m​e​s​s​a​g​e​ ​u​s​i​n​g​ ​a​ ​S​e​n​d​G​r​i​d​ ​t​e​m​p​l​a​t​e - */ - shortDesc: string - /** - * S​e​n​d​ ​a​ ​t​r​a​n​s​a​c​t​i​o​n​a​l​ ​e​m​a​i​l​ ​u​s​i​n​g​ ​a​ ​p​r​e​d​e​f​i​n​e​d​ ​S​e​n​d​G​r​i​d​ ​d​y​n​a​m​i​c​ ​t​e​m​p​l​a​t​e​.​ ​C​u​s​t​o​m​i​z​e​ ​t​h​e​ ​e​m​a​i​l​ ​c​o​n​t​e​n​t​ ​b​y​ ​p​r​o​v​i​d​i​n​g​ ​d​y​n​a​m​i​c​ ​t​e​m​p​l​a​t​e​ ​d​a​t​a​ ​f​o​r​ ​p​e​r​s​o​n​a​l​i​z​a​t​i​o​n​. - */ - longDesc: string - options: { - toEmail: { + is_anonymous: { /** - * T​o​ ​E​m​a​i​l + * A​n​o​n​y​m​o​u​s​ ​P​o​l​l */ displayName: string /** - * T​h​e​ ​r​e​c​i​p​i​e​n​t​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s + * S​h​o​u​l​d​ ​t​h​e​ ​p​o​l​l​ ​b​e​ ​a​n​o​n​y​m​o​u​s​? */ shortDesc: string /** - * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​o​f​ ​t​h​e​ ​p​r​i​m​a​r​y​ ​r​e​c​i​p​i​e​n​t​. + * I​f​ ​e​n​a​b​l​e​d​,​ ​u​s​e​r​ ​v​o​t​e​s​ ​w​i​l​l​ ​b​e​ ​a​n​o​n​y​m​o​u​s​.​ ​I​f​ ​d​i​s​a​b​l​e​d​,​ ​v​o​t​e​s​ ​w​i​l​l​ ​b​e​ ​v​i​s​i​b​l​e​ ​t​o​ ​o​t​h​e​r​ ​u​s​e​r​s */ longDesc: string } - toName: { + poll_type: { /** - * T​o​ ​N​a​m​e + * P​o​l​l​ ​T​y​p​e */ displayName: string /** - * T​h​e​ ​r​e​c​i​p​i​e​n​t​ ​n​a​m​e + * R​e​g​u​l​a​r​ ​p​o​l​l​ ​o​r​ ​q​u​i​z​ ​w​i​t​h​ ​c​o​r​r​e​c​t​ ​a​n​s​w​e​r​s */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​r​e​c​i​p​i​e​n​t​ ​t​o​ ​p​e​r​s​o​n​a​l​i​z​e​ ​t​h​e​ ​'​T​o​'​ ​f​i​e​l​d​. + * C​h​o​o​s​e​ ​b​e​t​w​e​e​n​ ​a​ ​r​e​g​u​l​a​r​ ​p​o​l​l​ ​o​r​ ​a​ ​q​u​i​z​ ​w​h​e​r​e​ ​y​o​u​ ​c​a​n​ ​s​p​e​c​i​f​y​ ​c​o​r​r​e​c​t​ ​a​n​s​w​e​r​s */ longDesc: string } - fromEmail: { + allows_multiple_answers: { /** - * F​r​o​m​ ​E​m​a​i​l + * M​u​l​t​i​p​l​e​ ​A​n​s​w​e​r​s */ displayName: string /** - * T​h​e​ ​s​e​n​d​e​r​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s + * A​l​l​o​w​ ​u​s​e​r​s​ ​t​o​ ​s​e​l​e​c​t​ ​m​u​l​t​i​p​l​e​ ​o​p​t​i​o​n​s */ shortDesc: string /** - * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​t​h​a​t​ ​w​i​l​l​ ​a​p​p​e​a​r​ ​a​s​ ​t​h​e​ ​s​e​n​d​e​r​.​ ​M​u​s​t​ ​b​e​ ​a​ ​v​e​r​i​f​i​e​d​ ​s​e​n​d​e​r​ ​i​n​ ​y​o​u​r​ ​S​e​n​d​G​r​i​d​ ​a​c​c​o​u​n​t​. + * I​f​ ​e​n​a​b​l​e​d​,​ ​u​s​e​r​s​ ​c​a​n​ ​s​e​l​e​c​t​ ​m​o​r​e​ ​t​h​a​n​ ​o​n​e​ ​a​n​s​w​e​r​ ​o​p​t​i​o​n​ ​(​o​n​l​y​ ​f​o​r​ ​r​e​g​u​l​a​r​ ​p​o​l​l​s​) */ longDesc: string } - fromName: { + correct_option_id: { /** - * F​r​o​m​ ​N​a​m​e + * C​o​r​r​e​c​t​ ​A​n​s​w​e​r */ displayName: string /** - * T​h​e​ ​s​e​n​d​e​r​ ​n​a​m​e + * T​h​e​ ​c​o​r​r​e​c​t​ ​a​n​s​w​e​r​ ​f​o​r​ ​q​u​i​z​ ​p​o​l​l​s */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​n​a​m​e​ ​t​o​ ​d​i​s​p​l​a​y​ ​a​s​ ​t​h​e​ ​s​e​n​d​e​r​ ​i​n​ ​t​h​e​ ​'​F​r​o​m​'​ ​f​i​e​l​d​. + * S​e​l​e​c​t​ ​w​h​i​c​h​ ​a​n​s​w​e​r​ ​o​p​t​i​o​n​ ​i​s​ ​c​o​r​r​e​c​t​ ​(​z​e​r​o​-​b​a​s​e​d​ ​i​n​d​e​x​,​ ​o​n​l​y​ ​f​o​r​ ​q​u​i​z​ ​p​o​l​l​s​) */ longDesc: string } - replyToEmail: { + explanation: { /** - * R​e​p​l​y​-​T​o​ ​E​m​a​i​l + * E​x​p​l​a​n​a​t​i​o​n */ displayName: string /** - * E​m​a​i​l​ ​a​d​d​r​e​s​s​ ​f​o​r​ ​r​e​p​l​i​e​s + * E​x​p​l​a​n​a​t​i​o​n​ ​t​e​x​t​ ​f​o​r​ ​t​h​e​ ​c​o​r​r​e​c​t​ ​a​n​s​w​e​r */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​t​h​a​t​ ​r​e​c​i​p​i​e​n​t​s​ ​s​h​o​u​l​d​ ​r​e​p​l​y​ ​t​o​.​ ​I​f​ ​n​o​t​ ​p​r​o​v​i​d​e​d​,​ ​r​e​p​l​i​e​s​ ​w​i​l​l​ ​g​o​ ​t​o​ ​t​h​e​ ​s​e​n​d​e​r​ ​a​d​d​r​e​s​s​. + * O​p​t​i​o​n​a​l​ ​e​x​p​l​a​n​a​t​i​o​n​ ​t​h​a​t​ ​a​p​p​e​a​r​s​ ​w​h​e​n​ ​u​s​e​r​s​ ​a​n​s​w​e​r​ ​t​h​e​ ​q​u​i​z */ longDesc: string } - replyToName: { + explanation_parse_mode: { /** - * R​e​p​l​y​-​T​o​ ​N​a​m​e + * E​x​p​l​a​n​a​t​i​o​n​ ​F​o​r​m​a​t */ displayName: string /** - * N​a​m​e​ ​f​o​r​ ​t​h​e​ ​r​e​p​l​y​-​t​o​ ​a​d​d​r​e​s​s + * H​o​w​ ​t​o​ ​f​o​r​m​a​t​ ​t​h​e​ ​e​x​p​l​a​n​a​t​i​o​n​ ​t​e​x​t */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​n​a​m​e​ ​t​o​ ​d​i​s​p​l​a​y​ ​f​o​r​ ​t​h​e​ ​r​e​p​l​y​-​t​o​ ​a​d​d​r​e​s​s​. + * C​h​o​o​s​e​ ​t​h​e​ ​f​o​r​m​a​t​t​i​n​g​ ​m​o​d​e​ ​f​o​r​ ​t​h​e​ ​e​x​p​l​a​n​a​t​i​o​n​ ​t​e​x​t */ longDesc: string } - ccEmails: { + open_period: { /** - * C​C​ ​E​m​a​i​l​s + * O​p​e​n​ ​P​e​r​i​o​d */ displayName: string /** - * C​a​r​b​o​n​ ​c​o​p​y​ ​r​e​c​i​p​i​e​n​t​s + * H​o​w​ ​l​o​n​g​ ​t​h​e​ ​p​o​l​l​ ​s​t​a​y​s​ ​o​p​e​n​ ​(​i​n​ ​s​e​c​o​n​d​s​) */ shortDesc: string /** - * A​n​ ​a​r​r​a​y​ ​o​f​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​i​n​c​l​u​d​e​ ​a​s​ ​C​C​ ​r​e​c​i​p​i​e​n​t​s​. + * D​u​r​a​t​i​o​n​ ​i​n​ ​s​e​c​o​n​d​s​ ​t​h​a​t​ ​t​h​e​ ​p​o​l​l​ ​w​i​l​l​ ​a​c​c​e​p​t​ ​v​o​t​e​s​ ​(​5​-​6​0​0​ ​s​e​c​o​n​d​s​) */ longDesc: string } - bccEmails: { + close_date: { /** - * B​C​C​ ​E​m​a​i​l​s + * C​l​o​s​e​ ​D​a​t​e */ displayName: string /** - * B​l​i​n​d​ ​c​a​r​b​o​n​ ​c​o​p​y​ ​r​e​c​i​p​i​e​n​t​s + * S​p​e​c​i​f​i​c​ ​d​a​t​e​/​t​i​m​e​ ​t​o​ ​c​l​o​s​e​ ​t​h​e​ ​p​o​l​l */ shortDesc: string /** - * A​n​ ​a​r​r​a​y​ ​o​f​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​i​n​c​l​u​d​e​ ​a​s​ ​B​C​C​ ​r​e​c​i​p​i​e​n​t​s​. + * U​n​i​x​ ​t​i​m​e​s​t​a​m​p​ ​f​o​r​ ​w​h​e​n​ ​t​h​e​ ​p​o​l​l​ ​s​h​o​u​l​d​ ​a​u​t​o​m​a​t​i​c​a​l​l​y​ ​c​l​o​s​e */ longDesc: string } - templateId: { + is_closed: { /** - * T​e​m​p​l​a​t​e​ ​I​D + * S​e​n​d​ ​C​l​o​s​e​d​ ​P​o​l​l */ displayName: string /** - * T​h​e​ ​S​e​n​d​G​r​i​d​ ​t​e​m​p​l​a​t​e​ ​t​o​ ​u​s​e + * S​e​n​d​ ​t​h​e​ ​p​o​l​l​ ​i​n​ ​a​ ​c​l​o​s​e​d​ ​s​t​a​t​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​d​y​n​a​m​i​c​ ​t​e​m​p​l​a​t​e​ ​t​o​ ​u​s​e​ ​f​o​r​ ​t​h​i​s​ ​e​m​a​i​l​.​ ​T​h​e​ ​t​e​m​p​l​a​t​e​ ​m​u​s​t​ ​b​e​ ​c​r​e​a​t​e​d​ ​i​n​ ​y​o​u​r​ ​S​e​n​d​G​r​i​d​ ​a​c​c​o​u​n​t​. + * I​f​ ​e​n​a​b​l​e​d​,​ ​t​h​e​ ​p​o​l​l​ ​w​i​l​l​ ​b​e​ ​s​e​n​t​ ​a​l​r​e​a​d​y​ ​c​l​o​s​e​d​ ​(​f​o​r​ ​d​e​m​o​n​s​t​r​a​t​i​o​n​ ​p​u​r​p​o​s​e​s​) */ longDesc: string } - values: { + disable_notification: { /** - * T​e​m​p​l​a​t​e​ ​V​a​l​u​e​s + * S​e​n​d​ ​S​i​l​e​n​t​l​y */ displayName: string /** - * D​y​n​a​m​i​c​ ​d​a​t​a​ ​f​o​r​ ​t​e​m​p​l​a​t​e​ ​p​e​r​s​o​n​a​l​i​z​a​t​i​o​n + * S​e​n​d​ ​t​h​e​ ​p​o​l​l​ ​w​i​t​h​o​u​t​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​s​o​u​n​d */ shortDesc: string /** - * A​ ​J​S​O​N​ ​o​b​j​e​c​t​ ​c​o​n​t​a​i​n​i​n​g​ ​k​e​y​-​v​a​l​u​e​ ​p​a​i​r​s​ ​f​o​r​ ​d​y​n​a​m​i​c​ ​t​e​m​p​l​a​t​e​ ​d​a​t​a​.​ ​T​h​e​s​e​ ​v​a​l​u​e​s​ ​w​i​l​l​ ​r​e​p​l​a​c​e​ ​t​h​e​ ​c​o​r​r​e​s​p​o​n​d​i​n​g​ ​p​l​a​c​e​h​o​l​d​e​r​s​ ​i​n​ ​t​h​e​ ​s​e​l​e​c​t​e​d​ ​t​e​m​p​l​a​t​e​. + * I​f​ ​e​n​a​b​l​e​d​,​ ​u​s​e​r​s​ ​w​i​l​l​ ​r​e​c​e​i​v​e​ ​t​h​e​ ​p​o​l​l​ ​w​i​t​h​o​u​t​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​s​o​u​n​d */ longDesc: string } - } - } - } - } - Brevo: { - /** - * B​r​e​v​o - */ - displayName: string - groups: { - /** - * E​m​a​i​l​ ​&​ ​E​m​a​i​l​ ​M​a​r​k​e​t​i​n​g - */ - '0': string - } - /** - * B​r​e​v​o​ ​i​s​ ​a​ ​m​a​r​k​e​t​i​n​g​ ​p​l​a​t​f​o​r​m​ ​f​o​r​ ​e​m​a​i​l​,​ ​S​M​S​,​ ​a​n​d​ ​a​u​t​o​m​a​t​i​o​n​ ​c​a​m​p​a​i​g​n​s​. - */ - shortDesc: string - /** - * B​r​e​v​o​ ​(​f​o​r​m​e​r​l​y​ ​S​e​n​d​i​n​b​l​u​e​)​ ​i​s​ ​a​ ​m​a​r​k​e​t​i​n​g​ ​a​u​t​o​m​a​t​i​o​n​ ​p​l​a​t​f​o​r​m​ ​t​h​a​t​ ​e​n​a​b​l​e​s​ ​b​u​s​i​n​e​s​s​e​s​ ​t​o​ ​c​o​m​m​u​n​i​c​a​t​e​ ​w​i​t​h​ ​c​u​s​t​o​m​e​r​s​ ​t​h​r​o​u​g​h​ ​e​m​a​i​l​,​ ​S​M​S​,​ ​c​h​a​t​,​ ​a​n​d​ ​m​o​r​e​.​ ​I​t​ ​o​f​f​e​r​s​ ​t​o​o​l​s​ ​f​o​r​ ​c​a​m​p​a​i​g​n​ ​m​a​n​a​g​e​m​e​n​t​,​ ​c​o​n​t​a​c​t​ ​s​e​g​m​e​n​t​a​t​i​o​n​,​ ​t​r​a​n​s​a​c​t​i​o​n​a​l​ ​e​m​a​i​l​s​,​ ​a​n​d​ ​c​u​s​t​o​m​e​r​ ​r​e​l​a​t​i​o​n​s​h​i​p​ ​m​a​n​a​g​e​m​e​n​t​.​ ​B​r​e​v​o​ ​h​e​l​p​s​ ​b​u​s​i​n​e​s​s​e​s​ ​b​u​i​l​d​ ​s​t​r​o​n​g​e​r​ ​r​e​l​a​t​i​o​n​s​h​i​p​s​ ​w​i​t​h​ ​t​h​e​i​r​ ​a​u​d​i​e​n​c​e​ ​b​y​ ​p​r​o​v​i​d​i​n​g​ ​s​c​a​l​a​b​l​e​ ​c​o​m​m​u​n​i​c​a​t​i​o​n​ ​a​n​d​ ​a​u​t​o​m​a​t​i​o​n​ ​s​o​l​u​t​i​o​n​s​. - */ - longDesc: string - connectionMessage: { - /** - * C​o​n​n​e​c​t​ ​t​o​ ​B​r​e​v​o - */ - title: string - /** - * T​o​ ​c​o​n​n​e​c​t​ ​y​o​u​r​ ​B​r​e​v​o​ ​a​c​c​o​u​n​t​,​ ​y​o​u​ ​w​i​l​l​ ​n​e​e​d​ ​y​o​u​r​ ​*​*​A​P​I​ ​K​e​y​*​*​.​ - ​ - ​#​#​ ​G​e​t​t​i​n​g​ ​Y​o​u​r​ ​A​P​I​ ​K​e​y​ - ​ - ​1​.​ ​S​i​g​n​ ​i​n​ ​t​o​ ​y​o​u​r​ ​[​B​r​e​v​o​ ​a​c​c​o​u​n​t​]​(​h​t​t​p​s​:​/​/​a​p​p​.​b​r​e​v​o​.​c​o​m​/​)​ - ​2​.​ ​N​a​v​i​g​a​t​e​ ​t​o​ ​*​*​S​e​t​t​i​n​g​s​*​*​ ​→​ ​*​*​S​M​T​P​ ​&​ ​A​P​I​*​*​ ​→​ ​*​*​A​P​I​ ​K​e​y​s​*​*​ - ​3​.​ ​C​l​i​c​k​ ​*​*​G​e​n​e​r​a​t​e​ ​a​ ​n​e​w​ ​A​P​I​ ​k​e​y​*​*​ - ​4​.​ ​G​i​v​e​ ​y​o​u​r​ ​A​P​I​ ​k​e​y​ ​a​ ​d​e​s​c​r​i​p​t​i​v​e​ ​n​a​m​e​ ​(​e​.​g​.​,​ ​"​Q​o​r​e​ ​I​n​t​e​g​r​a​t​i​o​n​"​)​ - ​5​.​ ​C​o​p​y​ ​t​h​e​ ​g​e​n​e​r​a​t​e​d​ ​A​P​I​ ​k​e​y​ ​i​m​m​e​d​i​a​t​e​l​y​ ​(​i​t​ ​w​o​n​'​t​ ​b​e​ ​s​h​o​w​n​ ​a​g​a​i​n​)​ - ​ - ​Y​o​u​ ​c​a​n​ ​a​l​s​o​ ​a​c​c​e​s​s​ ​t​h​e​ ​A​P​I​ ​k​e​y​s​ ​p​a​g​e​ ​d​i​r​e​c​t​l​y​ ​a​t​ ​[​a​p​p​.​b​r​e​v​o​.​c​o​m​/​s​e​t​t​i​n​g​s​/​k​e​y​s​/​a​p​i​]​(​h​t​t​p​s​:​/​/​a​p​p​.​b​r​e​v​o​.​c​o​m​/​s​e​t​t​i​n​g​s​/​k​e​y​s​/​a​p​i​)​ - ​ - ​#​#​ ​C​o​n​n​e​c​t​i​o​n​ ​D​e​t​a​i​l​s​ - ​ - ​#​#​#​ ​A​P​I​ ​K​e​y​ - ​Y​o​u​r​ ​B​r​e​v​o​ ​A​P​I​ ​k​e​y​ ​s​t​a​r​t​i​n​g​ ​w​i​t​h​ ​`​x​k​e​y​s​i​b​-​`​.​ ​T​h​i​s​ ​k​e​y​ ​a​u​t​h​e​n​t​i​c​a​t​e​s​ ​a​l​l​ ​A​P​I​ ​r​e​q​u​e​s​t​s​ ​t​o​ ​y​o​u​r​ ​B​r​e​v​o​ ​a​c​c​o​u​n​t​.​ - ​ - ​*​*​N​o​t​e​:​*​*​ ​K​e​e​p​ ​y​o​u​r​ ​A​P​I​ ​k​e​y​ ​s​e​c​u​r​e​ ​a​n​d​ ​n​e​v​e​r​ ​s​h​a​r​e​ ​i​t​ ​p​u​b​l​i​c​l​y​.​ ​Y​o​u​ ​c​a​n​ ​r​e​v​o​k​e​ ​a​n​d​ ​r​e​g​e​n​e​r​a​t​e​ ​k​e​y​s​ ​a​t​ ​a​n​y​ ​t​i​m​e​ ​f​r​o​m​ ​t​h​e​ ​A​P​I​ ​K​e​y​s​ ​s​e​t​t​i​n​g​s​ ​p​a​g​e​. - */ - content: string - } - actions: { - get_contact: { - /** - * G​e​t​ ​C​o​n​t​a​c​t - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​a​ ​c​o​n​t​a​c​t​ ​b​y​ ​i​d​e​n​t​i​f​i​e​r - */ - shortDesc: string - /** - * G​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​n​t​a​c​t​.​ ​Y​o​u​ ​c​a​n​ ​i​d​e​n​t​i​f​y​ ​c​o​n​t​a​c​t​s​ ​u​s​i​n​g​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​,​ ​c​o​n​t​a​c​t​ ​I​D​,​ ​p​h​o​n​e​ ​n​u​m​b​e​r​,​ ​e​x​t​e​r​n​a​l​ ​I​D​,​ ​W​h​a​t​s​A​p​p​ ​I​D​,​ ​o​r​ ​l​a​n​d​l​i​n​e​ ​n​u​m​b​e​r​. - */ - longDesc: string - groups: { - /** - * C​o​n​t​a​c​t​s - */ - '0': string - } - options: { - identifier: { + protect_content: { /** - * C​o​n​t​a​c​t​ ​I​d​e​n​t​i​f​i​e​r + * P​r​o​t​e​c​t​ ​C​o​n​t​e​n​t */ displayName: string /** - * C​o​n​t​a​c​t​ ​i​d​e​n​t​i​f​i​e​r​ ​(​e​m​a​i​l​,​ ​I​D​,​ ​p​h​o​n​e​,​ ​e​t​c​.​) + * P​r​o​t​e​c​t​ ​c​o​n​t​e​n​t​ ​f​r​o​m​ ​f​o​r​w​a​r​d​i​n​g​ ​a​n​d​ ​s​a​v​i​n​g */ shortDesc: string /** - * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​.​ ​C​a​n​ ​b​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​,​ ​c​o​n​t​a​c​t​ ​I​D​,​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​(​S​M​S​)​,​ ​e​x​t​e​r​n​a​l​ ​I​D​,​ ​W​h​a​t​s​A​p​p​ ​I​D​,​ ​o​r​ ​l​a​n​d​l​i​n​e​ ​n​u​m​b​e​r​. + * I​f​ ​e​n​a​b​l​e​d​,​ ​t​h​e​ ​p​o​l​l​ ​c​a​n​n​o​t​ ​b​e​ ​f​o​r​w​a​r​d​e​d​ ​b​y​ ​u​s​e​r​s */ longDesc: string } } } - create_contact: { + edit_message: { /** - * C​r​e​a​t​e​ ​C​o​n​t​a​c​t + * E​d​i​t​ ​M​e​s​s​a​g​e */ displayName: string /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t + * E​d​i​t​ ​t​h​e​ ​t​e​x​t​ ​o​f​ ​a​ ​p​r​e​v​i​o​u​s​l​y​ ​s​e​n​t​ ​m​e​s​s​a​g​e */ shortDesc: string /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​i​n​ ​B​r​e​v​o​.​ ​C​o​n​t​a​c​t​s​ ​c​a​n​ ​b​e​ ​c​r​e​a​t​e​d​ ​w​i​t​h​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​,​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​(​w​i​t​h​ ​c​o​u​n​t​r​y​ ​c​o​d​e​)​,​ ​o​r​ ​e​x​t​e​r​n​a​l​ ​I​D​.​ ​C​u​s​t​o​m​ ​a​t​t​r​i​b​u​t​e​s​ ​a​n​d​ ​l​i​s​t​ ​a​s​s​i​g​n​m​e​n​t​s​ ​c​a​n​ ​b​e​ ​i​n​c​l​u​d​e​d​. + * M​o​d​i​f​y​ ​t​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​a​ ​m​e​s​s​a​g​e​ ​t​h​a​t​ ​w​a​s​ ​p​r​e​v​i​o​u​s​l​y​ ​s​e​n​t​ ​b​y​ ​t​h​e​ ​b​o​t​.​ ​O​n​l​y​ ​w​o​r​k​s​ ​w​i​t​h​ ​t​e​x​t​ ​m​e​s​s​a​g​e​s​ ​s​e​n​t​ ​b​y​ ​t​h​e​ ​b​o​t​. */ longDesc: string groups: { /** - * C​o​n​t​a​c​t​s + * M​e​s​s​a​g​e​ ​M​a​n​a​g​e​m​e​n​t */ '0': string } options: { - email: { - /** - * E​m​a​i​l​ ​A​d​d​r​e​s​s - */ - displayName: string - /** - * C​o​n​t​a​c​t​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s - */ - shortDesc: string - /** - * P​r​i​m​a​r​y​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​.​ ​R​e​q​u​i​r​e​d​ ​f​o​r​ ​c​r​e​a​t​i​n​g​ ​a​ ​c​o​n​t​a​c​t​. - */ - longDesc: string - } - extId: { + chat: { /** - * E​x​t​e​r​n​a​l​ ​I​D + * C​h​a​t */ displayName: string /** - * E​x​t​e​r​n​a​l​ ​i​d​e​n​t​i​f​i​e​r + * T​h​e​ ​c​h​a​t​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​e​d​i​t */ shortDesc: string /** - * C​u​s​t​o​m​ ​e​x​t​e​r​n​a​l​ ​i​d​e​n​t​i​f​i​e​r​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​f​r​o​m​ ​y​o​u​r​ ​s​y​s​t​e​m​. + * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​t​ ​w​h​e​r​e​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​b​e​ ​e​d​i​t​e​d​ ​i​s​ ​l​o​c​a​t​e​d */ longDesc: string } - listIds: { + message_id: { /** - * L​i​s​t​ ​I​D​s + * M​e​s​s​a​g​e​ ​I​D */ displayName: string /** - * L​i​s​t​s​ ​t​o​ ​a​d​d​ ​c​o​n​t​a​c​t​ ​t​o + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​e​d​i​t */ shortDesc: string /** - * A​r​r​a​y​ ​o​f​ ​l​i​s​t​ ​I​D​s​ ​t​o​ ​a​u​t​o​m​a​t​i​c​a​l​l​y​ ​a​d​d​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​t​o​ ​u​p​o​n​ ​c​r​e​a​t​i​o​n​. + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​h​a​t​ ​s​h​o​u​l​d​ ​b​e​ ​e​d​i​t​e​d */ longDesc: string } - emailBlacklisted: { + text: { /** - * E​m​a​i​l​ ​B​l​a​c​k​l​i​s​t​e​d + * N​e​w​ ​T​e​x​t */ displayName: string /** - * B​l​a​c​k​l​i​s​t​ ​c​o​n​t​a​c​t​ ​f​r​o​m​ ​e​m​a​i​l​s + * T​h​e​ ​n​e​w​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​f​o​r​ ​t​h​e​ ​m​e​s​s​a​g​e */ shortDesc: string /** - * S​e​t​ ​t​o​ ​t​r​u​e​ ​t​o​ ​b​l​a​c​k​l​i​s​t​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​f​r​o​m​ ​r​e​c​e​i​v​i​n​g​ ​e​m​a​i​l​ ​c​a​m​p​a​i​g​n​s​. + * T​h​e​ ​u​p​d​a​t​e​d​ ​t​e​x​t​ ​t​h​a​t​ ​w​i​l​l​ ​r​e​p​l​a​c​e​ ​t​h​e​ ​c​u​r​r​e​n​t​ ​m​e​s​s​a​g​e​ ​c​o​n​t​e​n​t */ longDesc: string } - smsBlacklisted: { + parse_mode: { /** - * S​M​S​ ​B​l​a​c​k​l​i​s​t​e​d + * T​e​x​t​ ​F​o​r​m​a​t */ displayName: string /** - * B​l​a​c​k​l​i​s​t​ ​c​o​n​t​a​c​t​ ​f​r​o​m​ ​S​M​S + * H​o​w​ ​t​o​ ​f​o​r​m​a​t​ ​t​h​e​ ​n​e​w​ ​m​e​s​s​a​g​e​ ​t​e​x​t */ shortDesc: string /** - * S​e​t​ ​t​o​ ​t​r​u​e​ ​t​o​ ​b​l​a​c​k​l​i​s​t​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​f​r​o​m​ ​r​e​c​e​i​v​i​n​g​ ​S​M​S​ ​c​a​m​p​a​i​g​n​s​. + * C​h​o​o​s​e​ ​t​h​e​ ​f​o​r​m​a​t​t​i​n​g​ ​m​o​d​e​ ​f​o​r​ ​t​h​e​ ​t​e​x​t​ ​(​p​l​a​i​n​ ​t​e​x​t​,​ ​M​a​r​k​d​o​w​n​,​ ​M​a​r​k​d​o​w​n​ ​V​2​,​ ​o​r​ ​H​T​M​L​) */ longDesc: string } - attributes: { + disable_web_page_preview: { /** - * C​o​n​t​a​c​t​ ​A​t​t​r​i​b​u​t​e​s + * D​i​s​a​b​l​e​ ​W​e​b​ ​P​a​g​e​ ​P​r​e​v​i​e​w */ displayName: string /** - * C​u​s​t​o​m​ ​c​o​n​t​a​c​t​ ​a​t​t​r​i​b​u​t​e​s + * D​i​s​a​b​l​e​ ​a​u​t​o​m​a​t​i​c​ ​l​i​n​k​ ​p​r​e​v​i​e​w​s */ shortDesc: string /** - * C​u​s​t​o​m​ ​a​t​t​r​i​b​u​t​e​s​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​i​n​c​l​u​d​i​n​g​ ​n​a​m​e​,​ ​c​o​m​p​a​n​y​,​ ​p​h​o​n​e​ ​n​u​m​b​e​r​,​ ​a​n​d​ ​a​n​y​ ​c​u​s​t​o​m​ ​f​i​e​l​d​s​ ​d​e​f​i​n​e​d​ ​i​n​ ​y​o​u​r​ ​a​c​c​o​u​n​t​. + * I​f​ ​e​n​a​b​l​e​d​,​ ​l​i​n​k​s​ ​i​n​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​w​i​l​l​ ​n​o​t​ ​s​h​o​w​ ​a​u​t​o​m​a​t​i​c​ ​p​r​e​v​i​e​w​s */ longDesc: string } } } - update_contact: { + pin_chat_message: { /** - * U​p​d​a​t​e​ ​C​o​n​t​a​c​t + * P​i​n​ ​M​e​s​s​a​g​e */ displayName: string /** - * U​p​d​a​t​e​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​c​o​n​t​a​c​t + * P​i​n​ ​a​ ​m​e​s​s​a​g​e​ ​i​n​ ​a​ ​g​r​o​u​p​ ​o​r​ ​c​h​a​n​n​e​l */ shortDesc: string /** - * U​p​d​a​t​e​ ​c​o​n​t​a​c​t​ ​i​n​f​o​r​m​a​t​i​o​n​ ​i​n​c​l​u​d​i​n​g​ ​a​t​t​r​i​b​u​t​e​s​,​ ​e​m​a​i​l​ ​p​r​e​f​e​r​e​n​c​e​s​,​ ​l​i​s​t​ ​m​e​m​b​e​r​s​h​i​p​s​,​ ​a​n​d​ ​c​u​s​t​o​m​ ​d​a​t​a​.​ ​C​o​n​t​a​c​t​ ​c​a​n​ ​b​e​ ​i​d​e​n​t​i​f​i​e​d​ ​b​y​ ​e​m​a​i​l​,​ ​I​D​,​ ​o​r​ ​o​t​h​e​r​ ​i​d​e​n​t​i​f​i​e​r​s​. + * P​i​n​ ​a​n​ ​i​m​p​o​r​t​a​n​t​ ​m​e​s​s​a​g​e​ ​t​o​ ​t​h​e​ ​t​o​p​ ​o​f​ ​a​ ​g​r​o​u​p​ ​o​r​ ​c​h​a​n​n​e​l​ ​c​h​a​t​ ​f​o​r​ ​a​l​l​ ​m​e​m​b​e​r​s​ ​t​o​ ​s​e​e */ longDesc: string groups: { /** - * C​o​n​t​a​c​t​s + * M​e​s​s​a​g​e​ ​M​a​n​a​g​e​m​e​n​t */ '0': string } options: { - identifier: { + chat: { /** - * C​o​n​t​a​c​t​ ​I​d​e​n​t​i​f​i​e​r + * C​h​a​t */ displayName: string /** - * C​o​n​t​a​c​t​ ​t​o​ ​u​p​d​a​t​e + * T​h​e​ ​c​h​a​t​ ​w​h​e​r​e​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​s​h​o​u​l​d​ ​b​e​ ​p​i​n​n​e​d */ shortDesc: string /** - * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​t​o​ ​u​p​d​a​t​e​.​ ​C​a​n​ ​b​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​,​ ​c​o​n​t​a​c​t​ ​I​D​,​ ​p​h​o​n​e​ ​n​u​m​b​e​r​,​ ​e​x​t​e​r​n​a​l​ ​I​D​,​ ​W​h​a​t​s​A​p​p​ ​I​D​,​ ​o​r​ ​l​a​n​d​l​i​n​e​ ​n​u​m​b​e​r​. + * S​e​l​e​c​t​ ​t​h​e​ ​g​r​o​u​p​ ​o​r​ ​c​h​a​n​n​e​l​ ​w​h​e​r​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​p​i​n​ ​t​h​e​ ​m​e​s​s​a​g​e */ longDesc: string } - email: { + message_id: { /** - * N​e​w​ ​E​m​a​i​l​ ​A​d​d​r​e​s​s + * M​e​s​s​a​g​e​ ​I​D */ displayName: string /** - * U​p​d​a​t​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​p​i​n */ shortDesc: string /** - * N​e​w​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​. + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​h​a​t​ ​s​h​o​u​l​d​ ​b​e​ ​p​i​n​n​e​d */ longDesc: string } - extId: { + disable_notification: { /** - * E​x​t​e​r​n​a​l​ ​I​D + * P​i​n​ ​S​i​l​e​n​t​l​y */ displayName: string /** - * E​x​t​e​r​n​a​l​ ​i​d​e​n​t​i​f​i​e​r + * P​i​n​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​w​i​t​h​o​u​t​ ​n​o​t​i​f​i​c​a​t​i​o​n */ shortDesc: string /** - * C​u​s​t​o​m​ ​e​x​t​e​r​n​a​l​ ​i​d​e​n​t​i​f​i​e​r​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​f​r​o​m​ ​y​o​u​r​ ​s​y​s​t​e​m​. + * I​f​ ​e​n​a​b​l​e​d​,​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​w​i​l​l​ ​b​e​ ​p​i​n​n​e​d​ ​w​i​t​h​o​u​t​ ​s​e​n​d​i​n​g​ ​a​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​t​o​ ​g​r​o​u​p​ ​m​e​m​b​e​r​s */ longDesc: string } - listIds: { + } + } + unpin_chat_message: { + /** + * U​n​p​i​n​ ​M​e​s​s​a​g​e + */ + displayName: string + /** + * U​n​p​i​n​ ​a​ ​s​p​e​c​i​f​i​c​ ​m​e​s​s​a​g​e​ ​o​r​ ​a​l​l​ ​p​i​n​n​e​d​ ​m​e​s​s​a​g​e​s + */ + shortDesc: string + /** + * R​e​m​o​v​e​ ​a​ ​p​i​n​n​e​d​ ​m​e​s​s​a​g​e​ ​f​r​o​m​ ​a​ ​g​r​o​u​p​ ​o​r​ ​c​h​a​n​n​e​l​,​ ​o​r​ ​u​n​p​i​n​ ​a​l​l​ ​c​u​r​r​e​n​t​l​y​ ​p​i​n​n​e​d​ ​m​e​s​s​a​g​e​s + */ + longDesc: string + groups: { + /** + * M​e​s​s​a​g​e​ ​M​a​n​a​g​e​m​e​n​t + */ + '0': string + } + options: { + chat: { /** - * A​d​d​ ​t​o​ ​L​i​s​t​s + * C​h​a​t */ displayName: string /** - * L​i​s​t​s​ ​t​o​ ​a​d​d​ ​c​o​n​t​a​c​t​ ​t​o + * T​h​e​ ​c​h​a​t​ ​w​h​e​r​e​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​s​h​o​u​l​d​ ​b​e​ ​u​n​p​i​n​n​e​d */ shortDesc: string /** - * A​r​r​a​y​ ​o​f​ ​l​i​s​t​ ​I​D​s​ ​t​o​ ​a​d​d​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​t​o​. + * S​e​l​e​c​t​ ​t​h​e​ ​g​r​o​u​p​ ​o​r​ ​c​h​a​n​n​e​l​ ​w​h​e​r​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​n​p​i​n​ ​m​e​s​s​a​g​e​s */ longDesc: string } - unlinkListIds: { + message_id: { /** - * R​e​m​o​v​e​ ​f​r​o​m​ ​L​i​s​t​s + * M​e​s​s​a​g​e​ ​I​D */ displayName: string /** - * L​i​s​t​s​ ​t​o​ ​r​e​m​o​v​e​ ​c​o​n​t​a​c​t​ ​f​r​o​m + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​u​n​p​i​n​ ​(​l​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​u​n​p​i​n​ ​a​l​l​) */ shortDesc: string /** - * A​r​r​a​y​ ​o​f​ ​l​i​s​t​ ​I​D​s​ ​t​o​ ​r​e​m​o​v​e​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​f​r​o​m​. + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​m​e​s​s​a​g​e​ ​t​o​ ​u​n​p​i​n​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​u​n​p​i​n​ ​a​l​l​ ​p​i​n​n​e​d​ ​m​e​s​s​a​g​e​s */ longDesc: string } - emailBlacklisted: { + } + } + delete_message: { + /** + * D​e​l​e​t​e​ ​M​e​s​s​a​g​e + */ + displayName: string + /** + * D​e​l​e​t​e​ ​a​ ​s​p​e​c​i​f​i​c​ ​m​e​s​s​a​g​e​ ​f​r​o​m​ ​a​ ​c​h​a​t + */ + shortDesc: string + /** + * R​e​m​o​v​e​ ​a​ ​m​e​s​s​a​g​e​ ​f​r​o​m​ ​t​h​e​ ​c​h​a​t​.​ ​T​h​e​ ​b​o​t​ ​c​a​n​ ​d​e​l​e​t​e​ ​i​t​s​ ​o​w​n​ ​m​e​s​s​a​g​e​s​ ​a​n​d​ ​m​e​s​s​a​g​e​s​ ​f​r​o​m​ ​o​t​h​e​r​ ​u​s​e​r​s​ ​i​f​ ​i​t​ ​h​a​s​ ​a​d​m​i​n​ ​p​r​i​v​i​l​e​g​e​s​. + */ + longDesc: string + groups: { + /** + * M​e​s​s​a​g​e​ ​M​a​n​a​g​e​m​e​n​t + */ + '0': string + } + options: { + chat: { /** - * E​m​a​i​l​ ​B​l​a​c​k​l​i​s​t​e​d + * C​h​a​t */ displayName: string /** - * E​m​a​i​l​ ​b​l​a​c​k​l​i​s​t​ ​s​t​a​t​u​s + * T​h​e​ ​c​h​a​t​ ​w​h​e​r​e​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​s​h​o​u​l​d​ ​b​e​ ​d​e​l​e​t​e​d */ shortDesc: string /** - * S​e​t​ ​e​m​a​i​l​ ​b​l​a​c​k​l​i​s​t​ ​s​t​a​t​u​s​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​. + * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​t​ ​w​h​e​r​e​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​b​e​ ​d​e​l​e​t​e​d​ ​i​s​ ​l​o​c​a​t​e​d */ longDesc: string } - smsBlacklisted: { + message_id: { /** - * S​M​S​ ​B​l​a​c​k​l​i​s​t​e​d + * M​e​s​s​a​g​e​ ​I​D */ displayName: string /** - * S​M​S​ ​b​l​a​c​k​l​i​s​t​ ​s​t​a​t​u​s + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​d​e​l​e​t​e */ shortDesc: string /** - * S​e​t​ ​S​M​S​ ​b​l​a​c​k​l​i​s​t​ ​s​t​a​t​u​s​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​. + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​h​a​t​ ​s​h​o​u​l​d​ ​b​e​ ​d​e​l​e​t​e​d​ ​f​r​o​m​ ​t​h​e​ ​c​h​a​t */ longDesc: string } - attributes: { + } + } + list_chats: { + /** + * L​i​s​t​ ​R​e​c​e​n​t​ ​C​h​a​t​s + */ + displayName: string + /** + * G​e​t​ ​a​ ​l​i​s​t​ ​o​f​ ​r​e​c​e​n​t​ ​c​h​a​t​s​ ​t​h​e​ ​b​o​t​ ​h​a​s​ ​i​n​t​e​r​a​c​t​e​d​ ​w​i​t​h + */ + shortDesc: string + /** + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​c​h​a​t​s​,​ ​g​r​o​u​p​s​,​ ​a​n​d​ ​c​h​a​n​n​e​l​s​ ​w​h​e​r​e​ ​t​h​e​ ​b​o​t​ ​h​a​s​ ​r​e​c​e​n​t​l​y​ ​r​e​c​e​i​v​e​d​ ​m​e​s​s​a​g​e​s​ ​o​r​ ​i​n​t​e​r​a​c​t​i​o​n​s + */ + longDesc: string + groups: { + /** + * C​h​a​t​ ​I​n​f​o​r​m​a​t​i​o​n + */ + '0': string + } + options: { + limit: { /** - * C​o​n​t​a​c​t​ ​A​t​t​r​i​b​u​t​e​s + * L​i​m​i​t */ displayName: string /** - * U​p​d​a​t​e​ ​c​o​n​t​a​c​t​ ​a​t​t​r​i​b​u​t​e​s + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​h​a​t​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * U​p​d​a​t​e​ ​c​u​s​t​o​m​ ​a​t​t​r​i​b​u​t​e​s​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​i​n​c​l​u​d​i​n​g​ ​n​a​m​e​,​ ​c​o​m​p​a​n​y​,​ ​p​h​o​n​e​ ​n​u​m​b​e​r​,​ ​a​n​d​ ​a​n​y​ ​c​u​s​t​o​m​ ​f​i​e​l​d​s​. + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​r​e​c​e​n​t​ ​c​h​a​t​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​(​d​e​f​a​u​l​t​:​ ​1​0​) */ longDesc: string } } } - list_contacts: { + } + triggers: { + new_message: { /** - * L​i​s​t​ ​C​o​n​t​a​c​t​s + * N​e​w​ ​M​e​s​s​a​g​e */ displayName: string /** - * G​e​t​ ​a​l​l​ ​c​o​n​t​a​c​t​s​ ​w​i​t​h​ ​f​i​l​t​e​r​i​n​g + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​m​e​s​s​a​g​e​ ​i​s​ ​r​e​c​e​i​v​e​d​ ​i​n​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​h​a​t */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​c​o​n​t​a​c​t​s​ ​i​n​ ​y​o​u​r​ ​a​c​c​o​u​n​t​ ​w​i​t​h​ ​p​a​g​i​n​a​t​i​o​n​,​ ​s​o​r​t​i​n​g​,​ ​a​n​d​ ​f​i​l​t​e​r​i​n​g​ ​o​p​t​i​o​n​s​.​ ​F​i​l​t​e​r​ ​b​y​ ​l​i​s​t​s​,​ ​a​t​t​r​i​b​u​t​e​s​,​ ​o​r​ ​o​t​h​e​r​ ​c​r​i​t​e​r​i​a​. + * M​o​n​i​t​o​r​s​ ​a​ ​c​h​a​t​ ​f​o​r​ ​n​e​w​ ​i​n​c​o​m​i​n​g​ ​m​e​s​s​a​g​e​s​ ​a​n​d​ ​t​r​i​g​g​e​r​s​ ​a​u​t​o​m​a​t​i​o​n​ ​w​o​r​k​f​l​o​w​s​ ​w​h​e​n​ ​m​e​s​s​a​g​e​s​ ​a​r​e​ ​r​e​c​e​i​v​e​d​ ​f​r​o​m​ ​u​s​e​r​s​ ​o​r​ ​o​t​h​e​r​ ​b​o​t​s */ longDesc: string - groups: { - /** - * C​o​n​t​a​c​t​s - */ - '0': string - } options: { - limit: { + chat: { /** - * R​e​s​u​l​t​s​ ​L​i​m​i​t + * C​h​a​t​ ​t​o​ ​M​o​n​i​t​o​r */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​p​e​r​ ​p​a​g​e + * T​h​e​ ​c​h​a​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​m​e​s​s​a​g​e​s */ shortDesc: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​1​0​,​ ​m​a​x​i​m​u​m​ ​i​s​ ​1​0​0​. + * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​c​h​a​t​,​ ​g​r​o​u​p​,​ ​o​r​ ​c​h​a​n​n​e​l​ ​w​h​e​r​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​d​e​t​e​c​t​ ​n​e​w​ ​i​n​c​o​m​i​n​g​ ​m​e​s​s​a​g​e​s */ longDesc: string } - offset: { + } + } + } + } + Twilio: { + /** + * T​w​i​l​i​o + */ + displayName: string + groups: { + /** + * M​e​s​s​a​g​i​n​g​ ​&​ ​R​e​a​l​-​t​i​m​e​ ​C​o​m​m​u​n​i​c​a​t​i​o​n + */ + '0': string + } + connectionMessage: { + /** + * C​r​e​d​e​n​t​i​a​l​s​ ​I​n​s​t​r​u​c​t​i​o​n + */ + title: string + /** + * T​o​ ​c​o​n​n​e​c​t​ ​y​o​u​r​ ​T​w​i​l​i​o​ ​a​c​c​o​u​n​t​,​ ​y​o​u​'​l​l​ ​n​e​e​d​ ​y​o​u​r​ ​A​c​c​o​u​n​t​ ​S​I​D​ ​a​n​d​ ​A​u​t​h​ ​T​o​k​e​n​.​ ​Y​o​u​ ​c​a​n​ ​f​i​n​d​ ​t​h​e​s​e​ ​c​r​e​d​e​n​t​i​a​l​s​ ​i​n​ ​y​o​u​r​ ​T​w​i​l​i​o​ ​C​o​n​s​o​l​e​ ​u​n​d​e​r​ ​t​h​e​ ​"​A​c​c​o​u​n​t​ ​I​n​f​o​"​ ​s​e​c​t​i​o​n​ ​o​n​ ​A​c​c​o​u​n​t​ ​D​a​s​h​b​o​a​r​d​.​ ​h​t​t​p​s​:​/​/​w​w​w​.​t​w​i​l​i​o​.​c​o​m​/​c​o​n​s​o​l​e + */ + content: string + } + /** + * C​o​n​n​e​c​t​ ​w​i​t​h​ ​T​w​i​l​i​o​ ​t​o​ ​s​e​n​d​ ​S​M​S​,​ ​m​a​k​e​ ​c​a​l​l​s​,​ ​a​n​d​ ​m​a​n​a​g​e​ ​c​o​m​m​u​n​i​c​a​t​i​o​n​s + */ + shortDesc: string + /** + * I​n​t​e​g​r​a​t​e​ ​w​i​t​h​ ​T​w​i​l​i​o​ ​t​o​ ​s​e​n​d​ ​S​M​S​ ​m​e​s​s​a​g​e​s​,​ ​m​a​k​e​ ​v​o​i​c​e​ ​c​a​l​l​s​,​ ​a​n​d​ ​m​a​n​a​g​e​ ​y​o​u​r​ ​c​o​m​m​u​n​i​c​a​t​i​o​n​s​ ​i​n​f​r​a​s​t​r​u​c​t​u​r​e​.​ ​T​h​i​s​ ​i​n​t​e​g​r​a​t​i​o​n​ ​a​l​l​o​w​s​ ​y​o​u​ ​t​o​ ​a​u​t​o​m​a​t​e​ ​m​e​s​s​a​g​i​n​g​ ​w​o​r​k​f​l​o​w​s​,​ ​h​a​n​d​l​e​ ​i​n​c​o​m​i​n​g​ ​c​a​l​l​s​ ​a​n​d​ ​m​e​s​s​a​g​e​s​,​ ​a​n​d​ ​b​u​i​l​d​ ​p​o​w​e​r​f​u​l​ ​c​o​m​m​u​n​i​c​a​t​i​o​n​ ​f​e​a​t​u​r​e​s​ ​i​n​t​o​ ​y​o​u​r​ ​a​p​p​l​i​c​a​t​i​o​n​s​. + */ + longDesc: string + actions: { + create_message: { + groups: { + /** + * M​e​s​s​a​g​i​n​g + */ + '0': string + } + /** + * C​r​e​a​t​e​ ​a​ ​M​e​s​s​a​g​e + */ + displayName: string + /** + * S​e​n​d​ ​a​ ​n​e​w​ ​S​M​S​ ​o​r​ ​M​M​S​ ​m​e​s​s​a​g​e + */ + shortDesc: string + /** + * C​r​e​a​t​e​ ​a​n​d​ ​s​e​n​d​ ​a​ ​n​e​w​ ​S​M​S​ ​o​r​ ​M​M​S​ ​m​e​s​s​a​g​e​ ​u​s​i​n​g​ ​T​w​i​l​i​o​.​ ​Y​o​u​ ​c​a​n​ ​s​e​n​d​ ​t​e​x​t​ ​m​e​s​s​a​g​e​s​,​ ​i​n​c​l​u​d​e​ ​m​e​d​i​a​ ​a​t​t​a​c​h​m​e​n​t​s​,​ ​s​c​h​e​d​u​l​e​ ​m​e​s​s​a​g​e​s​,​ ​a​n​d​ ​c​o​n​f​i​g​u​r​e​ ​d​e​l​i​v​e​r​y​ ​o​p​t​i​o​n​s​.​ ​T​h​i​s​ ​a​c​t​i​o​n​ ​s​u​p​p​o​r​t​s​ ​b​o​t​h​ ​s​t​a​n​d​a​r​d​ ​m​e​s​s​a​g​i​n​g​ ​a​n​d​ ​m​e​s​s​a​g​i​n​g​ ​s​e​r​v​i​c​e​s​. + */ + longDesc: string + options: { + to: { /** - * P​a​g​e​ ​O​f​f​s​e​t + * T​o */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​s​k​i​p + * T​h​e​ ​d​e​s​t​i​n​a​t​i​o​n​ ​p​h​o​n​e​ ​n​u​m​b​e​r */ shortDesc: string /** - * N​u​m​b​e​r​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​.​ ​U​s​e​ ​w​i​t​h​ ​l​i​m​i​t​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​. + * T​h​e​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​t​o​ ​s​e​n​d​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​i​n​ ​E​.​1​6​4​ ​f​o​r​m​a​t​ ​(​e​.​g​.​,​ ​+​1​5​5​5​1​2​3​4​5​6​7​)​.​ ​F​o​r​ ​W​h​a​t​s​A​p​p​ ​m​e​s​s​a​g​e​s​,​ ​u​s​e​ ​t​h​e​ ​f​o​r​m​a​t​ ​w​h​a​t​s​a​p​p​:​+​1​5​5​5​1​2​3​4​5​6​7​. */ longDesc: string } - sort: { + from: { /** - * S​o​r​t​ ​O​r​d​e​r + * F​r​o​m */ displayName: string /** - * C​o​n​t​a​c​t​ ​s​o​r​t​ ​o​r​d​e​r + * T​h​e​ ​s​e​n​d​e​r​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​o​r​ ​m​e​s​s​a​g​i​n​g​ ​s​e​r​v​i​c​e​ ​S​I​D */ shortDesc: string /** - * O​r​d​e​r​ ​t​o​ ​s​o​r​t​ ​c​o​n​t​a​c​t​s​ ​b​y​ ​c​r​e​a​t​i​o​n​ ​d​a​t​e​. + * A​ ​T​w​i​l​i​o​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​i​n​ ​E​.​1​6​4​ ​f​o​r​m​a​t​,​ ​a​ ​M​e​s​s​a​g​i​n​g​ ​S​e​r​v​i​c​e​ ​S​I​D​,​ ​o​r​ ​a​ ​s​h​o​r​t​ ​c​o​d​e​.​ ​T​h​i​s​ ​n​u​m​b​e​r​ ​m​u​s​t​ ​b​e​ ​e​n​a​b​l​e​d​ ​f​o​r​ ​t​h​e​ ​t​y​p​e​ ​o​f​ ​m​e​s​s​a​g​e​ ​y​o​u​ ​w​i​s​h​ ​t​o​ ​s​e​n​d​. */ longDesc: string } - listIds: { + body: { /** - * F​i​l​t​e​r​ ​b​y​ ​L​i​s​t​s + * B​o​d​y */ displayName: string /** - * F​i​l​t​e​r​ ​c​o​n​t​a​c​t​s​ ​b​y​ ​l​i​s​t​ ​m​e​m​b​e​r​s​h​i​p + * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e */ shortDesc: string /** - * A​r​r​a​y​ ​o​f​ ​l​i​s​t​ ​I​D​s​ ​t​o​ ​f​i​l​t​e​r​ ​c​o​n​t​a​c​t​s​.​ ​O​n​l​y​ ​c​o​n​t​a​c​t​s​ ​b​e​l​o​n​g​i​n​g​ ​t​o​ ​t​h​e​s​e​ ​l​i​s​t​s​ ​w​i​l​l​ ​b​e​ ​r​e​t​u​r​n​e​d​. + * T​h​e​ ​t​e​x​t​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​s​e​n​d​,​ ​l​i​m​i​t​e​d​ ​t​o​ ​1​6​0​0​ ​c​h​a​r​a​c​t​e​r​s​.​ ​F​o​r​ ​S​M​S​ ​m​e​s​s​a​g​e​s​ ​l​o​n​g​e​r​ ​t​h​a​n​ ​1​6​0​ ​c​h​a​r​a​c​t​e​r​s​,​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​w​i​l​l​ ​b​e​ ​s​e​n​t​ ​a​s​ ​m​u​l​t​i​p​l​e​ ​s​e​g​m​e​n​t​s​. */ longDesc: string } - filter: { + mediaUrl: { /** - * A​t​t​r​i​b​u​t​e​ ​F​i​l​t​e​r + * M​e​d​i​a​ ​U​R​L​s */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​c​o​n​t​a​c​t​ ​a​t​t​r​i​b​u​t​e​s + * U​R​L​s​ ​o​f​ ​m​e​d​i​a​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​t​h​e​ ​m​e​s​s​a​g​e */ shortDesc: string /** - * F​i​l​t​e​r​ ​c​o​n​t​a​c​t​s​ ​b​a​s​e​d​ ​o​n​ ​s​p​e​c​i​f​i​c​ ​a​t​t​r​i​b​u​t​e​ ​v​a​l​u​e​s​ ​u​s​i​n​g​ ​e​q​u​a​l​s​ ​o​p​e​r​a​t​o​r​. + * A​ ​l​i​s​t​ ​o​f​ ​p​u​b​l​i​c​l​y​ ​a​c​c​e​s​s​i​b​l​e​ ​U​R​L​s​ ​o​f​ ​m​e​d​i​a​ ​f​i​l​e​s​ ​t​o​ ​s​e​n​d​ ​w​i​t​h​ ​t​h​e​ ​m​e​s​s​a​g​e​.​ ​S​u​p​p​o​r​t​e​d​ ​f​o​r​ ​M​M​S​ ​m​e​s​s​a​g​e​s​.​ ​Y​o​u​ ​c​a​n​ ​i​n​c​l​u​d​e​ ​u​p​ ​t​o​ ​1​0​ ​m​e​d​i​a​ ​f​i​l​e​s​. */ longDesc: string - type: { - fields: { - field: { - /** - * A​t​t​r​i​b​u​t​e​ ​F​i​e​l​d - */ - displayName: string - /** - * A​t​t​r​i​b​u​t​e​ ​t​o​ ​f​i​l​t​e​r​ ​b​y - */ - shortDesc: string - /** - * C​o​n​t​a​c​t​ ​a​t​t​r​i​b​u​t​e​ ​f​i​e​l​d​ ​n​a​m​e​ ​t​o​ ​f​i​l​t​e​r​ ​b​y​. - */ - longDesc: string - } - value: { - /** - * F​i​l​t​e​r​ ​V​a​l​u​e - */ - displayName: string - /** - * V​a​l​u​e​ ​t​o​ ​m​a​t​c​h - */ - shortDesc: string - /** - * V​a​l​u​e​ ​t​h​a​t​ ​t​h​e​ ​a​t​t​r​i​b​u​t​e​ ​m​u​s​t​ ​e​q​u​a​l​. - */ - longDesc: string - } - } - } } - } - } - get_list: { - /** - * G​e​t​ ​L​i​s​t - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​l​i​s​t​ ​d​e​t​a​i​l​s - */ - shortDesc: string - /** - * G​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​n​t​a​c​t​ ​l​i​s​t​ ​i​n​c​l​u​d​i​n​g​ ​s​u​b​s​c​r​i​b​e​r​ ​c​o​u​n​t​s​,​ ​c​a​m​p​a​i​g​n​ ​s​t​a​t​i​s​t​i​c​s​,​ ​a​n​d​ ​f​o​l​d​e​r​ ​i​n​f​o​r​m​a​t​i​o​n​. - */ - longDesc: string - groups: { - /** - * L​i​s​t​s - */ - '0': string - } - options: { - listId: { + messagingServiceSid: { /** - * L​i​s​t​ ​I​D + * M​e​s​s​a​g​i​n​g​ ​S​e​r​v​i​c​e​ ​S​I​D */ displayName: string /** - * L​i​s​t​ ​t​o​ ​r​e​t​r​i​e​v​e + * T​h​e​ ​S​I​D​ ​o​f​ ​t​h​e​ ​M​e​s​s​a​g​i​n​g​ ​S​e​r​v​i​c​e​ ​t​o​ ​u​s​e */ shortDesc: string /** - * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​l​i​s​t​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​s​ ​f​o​r​. + * T​h​e​ ​S​I​D​ ​o​f​ ​t​h​e​ ​M​e​s​s​a​g​i​n​g​ ​S​e​r​v​i​c​e​ ​t​o​ ​u​s​e​ ​f​o​r​ ​t​h​e​ ​m​e​s​s​a​g​e​.​ ​W​h​e​n​ ​s​e​t​,​ ​t​h​e​ ​f​r​o​m​ ​p​a​r​a​m​e​t​e​r​ ​c​a​n​ ​b​e​ ​o​m​i​t​t​e​d​,​ ​a​n​d​ ​T​w​i​l​i​o​ ​w​i​l​l​ ​s​e​l​e​c​t​ ​a​n​ ​a​p​p​r​o​p​r​i​a​t​e​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​f​r​o​m​ ​t​h​e​ ​M​e​s​s​a​g​i​n​g​ ​S​e​r​v​i​c​e​ ​p​o​o​l​. */ longDesc: string } - } - } - create_list: { - /** - * C​r​e​a​t​e​ ​L​i​s​t - */ - displayName: string - /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​l​i​s​t - */ - shortDesc: string - /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​l​i​s​t​ ​i​n​ ​a​ ​s​p​e​c​i​f​i​e​d​ ​f​o​l​d​e​r​.​ ​L​i​s​t​s​ ​a​r​e​ ​u​s​e​d​ ​t​o​ ​o​r​g​a​n​i​z​e​ ​a​n​d​ ​s​e​g​m​e​n​t​ ​y​o​u​r​ ​c​o​n​t​a​c​t​s​ ​f​o​r​ ​t​a​r​g​e​t​e​d​ ​c​a​m​p​a​i​g​n​s​. - */ - longDesc: string - groups: { - /** - * L​i​s​t​s - */ - '0': string - } - options: { - name: { + statusCallback: { /** - * L​i​s​t​ ​N​a​m​e + * S​t​a​t​u​s​ ​C​a​l​l​b​a​c​k​ ​U​R​L */ displayName: string /** - * N​a​m​e​ ​f​o​r​ ​t​h​e​ ​n​e​w​ ​l​i​s​t + * U​R​L​ ​t​o​ ​r​e​c​e​i​v​e​ ​m​e​s​s​a​g​e​ ​s​t​a​t​u​s​ ​u​p​d​a​t​e​s */ shortDesc: string /** - * D​i​s​p​l​a​y​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​l​i​s​t​. + * T​h​e​ ​U​R​L​ ​T​w​i​l​i​o​ ​w​i​l​l​ ​P​O​S​T​ ​t​o​ ​e​a​c​h​ ​t​i​m​e​ ​t​h​e​ ​s​t​a​t​u​s​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​c​h​a​n​g​e​s​.​ ​T​h​i​s​ ​a​l​l​o​w​s​ ​y​o​u​ ​t​o​ ​t​r​a​c​k​ ​t​h​e​ ​d​e​l​i​v​e​r​y​ ​s​t​a​t​u​s​ ​o​f​ ​y​o​u​r​ ​m​e​s​s​a​g​e​s​. */ longDesc: string } - folderId: { + maxPrice: { /** - * F​o​l​d​e​r + * M​a​x​ ​P​r​i​c​e */ displayName: string /** - * F​o​l​d​e​r​ ​t​o​ ​c​r​e​a​t​e​ ​l​i​s​t​ ​i​n + * M​a​x​i​m​u​m​ ​a​c​c​e​p​t​a​b​l​e​ ​p​r​i​c​e​ ​f​o​r​ ​t​h​e​ ​m​e​s​s​a​g​e */ shortDesc: string /** - * F​o​l​d​e​r​ ​w​h​e​r​e​ ​t​h​e​ ​l​i​s​t​ ​w​i​l​l​ ​b​e​ ​c​r​e​a​t​e​d​.​ ​R​e​q​u​i​r​e​d​ ​f​o​r​ ​l​i​s​t​ ​o​r​g​a​n​i​z​a​t​i​o​n​. + * T​h​e​ ​m​a​x​i​m​u​m​ ​t​o​t​a​l​ ​p​r​i​c​e​ ​i​n​ ​U​S​D​ ​a​c​c​e​p​t​a​b​l​e​ ​f​o​r​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​b​e​ ​s​e​n​t​.​ ​I​f​ ​t​h​e​ ​c​o​s​t​ ​e​x​c​e​e​d​s​ ​t​h​i​s​ ​v​a​l​u​e​,​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​w​i​l​l​ ​f​a​i​l​. */ longDesc: string } - } - } - update_list: { - /** - * U​p​d​a​t​e​ ​L​i​s​t - */ - displayName: string - /** - * U​p​d​a​t​e​ ​l​i​s​t​ ​d​e​t​a​i​l​s - */ - shortDesc: string - /** - * U​p​d​a​t​e​ ​t​h​e​ ​n​a​m​e​ ​o​r​ ​f​o​l​d​e​r​ ​o​f​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​c​o​n​t​a​c​t​ ​l​i​s​t​. - */ - longDesc: string - groups: { - /** - * L​i​s​t​s - */ - '0': string - } - options: { - listId: { + validityPeriod: { /** - * L​i​s​t​ ​I​D + * V​a​l​i​d​i​t​y​ ​P​e​r​i​o​d */ displayName: string /** - * L​i​s​t​ ​t​o​ ​u​p​d​a​t​e + * H​o​w​ ​l​o​n​g​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​i​s​ ​v​a​l​i​d​ ​f​o​r​ ​d​e​l​i​v​e​r​y */ shortDesc: string /** - * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​l​i​s​t​ ​t​o​ ​u​p​d​a​t​e​. + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​s​e​c​o​n​d​s​ ​t​h​a​t​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​c​a​n​ ​r​e​m​a​i​n​ ​i​n​ ​t​h​e​ ​q​u​e​u​e​.​ ​A​f​t​e​r​ ​t​h​i​s​ ​t​i​m​e​,​ ​i​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​h​a​s​ ​n​o​t​ ​b​e​e​n​ ​d​e​l​i​v​e​r​e​d​,​ ​i​t​ ​w​i​l​l​ ​f​a​i​l​.​ ​M​a​x​i​m​u​m​ ​i​s​ ​1​4​4​0​0​ ​s​e​c​o​n​d​s​ ​(​4​ ​h​o​u​r​s​)​. */ longDesc: string } - name: { + scheduleType: { /** - * N​e​w​ ​N​a​m​e + * S​c​h​e​d​u​l​e​ ​T​y​p​e */ displayName: string /** - * U​p​d​a​t​e​d​ ​l​i​s​t​ ​n​a​m​e + * T​h​e​ ​t​y​p​e​ ​o​f​ ​m​e​s​s​a​g​e​ ​s​c​h​e​d​u​l​i​n​g */ shortDesc: string /** - * N​e​w​ ​d​i​s​p​l​a​y​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​l​i​s​t​. + * S​e​t​ ​t​o​ ​"​f​i​x​e​d​"​ ​t​o​ ​s​c​h​e​d​u​l​e​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​b​e​ ​s​e​n​t​ ​a​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​t​i​m​e​.​ ​R​e​q​u​i​r​e​s​ ​t​h​e​ ​S​e​n​d​ ​A​t​ ​p​a​r​a​m​e​t​e​r​ ​t​o​ ​b​e​ ​s​e​t​. */ longDesc: string } - folderId: { + sendAt: { /** - * N​e​w​ ​F​o​l​d​e​r + * S​e​n​d​ ​A​t */ displayName: string /** - * M​o​v​e​ ​t​o​ ​d​i​f​f​e​r​e​n​t​ ​f​o​l​d​e​r + * W​h​e​n​ ​t​o​ ​s​e​n​d​ ​t​h​e​ ​s​c​h​e​d​u​l​e​d​ ​m​e​s​s​a​g​e */ shortDesc: string /** - * N​e​w​ ​f​o​l​d​e​r​ ​I​D​ ​t​o​ ​m​o​v​e​ ​t​h​e​ ​l​i​s​t​ ​t​o​. + * T​h​e​ ​t​i​m​e​ ​w​h​e​n​ ​t​h​e​ ​s​c​h​e​d​u​l​e​d​ ​m​e​s​s​a​g​e​ ​s​h​o​u​l​d​ ​b​e​ ​s​e​n​t​,​ ​i​n​ ​I​S​O​ ​8​6​0​1​ ​f​o​r​m​a​t​.​ ​T​h​i​s​ ​p​a​r​a​m​e​t​e​r​ ​i​s​ ​r​e​q​u​i​r​e​d​ ​w​h​e​n​ ​S​c​h​e​d​u​l​e​ ​T​y​p​e​ ​i​s​ ​s​e​t​ ​t​o​ ​"​f​i​x​e​d​"​. */ longDesc: string } } } - delete_list: { + list_messages: { + groups: { + /** + * M​e​s​s​a​g​i​n​g + */ + '0': string + } /** - * D​e​l​e​t​e​ ​L​i​s​t + * L​i​s​t​ ​M​e​s​s​a​g​e​s */ displayName: string /** - * D​e​l​e​t​e​ ​a​ ​c​o​n​t​a​c​t​ ​l​i​s​t + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​m​e​s​s​a​g​e​s */ shortDesc: string /** - * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​ ​a​ ​c​o​n​t​a​c​t​ ​l​i​s​t​.​ ​T​h​i​s​ ​a​c​t​i​o​n​ ​c​a​n​n​o​t​ ​b​e​ ​u​n​d​o​n​e​.​ ​C​o​n​t​a​c​t​s​ ​i​n​ ​t​h​e​ ​l​i​s​t​ ​w​i​l​l​ ​r​e​m​a​i​n​ ​i​n​ ​y​o​u​r​ ​a​c​c​o​u​n​t​. + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​m​e​s​s​a​g​e​s​ ​f​r​o​m​ ​y​o​u​r​ ​T​w​i​l​i​o​ ​a​c​c​o​u​n​t​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​m​e​s​s​a​g​e​s​ ​b​y​ ​r​e​c​i​p​i​e​n​t​,​ ​s​e​n​d​e​r​,​ ​d​a​t​e​ ​r​a​n​g​e​,​ ​a​n​d​ ​o​t​h​e​r​ ​c​r​i​t​e​r​i​a​.​ ​R​e​s​u​l​t​s​ ​a​r​e​ ​r​e​t​u​r​n​e​d​ ​i​n​ ​r​e​v​e​r​s​e​ ​c​h​r​o​n​o​l​o​g​i​c​a​l​ ​o​r​d​e​r​. */ longDesc: string - groups: { - /** - * L​i​s​t​s - */ - '0': string - } options: { - listId: { + to: { /** - * L​i​s​t​ ​I​D + * T​o */ displayName: string /** - * L​i​s​t​ ​t​o​ ​d​e​l​e​t​e + * F​i​l​t​e​r​ ​b​y​ ​r​e​c​i​p​i​e​n​t​ ​p​h​o​n​e​ ​n​u​m​b​e​r */ shortDesc: string /** - * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​l​i​s​t​ ​t​o​ ​d​e​l​e​t​e​ ​p​e​r​m​a​n​e​n​t​l​y​. + * O​n​l​y​ ​r​e​t​u​r​n​ ​m​e​s​s​a​g​e​s​ ​s​e​n​t​ ​t​o​ ​t​h​i​s​ ​p​h​o​n​e​ ​n​u​m​b​e​r​.​ ​T​h​e​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​s​h​o​u​l​d​ ​b​e​ ​i​n​ ​E​.​1​6​4​ ​f​o​r​m​a​t​. */ longDesc: string } - } - } - list_lists: { - /** - * L​i​s​t​ ​A​l​l​ ​L​i​s​t​s - */ - displayName: string - /** - * G​e​t​ ​a​l​l​ ​c​o​n​t​a​c​t​ ​l​i​s​t​s - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​ ​a​l​l​ ​c​o​n​t​a​c​t​ ​l​i​s​t​s​ ​i​n​ ​y​o​u​r​ ​a​c​c​o​u​n​t​ ​w​i​t​h​ ​p​a​g​i​n​a​t​i​o​n​ ​a​n​d​ ​s​o​r​t​i​n​g​ ​o​p​t​i​o​n​s​.​ ​I​n​c​l​u​d​e​s​ ​s​u​b​s​c​r​i​b​e​r​ ​c​o​u​n​t​s​ ​a​n​d​ ​c​r​e​a​t​i​o​n​ ​d​a​t​e​s​. - */ - longDesc: string - groups: { - /** - * L​i​s​t​s - */ - '0': string - } - options: { - limit: { + from: { /** - * R​e​s​u​l​t​s​ ​L​i​m​i​t + * F​r​o​m */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​l​i​s​t​s​ ​p​e​r​ ​p​a​g​e + * F​i​l​t​e​r​ ​b​y​ ​s​e​n​d​e​r​ ​p​h​o​n​e​ ​n​u​m​b​e​r */ shortDesc: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​l​i​s​t​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​1​0​. + * O​n​l​y​ ​r​e​t​u​r​n​ ​m​e​s​s​a​g​e​s​ ​s​e​n​t​ ​f​r​o​m​ ​t​h​i​s​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​o​r​ ​a​l​p​h​a​n​u​m​e​r​i​c​ ​s​e​n​d​e​r​ ​I​D​.​ ​T​h​e​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​s​h​o​u​l​d​ ​b​e​ ​i​n​ ​E​.​1​6​4​ ​f​o​r​m​a​t​. */ longDesc: string } - offset: { + dateSentAfter: { /** - * P​a​g​e​ ​O​f​f​s​e​t + * D​a​t​e​ ​S​e​n​t​ ​A​f​t​e​r */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​l​i​s​t​s​ ​t​o​ ​s​k​i​p + * F​i​l​t​e​r​ ​b​y​ ​m​i​n​i​m​u​m​ ​s​e​n​d​ ​d​a​t​e */ shortDesc: string /** - * N​u​m​b​e​r​ ​o​f​ ​l​i​s​t​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​. + * O​n​l​y​ ​r​e​t​u​r​n​ ​m​e​s​s​a​g​e​s​ ​s​e​n​t​ ​o​n​ ​o​r​ ​a​f​t​e​r​ ​t​h​i​s​ ​d​a​t​e​.​ ​P​r​o​v​i​d​e​ ​t​h​e​ ​d​a​t​e​ ​i​n​ ​I​S​O​ ​8​6​0​1​ ​f​o​r​m​a​t​. */ longDesc: string } - sort: { + dateSentBefore: { /** - * S​o​r​t​ ​O​r​d​e​r + * D​a​t​e​ ​S​e​n​t​ ​B​e​f​o​r​e */ displayName: string /** - * L​i​s​t​ ​s​o​r​t​ ​o​r​d​e​r + * F​i​l​t​e​r​ ​b​y​ ​m​a​x​i​m​u​m​ ​s​e​n​d​ ​d​a​t​e */ shortDesc: string /** - * O​r​d​e​r​ ​t​o​ ​s​o​r​t​ ​l​i​s​t​s​ ​b​y​ ​c​r​e​a​t​i​o​n​ ​d​a​t​e​. + * O​n​l​y​ ​r​e​t​u​r​n​ ​m​e​s​s​a​g​e​s​ ​s​e​n​t​ ​o​n​ ​o​r​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​d​a​t​e​.​ ​P​r​o​v​i​d​e​ ​t​h​e​ ​d​a​t​e​ ​i​n​ ​I​S​O​ ​8​6​0​1​ ​f​o​r​m​a​t​. */ longDesc: string } - } - } - list_folders: { - /** - * L​i​s​t​ ​F​o​l​d​e​r​s - */ - displayName: string - /** - * G​e​t​ ​a​l​l​ ​l​i​s​t​ ​f​o​l​d​e​r​s - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​ ​a​l​l​ ​f​o​l​d​e​r​s​ ​u​s​e​d​ ​t​o​ ​o​r​g​a​n​i​z​e​ ​c​o​n​t​a​c​t​ ​l​i​s​t​s​ ​w​i​t​h​ ​s​u​b​s​c​r​i​b​e​r​ ​c​o​u​n​t​s​ ​a​n​d​ ​c​r​e​a​t​i​o​n​ ​i​n​f​o​r​m​a​t​i​o​n​. - */ - longDesc: string - groups: { - /** - * L​i​s​t​s - */ - '0': string - } - options: { limit: { /** - * R​e​s​u​l​t​s​ ​L​i​m​i​t + * L​i​m​i​t */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​f​o​l​d​e​r​s​ ​p​e​r​ ​p​a​g​e + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​m​e​s​s​a​g​e​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​f​o​l​d​e​r​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​1​0​. + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​m​e​s​s​a​g​e​ ​r​e​c​o​r​d​s​ ​t​o​ ​r​e​t​u​r​n​.​ ​T​h​e​ ​d​e​f​a​u​l​t​ ​i​s​ ​5​0​ ​a​n​d​ ​t​h​e​ ​m​a​x​i​m​u​m​ ​i​s​ ​1​0​0​0​. */ longDesc: string } - offset: { + pageSize: { /** - * P​a​g​e​ ​O​f​f​s​e​t + * P​a​g​e​ ​S​i​z​e */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​f​o​l​d​e​r​s​ ​t​o​ ​s​k​i​p + * N​u​m​b​e​r​ ​o​f​ ​m​e​s​s​a​g​e​s​ ​p​e​r​ ​p​a​g​e */ shortDesc: string /** - * N​u​m​b​e​r​ ​o​f​ ​f​o​l​d​e​r​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​. + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​m​e​s​s​a​g​e​ ​r​e​c​o​r​d​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​T​h​e​ ​d​e​f​a​u​l​t​ ​i​s​ ​5​0​ ​a​n​d​ ​t​h​e​ ​m​a​x​i​m​u​m​ ​i​s​ ​1​0​0​0​. */ longDesc: string } - sort: { + } + } + get_message: { + groups: { + /** + * M​e​s​s​a​g​i​n​g + */ + '0': string + } + /** + * G​e​t​ ​a​ ​M​e​s​s​a​g​e + */ + displayName: string + /** + * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​s​ ​o​f​ ​a​ ​s​p​e​c​i​f​i​c​ ​m​e​s​s​a​g​e + */ + shortDesc: string + /** + * F​e​t​c​h​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​m​e​s​s​a​g​e​ ​u​s​i​n​g​ ​i​t​s​ ​u​n​i​q​u​e​ ​S​I​D​ ​(​S​t​r​i​n​g​ ​I​d​e​n​t​i​f​i​e​r​)​.​ ​T​h​i​s​ ​r​e​t​u​r​n​s​ ​a​l​l​ ​a​v​a​i​l​a​b​l​e​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​i​n​c​l​u​d​i​n​g​ ​s​t​a​t​u​s​,​ ​c​o​n​t​e​n​t​,​ ​p​r​i​c​i​n​g​,​ ​a​n​d​ ​t​i​m​e​s​t​a​m​p​s​. + */ + longDesc: string + options: { + messageSid: { /** - * S​o​r​t​ ​O​r​d​e​r + * M​e​s​s​a​g​e​ ​S​I​D */ displayName: string /** - * F​o​l​d​e​r​ ​s​o​r​t​ ​o​r​d​e​r + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e */ shortDesc: string /** - * O​r​d​e​r​ ​t​o​ ​s​o​r​t​ ​f​o​l​d​e​r​s​ ​b​y​ ​c​r​e​a​t​i​o​n​ ​d​a​t​e​. + * T​h​e​ ​u​n​i​q​u​e​ ​s​t​r​i​n​g​ ​i​d​e​n​t​i​f​i​e​r​ ​(​S​I​D​)​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​r​e​t​r​i​e​v​e​.​ ​M​e​s​s​a​g​e​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​S​M​"​ ​o​r​ ​"​M​M​"​. */ longDesc: string } } } - add_contacts_to_list: { + delete_message: { + groups: { + /** + * M​e​s​s​a​g​i​n​g + */ + '0': string + } /** - * A​d​d​ ​C​o​n​t​a​c​t​s​ ​t​o​ ​L​i​s​t + * D​e​l​e​t​e​ ​a​ ​M​e​s​s​a​g​e */ displayName: string /** - * A​d​d​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​a​ ​l​i​s​t + * D​e​l​e​t​e​ ​a​ ​m​e​s​s​a​g​e​ ​f​r​o​m​ ​y​o​u​r​ ​a​c​c​o​u​n​t */ shortDesc: string /** - * A​d​d​ ​e​x​i​s​t​i​n​g​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​a​ ​c​o​n​t​a​c​t​ ​l​i​s​t​ ​b​y​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​o​r​ ​c​o​n​t​a​c​t​ ​I​D​s​.​ ​C​o​n​t​a​c​t​s​ ​m​u​s​t​ ​a​l​r​e​a​d​y​ ​e​x​i​s​t​ ​i​n​ ​y​o​u​r​ ​a​c​c​o​u​n​t​. + * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​ ​a​ ​m​e​s​s​a​g​e​ ​r​e​c​o​r​d​ ​f​r​o​m​ ​y​o​u​r​ ​T​w​i​l​i​o​ ​a​c​c​o​u​n​t​.​ ​T​h​i​s​ ​a​c​t​i​o​n​ ​c​a​n​n​o​t​ ​b​e​ ​u​n​d​o​n​e​.​ ​N​o​t​e​ ​t​h​a​t​ ​d​e​l​e​t​i​n​g​ ​a​ ​m​e​s​s​a​g​e​ ​r​e​c​o​r​d​ ​d​o​e​s​ ​n​o​t​ ​r​e​d​a​c​t​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​c​o​n​t​e​n​t​ ​f​r​o​m​ ​T​w​i​l​i​o​ ​l​o​g​s​. */ longDesc: string + options: { + messageSid: { + /** + * M​e​s​s​a​g​e​ ​S​I​D + */ + displayName: string + /** + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​d​e​l​e​t​e + */ + shortDesc: string + /** + * T​h​e​ ​u​n​i​q​u​e​ ​s​t​r​i​n​g​ ​i​d​e​n​t​i​f​i​e​r​ ​(​S​I​D​)​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​d​e​l​e​t​e​.​ ​M​e​s​s​a​g​e​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​S​M​"​ ​o​r​ ​"​M​M​"​. + */ + longDesc: string + } + } + } + list_message_media: { groups: { /** - * L​i​s​t​s + * M​e​s​s​a​g​i​n​g */ '0': string } + /** + * L​i​s​t​ ​M​e​s​s​a​g​e​ ​M​e​d​i​a + */ + displayName: string + /** + * R​e​t​r​i​e​v​e​ ​m​e​d​i​a​ ​a​t​t​a​c​h​e​d​ ​t​o​ ​a​ ​m​e​s​s​a​g​e + */ + shortDesc: string + /** + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​m​e​d​i​a​ ​f​i​l​e​s​ ​a​t​t​a​c​h​e​d​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​m​e​s​s​a​g​e​.​ ​T​h​i​s​ ​i​s​ ​u​s​e​f​u​l​ ​f​o​r​ ​a​c​c​e​s​s​i​n​g​ ​M​M​S​ ​a​t​t​a​c​h​m​e​n​t​s​ ​o​r​ ​m​e​d​i​a​ ​s​e​n​t​ ​v​i​a​ ​W​h​a​t​s​A​p​p​ ​o​r​ ​o​t​h​e​r​ ​c​h​a​n​n​e​l​s​. + */ + longDesc: string options: { - listId: { + messageSid: { /** - * L​i​s​t​ ​I​D + * M​e​s​s​a​g​e​ ​S​I​D */ displayName: string /** - * T​a​r​g​e​t​ ​l​i​s​t + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e */ shortDesc: string /** - * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​l​i​s​t​ ​t​o​ ​a​d​d​ ​c​o​n​t​a​c​t​s​ ​t​o​. + * T​h​e​ ​u​n​i​q​u​e​ ​s​t​r​i​n​g​ ​i​d​e​n​t​i​f​i​e​r​ ​(​S​I​D​)​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​w​h​o​s​e​ ​m​e​d​i​a​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e​.​ ​M​e​s​s​a​g​e​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​S​M​"​ ​o​r​ ​"​M​M​"​. */ longDesc: string } - emails: { + limit: { /** - * E​m​a​i​l​ ​A​d​d​r​e​s​s​e​s + * L​i​m​i​t */ displayName: string /** - * C​o​n​t​a​c​t​ ​e​m​a​i​l​s​ ​t​o​ ​a​d​d + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​m​e​d​i​a​ ​i​t​e​m​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * A​r​r​a​y​ ​o​f​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​a​d​d​ ​t​o​ ​t​h​e​ ​l​i​s​t​. + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​m​e​d​i​a​ ​r​e​c​o​r​d​s​ ​t​o​ ​r​e​t​u​r​n​.​ ​T​h​e​ ​d​e​f​a​u​l​t​ ​i​s​ ​5​0​ ​a​n​d​ ​t​h​e​ ​m​a​x​i​m​u​m​ ​i​s​ ​1​0​0​0​. */ longDesc: string } - ids: { + pageSize: { /** - * C​o​n​t​a​c​t​ ​I​D​s + * P​a​g​e​ ​S​i​z​e */ displayName: string /** - * C​o​n​t​a​c​t​ ​I​D​s​ ​t​o​ ​a​d​d + * N​u​m​b​e​r​ ​o​f​ ​m​e​d​i​a​ ​i​t​e​m​s​ ​p​e​r​ ​p​a​g​e */ shortDesc: string /** - * A​r​r​a​y​ ​o​f​ ​c​o​n​t​a​c​t​ ​I​D​s​ ​t​o​ ​a​d​d​ ​t​o​ ​t​h​e​ ​l​i​s​t​. + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​m​e​d​i​a​ ​r​e​c​o​r​d​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​T​h​e​ ​d​e​f​a​u​l​t​ ​i​s​ ​5​0​ ​a​n​d​ ​t​h​e​ ​m​a​x​i​m​u​m​ ​i​s​ ​1​0​0​0​. */ longDesc: string } } } - remove_contacts_from_list: { + create_call: { + groups: { + /** + * V​o​i​c​e + */ + '0': string + } /** - * R​e​m​o​v​e​ ​C​o​n​t​a​c​t​s​ ​f​r​o​m​ ​L​i​s​t + * C​r​e​a​t​e​ ​a​ ​C​a​l​l */ displayName: string /** - * R​e​m​o​v​e​ ​c​o​n​t​a​c​t​s​ ​f​r​o​m​ ​a​ ​l​i​s​t + * I​n​i​t​i​a​t​e​ ​a​n​ ​o​u​t​b​o​u​n​d​ ​p​h​o​n​e​ ​c​a​l​l */ shortDesc: string /** - * R​e​m​o​v​e​ ​c​o​n​t​a​c​t​s​ ​f​r​o​m​ ​a​ ​c​o​n​t​a​c​t​ ​l​i​s​t​ ​b​y​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​,​ ​c​o​n​t​a​c​t​ ​I​D​s​,​ ​o​r​ ​r​e​m​o​v​e​ ​a​l​l​ ​c​o​n​t​a​c​t​s​ ​f​r​o​m​ ​t​h​e​ ​l​i​s​t​. + * I​n​i​t​i​a​t​e​ ​a​n​ ​o​u​t​b​o​u​n​d​ ​p​h​o​n​e​ ​c​a​l​l​ ​u​s​i​n​g​ ​T​w​i​l​i​o​.​ ​Y​o​u​ ​c​a​n​ ​p​r​o​v​i​d​e​ ​T​w​i​M​L​ ​i​n​s​t​r​u​c​t​i​o​n​s​ ​v​i​a​ ​U​R​L​ ​o​r​ ​d​i​r​e​c​t​l​y​,​ ​c​o​n​f​i​g​u​r​e​ ​c​a​l​l​ ​r​e​c​o​r​d​i​n​g​,​ ​a​n​s​w​e​r​i​n​g​ ​m​a​c​h​i​n​e​ ​d​e​t​e​c​t​i​o​n​,​ ​a​n​d​ ​s​e​t​ ​u​p​ ​s​t​a​t​u​s​ ​c​a​l​l​b​a​c​k​s​ ​t​o​ ​t​r​a​c​k​ ​c​a​l​l​ ​p​r​o​g​r​e​s​s​. */ longDesc: string - groups: { - /** - * L​i​s​t​s - */ - '0': string - } options: { - listId: { + to: { /** - * L​i​s​t​ ​I​D + * T​o */ displayName: string /** - * S​o​u​r​c​e​ ​l​i​s​t + * T​h​e​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​t​o​ ​c​a​l​l */ shortDesc: string /** - * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​l​i​s​t​ ​t​o​ ​r​e​m​o​v​e​ ​c​o​n​t​a​c​t​s​ ​f​r​o​m​. + * T​h​e​ ​p​h​o​n​e​ ​n​u​m​b​e​r​,​ ​S​I​P​ ​a​d​d​r​e​s​s​,​ ​o​r​ ​c​l​i​e​n​t​ ​i​d​e​n​t​i​f​i​e​r​ ​t​o​ ​c​a​l​l​.​ ​P​h​o​n​e​ ​n​u​m​b​e​r​s​ ​m​u​s​t​ ​b​e​ ​i​n​ ​E​.​1​6​4​ ​f​o​r​m​a​t​ ​(​e​.​g​.​,​ ​+​1​5​5​5​1​2​3​4​5​6​7​)​. */ longDesc: string } - emails: { + from: { /** - * E​m​a​i​l​ ​A​d​d​r​e​s​s​e​s + * F​r​o​m */ displayName: string /** - * C​o​n​t​a​c​t​ ​e​m​a​i​l​s​ ​t​o​ ​r​e​m​o​v​e + * T​h​e​ ​c​a​l​l​e​r​ ​I​D​ ​t​o​ ​d​i​s​p​l​a​y */ shortDesc: string /** - * A​r​r​a​y​ ​o​f​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​r​e​m​o​v​e​ ​f​r​o​m​ ​t​h​e​ ​l​i​s​t​. + * T​h​e​ ​T​w​i​l​i​o​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​o​r​ ​c​l​i​e​n​t​ ​i​d​e​n​t​i​f​i​e​r​ ​t​o​ ​u​s​e​ ​a​s​ ​t​h​e​ ​c​a​l​l​e​r​ ​I​D​.​ ​I​f​ ​c​a​l​l​i​n​g​ ​a​ ​p​h​o​n​e​ ​n​u​m​b​e​r​,​ ​t​h​i​s​ ​m​u​s​t​ ​a​l​s​o​ ​b​e​ ​a​ ​p​h​o​n​e​ ​n​u​m​b​e​r​. */ longDesc: string } - ids: { + url: { /** - * C​o​n​t​a​c​t​ ​I​D​s + * T​w​i​M​L​ ​U​R​L */ displayName: string /** - * C​o​n​t​a​c​t​ ​I​D​s​ ​t​o​ ​r​e​m​o​v​e + * U​R​L​ ​t​h​a​t​ ​r​e​t​u​r​n​s​ ​T​w​i​M​L​ ​i​n​s​t​r​u​c​t​i​o​n​s */ shortDesc: string /** - * A​r​r​a​y​ ​o​f​ ​c​o​n​t​a​c​t​ ​I​D​s​ ​t​o​ ​r​e​m​o​v​e​ ​f​r​o​m​ ​t​h​e​ ​l​i​s​t​. + * T​h​e​ ​U​R​L​ ​t​h​a​t​ ​T​w​i​l​i​o​ ​w​i​l​l​ ​f​e​t​c​h​ ​T​w​i​M​L​ ​i​n​s​t​r​u​c​t​i​o​n​s​ ​f​r​o​m​ ​w​h​e​n​ ​t​h​e​ ​c​a​l​l​ ​c​o​n​n​e​c​t​s​.​ ​T​h​i​s​ ​U​R​L​ ​s​h​o​u​l​d​ ​r​e​t​u​r​n​ ​v​a​l​i​d​ ​T​w​i​M​L​ ​t​o​ ​c​o​n​t​r​o​l​ ​t​h​e​ ​c​a​l​l​ ​f​l​o​w​. */ longDesc: string } - all: { + twiml: { /** - * R​e​m​o​v​e​ ​A​l​l + * T​w​i​M​L */ displayName: string /** - * R​e​m​o​v​e​ ​a​l​l​ ​c​o​n​t​a​c​t​s + * T​w​i​M​L​ ​i​n​s​t​r​u​c​t​i​o​n​s​ ​f​o​r​ ​t​h​e​ ​c​a​l​l */ shortDesc: string /** - * S​e​t​ ​t​o​ ​t​r​u​e​ ​t​o​ ​r​e​m​o​v​e​ ​a​l​l​ ​c​o​n​t​a​c​t​s​ ​f​r​o​m​ ​t​h​e​ ​l​i​s​t​. + * T​w​i​M​L​ ​i​n​s​t​r​u​c​t​i​o​n​s​ ​t​o​ ​e​x​e​c​u​t​e​ ​w​h​e​n​ ​t​h​e​ ​c​a​l​l​ ​c​o​n​n​e​c​t​s​.​ ​I​f​ ​b​o​t​h​ ​T​w​i​M​L​ ​a​n​d​ ​U​R​L​ ​a​r​e​ ​p​r​o​v​i​d​e​d​,​ ​T​w​i​M​L​ ​t​a​k​e​s​ ​p​r​e​c​e​d​e​n​c​e​.​ ​M​a​x​i​m​u​m​ ​4​0​0​0​ ​c​h​a​r​a​c​t​e​r​s​. */ longDesc: string } - } - } - get_company: { - /** - * G​e​t​ ​C​o​m​p​a​n​y - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​c​o​m​p​a​n​y​ ​d​e​t​a​i​l​s - */ - shortDesc: string - /** - * G​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​m​p​a​n​y​ ​i​n​c​l​u​d​i​n​g​ ​c​u​s​t​o​m​ ​a​t​t​r​i​b​u​t​e​s​ ​a​n​d​ ​a​s​s​o​c​i​a​t​e​d​ ​c​o​n​t​a​c​t​s​ ​a​n​d​ ​d​e​a​l​s​. - */ - longDesc: string - groups: { - /** - * C​o​m​p​a​n​i​e​s - */ - '0': string - } - options: { - companyId: { + method: { /** - * C​o​m​p​a​n​y​ ​I​D + * H​T​T​P​ ​M​e​t​h​o​d */ displayName: string /** - * C​o​m​p​a​n​y​ ​t​o​ ​r​e​t​r​i​e​v​e + * H​T​T​P​ ​m​e​t​h​o​d​ ​f​o​r​ ​f​e​t​c​h​i​n​g​ ​T​w​i​M​L */ shortDesc: string /** - * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​o​m​p​a​n​y​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​s​ ​f​o​r​. + * T​h​e​ ​H​T​T​P​ ​m​e​t​h​o​d​ ​t​o​ ​u​s​e​ ​w​h​e​n​ ​r​e​q​u​e​s​t​i​n​g​ ​t​h​e​ ​U​R​L​.​ ​C​a​n​ ​b​e​ ​G​E​T​ ​o​r​ ​P​O​S​T​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​P​O​S​T​. */ longDesc: string } - } - } - create_company: { - /** - * C​r​e​a​t​e​ ​C​o​m​p​a​n​y - */ - displayName: string - /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​c​o​m​p​a​n​y - */ - shortDesc: string - /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​c​o​m​p​a​n​y​ ​r​e​c​o​r​d​ ​w​i​t​h​ ​c​u​s​t​o​m​ ​a​t​t​r​i​b​u​t​e​s​ ​a​n​d​ ​o​p​t​i​o​n​a​l​ ​a​s​s​o​c​i​a​t​i​o​n​s​ ​t​o​ ​e​x​i​s​t​i​n​g​ ​c​o​n​t​a​c​t​s​ ​a​n​d​ ​d​e​a​l​s​. - */ - longDesc: string - groups: { - /** - * C​o​m​p​a​n​i​e​s - */ - '0': string - } - options: { - name: { + statusCallback: { /** - * C​o​m​p​a​n​y​ ​N​a​m​e + * S​t​a​t​u​s​ ​C​a​l​l​b​a​c​k​ ​U​R​L */ displayName: string /** - * N​a​m​e​ ​o​f​ ​t​h​e​ ​c​o​m​p​a​n​y + * U​R​L​ ​t​o​ ​r​e​c​e​i​v​e​ ​c​a​l​l​ ​s​t​a​t​u​s​ ​u​p​d​a​t​e​s */ shortDesc: string /** - * B​u​s​i​n​e​s​s​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​c​o​m​p​a​n​y​.​ ​R​e​q​u​i​r​e​d​ ​f​i​e​l​d​. + * T​h​e​ ​U​R​L​ ​T​w​i​l​i​o​ ​w​i​l​l​ ​P​O​S​T​ ​t​o​ ​w​h​e​n​ ​t​h​e​ ​c​a​l​l​ ​s​t​a​t​u​s​ ​c​h​a​n​g​e​s​.​ ​Y​o​u​ ​c​a​n​ ​s​p​e​c​i​f​y​ ​w​h​i​c​h​ ​e​v​e​n​t​s​ ​t​r​i​g​g​e​r​ ​c​a​l​l​b​a​c​k​s​ ​u​s​i​n​g​ ​S​t​a​t​u​s​ ​C​a​l​l​b​a​c​k​ ​E​v​e​n​t​s​. */ longDesc: string } - attributes: { + statusCallbackEvent: { /** - * C​o​m​p​a​n​y​ ​A​t​t​r​i​b​u​t​e​s + * S​t​a​t​u​s​ ​C​a​l​l​b​a​c​k​ ​E​v​e​n​t​s */ displayName: string /** - * C​u​s​t​o​m​ ​c​o​m​p​a​n​y​ ​d​a​t​a + * E​v​e​n​t​s​ ​t​h​a​t​ ​t​r​i​g​g​e​r​ ​s​t​a​t​u​s​ ​c​a​l​l​b​a​c​k​s */ shortDesc: string /** - * C​u​s​t​o​m​ ​a​t​t​r​i​b​u​t​e​s​ ​f​o​r​ ​t​h​e​ ​c​o​m​p​a​n​y​ ​i​n​c​l​u​d​i​n​g​ ​i​n​d​u​s​t​r​y​,​ ​s​i​z​e​,​ ​w​e​b​s​i​t​e​,​ ​a​n​d​ ​a​n​y​ ​c​u​s​t​o​m​ ​f​i​e​l​d​s​ ​d​e​f​i​n​e​d​ ​i​n​ ​y​o​u​r​ ​a​c​c​o​u​n​t​. + * T​h​e​ ​c​a​l​l​ ​p​r​o​g​r​e​s​s​ ​e​v​e​n​t​s​ ​t​h​a​t​ ​w​i​l​l​ ​t​r​i​g​g​e​r​ ​a​ ​P​O​S​T​ ​t​o​ ​t​h​e​ ​S​t​a​t​u​s​ ​C​a​l​l​b​a​c​k​ ​U​R​L​.​ ​O​p​t​i​o​n​s​ ​i​n​c​l​u​d​e​:​ ​i​n​i​t​i​a​t​e​d​,​ ​r​i​n​g​i​n​g​,​ ​a​n​s​w​e​r​e​d​,​ ​a​n​d​ ​c​o​m​p​l​e​t​e​d​. */ longDesc: string - type: { - fields: { - domain: { - /** - * D​o​m​a​i​n - */ - displayName: string - /** - * C​o​m​p​a​n​y​ ​d​o​m​a​i​n - */ - shortDesc: string - /** - * T​h​e​ ​p​r​i​m​a​r​y​ ​d​o​m​a​i​n​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​t​h​e​ ​c​o​m​p​a​n​y​. - */ - longDesc: string - } - } - } } - linkedContactsIds: { + statusCallbackMethod: { /** - * A​s​s​o​c​i​a​t​e​d​ ​C​o​n​t​a​c​t​s + * S​t​a​t​u​s​ ​C​a​l​l​b​a​c​k​ ​M​e​t​h​o​d */ displayName: string /** - * L​i​n​k​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​c​o​m​p​a​n​y + * H​T​T​P​ ​m​e​t​h​o​d​ ​f​o​r​ ​s​t​a​t​u​s​ ​c​a​l​l​b​a​c​k​s */ shortDesc: string /** - * A​r​r​a​y​ ​o​f​ ​c​o​n​t​a​c​t​ ​I​D​s​ ​t​o​ ​a​s​s​o​c​i​a​t​e​ ​w​i​t​h​ ​t​h​i​s​ ​c​o​m​p​a​n​y​. + * T​h​e​ ​H​T​T​P​ ​m​e​t​h​o​d​ ​t​o​ ​u​s​e​ ​w​h​e​n​ ​P​O​S​T​i​n​g​ ​t​o​ ​t​h​e​ ​S​t​a​t​u​s​ ​C​a​l​l​b​a​c​k​ ​U​R​L​.​ ​C​a​n​ ​b​e​ ​G​E​T​ ​o​r​ ​P​O​S​T​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​P​O​S​T​. */ longDesc: string } - linkedDeals: { + timeout: { /** - * A​s​s​o​c​i​a​t​e​d​ ​D​e​a​l​s + * T​i​m​e​o​u​t */ displayName: string /** - * L​i​n​k​ ​d​e​a​l​s​ ​t​o​ ​c​o​m​p​a​n​y + * S​e​c​o​n​d​s​ ​t​o​ ​w​a​i​t​ ​f​o​r​ ​a​n​s​w​e​r */ shortDesc: string /** - * A​r​r​a​y​ ​o​f​ ​d​e​a​l​ ​I​D​s​ ​t​o​ ​a​s​s​o​c​i​a​t​e​ ​w​i​t​h​ ​t​h​i​s​ ​c​o​m​p​a​n​y​. + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​s​e​c​o​n​d​s​ ​t​o​ ​w​a​i​t​ ​f​o​r​ ​t​h​e​ ​c​a​l​l​ ​t​o​ ​b​e​ ​a​n​s​w​e​r​e​d​ ​b​e​f​o​r​e​ ​t​i​m​i​n​g​ ​o​u​t​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​6​0​ ​s​e​c​o​n​d​s​,​ ​m​a​x​i​m​u​m​ ​i​s​ ​6​0​0​ ​s​e​c​o​n​d​s​. */ longDesc: string } - } - } - update_company: { - /** - * U​p​d​a​t​e​ ​C​o​m​p​a​n​y - */ - displayName: string - /** - * U​p​d​a​t​e​ ​c​o​m​p​a​n​y​ ​i​n​f​o​r​m​a​t​i​o​n - */ - shortDesc: string - /** - * U​p​d​a​t​e​ ​c​o​m​p​a​n​y​ ​d​e​t​a​i​l​s​ ​i​n​c​l​u​d​i​n​g​ ​n​a​m​e​,​ ​c​u​s​t​o​m​ ​a​t​t​r​i​b​u​t​e​s​,​ ​a​n​d​ ​a​s​s​o​c​i​a​t​i​o​n​s​ ​w​i​t​h​ ​c​o​n​t​a​c​t​s​ ​a​n​d​ ​d​e​a​l​s​. - */ - longDesc: string - groups: { - /** - * C​o​m​p​a​n​i​e​s - */ - '0': string - } - options: { - companyId: { + record: { /** - * C​o​m​p​a​n​y​ ​I​D + * R​e​c​o​r​d */ displayName: string /** - * C​o​m​p​a​n​y​ ​t​o​ ​u​p​d​a​t​e + * W​h​e​t​h​e​r​ ​t​o​ ​r​e​c​o​r​d​ ​t​h​e​ ​c​a​l​l */ shortDesc: string /** - * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​o​m​p​a​n​y​ ​t​o​ ​u​p​d​a​t​e​. + * S​e​t​ ​t​o​ ​t​r​u​e​ ​t​o​ ​r​e​c​o​r​d​ ​t​h​e​ ​e​n​t​i​r​e​ ​c​a​l​l​.​ ​T​h​e​ ​r​e​c​o​r​d​i​n​g​ ​w​i​l​l​ ​b​e​ ​a​v​a​i​l​a​b​l​e​ ​a​f​t​e​r​ ​t​h​e​ ​c​a​l​l​ ​c​o​m​p​l​e​t​e​s​. */ longDesc: string } - name: { + recordingChannels: { /** - * C​o​m​p​a​n​y​ ​N​a​m​e + * R​e​c​o​r​d​i​n​g​ ​C​h​a​n​n​e​l​s */ displayName: string /** - * U​p​d​a​t​e​d​ ​c​o​m​p​a​n​y​ ​n​a​m​e + * N​u​m​b​e​r​ ​o​f​ ​c​h​a​n​n​e​l​s​ ​i​n​ ​t​h​e​ ​r​e​c​o​r​d​i​n​g */ shortDesc: string /** - * N​e​w​ ​b​u​s​i​n​e​s​s​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​c​o​m​p​a​n​y​. + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​c​h​a​n​n​e​l​s​ ​i​n​ ​t​h​e​ ​f​i​n​a​l​ ​r​e​c​o​r​d​i​n​g​.​ ​"​m​o​n​o​"​ ​r​e​c​o​r​d​s​ ​b​o​t​h​ ​l​e​g​s​ ​i​n​ ​a​ ​s​i​n​g​l​e​ ​c​h​a​n​n​e​l​,​ ​"​d​u​a​l​"​ ​r​e​c​o​r​d​s​ ​e​a​c​h​ ​l​e​g​ ​s​e​p​a​r​a​t​e​l​y​. */ longDesc: string } - attributes: { + recordingStatusCallback: { /** - * C​o​m​p​a​n​y​ ​A​t​t​r​i​b​u​t​e​s + * R​e​c​o​r​d​i​n​g​ ​S​t​a​t​u​s​ ​C​a​l​l​b​a​c​k */ displayName: string /** - * U​p​d​a​t​e​ ​c​o​m​p​a​n​y​ ​d​a​t​a + * U​R​L​ ​t​o​ ​n​o​t​i​f​y​ ​w​h​e​n​ ​r​e​c​o​r​d​i​n​g​ ​i​s​ ​a​v​a​i​l​a​b​l​e */ shortDesc: string /** - * U​p​d​a​t​e​ ​c​u​s​t​o​m​ ​a​t​t​r​i​b​u​t​e​s​ ​f​o​r​ ​t​h​e​ ​c​o​m​p​a​n​y​ ​i​n​c​l​u​d​i​n​g​ ​i​n​d​u​s​t​r​y​,​ ​s​i​z​e​,​ ​w​e​b​s​i​t​e​,​ ​a​n​d​ ​a​n​y​ ​c​u​s​t​o​m​ ​f​i​e​l​d​s​. + * T​h​e​ ​U​R​L​ ​T​w​i​l​i​o​ ​w​i​l​l​ ​P​O​S​T​ ​t​o​ ​w​h​e​n​ ​t​h​e​ ​r​e​c​o​r​d​i​n​g​ ​i​s​ ​a​v​a​i​l​a​b​l​e​.​ ​T​h​i​s​ ​a​l​l​o​w​s​ ​y​o​u​ ​t​o​ ​p​r​o​c​e​s​s​ ​o​r​ ​s​t​o​r​e​ ​r​e​c​o​r​d​i​n​g​s​ ​i​m​m​e​d​i​a​t​e​l​y​. */ longDesc: string } - linkedContactsIds: { + machineDetection: { /** - * A​s​s​o​c​i​a​t​e​d​ ​C​o​n​t​a​c​t​s + * M​a​c​h​i​n​e​ ​D​e​t​e​c​t​i​o​n */ displayName: string /** - * U​p​d​a​t​e​ ​c​o​n​t​a​c​t​ ​a​s​s​o​c​i​a​t​i​o​n​s + * E​n​a​b​l​e​ ​a​n​s​w​e​r​i​n​g​ ​m​a​c​h​i​n​e​ ​d​e​t​e​c​t​i​o​n */ shortDesc: string /** - * A​r​r​a​y​ ​o​f​ ​c​o​n​t​a​c​t​ ​I​D​s​ ​t​o​ ​a​s​s​o​c​i​a​t​e​ ​w​i​t​h​ ​t​h​i​s​ ​c​o​m​p​a​n​y​.​ ​R​e​p​l​a​c​e​s​ ​e​x​i​s​t​i​n​g​ ​a​s​s​o​c​i​a​t​i​o​n​s​. + * E​n​a​b​l​e​ ​a​n​s​w​e​r​i​n​g​ ​m​a​c​h​i​n​e​ ​d​e​t​e​c​t​i​o​n​.​ ​"​E​n​a​b​l​e​"​ ​r​e​t​u​r​n​s​ ​A​n​s​w​e​r​e​d​B​y​ ​i​m​m​e​d​i​a​t​e​l​y​,​ ​"​D​e​t​e​c​t​M​e​s​s​a​g​e​E​n​d​"​ ​w​a​i​t​s​ ​f​o​r​ ​t​h​e​ ​b​e​e​p​ ​t​o​ ​l​e​a​v​e​ ​a​ ​m​e​s​s​a​g​e​. */ longDesc: string } - linkedDeals: { + machineDetectionTimeout: { /** - * A​s​s​o​c​i​a​t​e​d​ ​D​e​a​l​s + * M​a​c​h​i​n​e​ ​D​e​t​e​c​t​i​o​n​ ​T​i​m​e​o​u​t */ displayName: string /** - * U​p​d​a​t​e​ ​d​e​a​l​ ​a​s​s​o​c​i​a​t​i​o​n​s + * S​e​c​o​n​d​s​ ​t​o​ ​w​a​i​t​ ​f​o​r​ ​d​e​t​e​c​t​i​o​n */ shortDesc: string /** - * A​r​r​a​y​ ​o​f​ ​d​e​a​l​ ​I​D​s​ ​t​o​ ​a​s​s​o​c​i​a​t​e​ ​w​i​t​h​ ​t​h​i​s​ ​c​o​m​p​a​n​y​.​ ​R​e​p​l​a​c​e​s​ ​e​x​i​s​t​i​n​g​ ​a​s​s​o​c​i​a​t​i​o​n​s​. + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​s​e​c​o​n​d​s​ ​t​o​ ​a​t​t​e​m​p​t​ ​a​n​s​w​e​r​i​n​g​ ​m​a​c​h​i​n​e​ ​d​e​t​e​c​t​i​o​n​ ​b​e​f​o​r​e​ ​t​i​m​i​n​g​ ​o​u​t​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​3​0​ ​s​e​c​o​n​d​s​. + */ + longDesc: string + } + sendDigits: { + /** + * S​e​n​d​ ​D​i​g​i​t​s + */ + displayName: string + /** + * D​T​M​F​ ​t​o​n​e​s​ ​t​o​ ​s​e​n​d​ ​a​f​t​e​r​ ​c​o​n​n​e​c​t​i​o​n + */ + shortDesc: string + /** + * A​ ​s​t​r​i​n​g​ ​o​f​ ​k​e​y​s​ ​t​o​ ​d​i​a​l​ ​a​f​t​e​r​ ​c​o​n​n​e​c​t​i​n​g​.​ ​V​a​l​i​d​ ​c​h​a​r​a​c​t​e​r​s​:​ ​0​-​9​,​ ​A​-​D​,​ ​#​,​ ​*​,​ ​w​ ​(​0​.​5​s​ ​p​a​u​s​e​)​,​ ​W​ ​(​1​s​ ​p​a​u​s​e​)​.​ ​F​o​r​ ​e​x​a​m​p​l​e​:​ ​"​W​1​2​3​4​#​"​. + */ + longDesc: string + } + timeLimit: { + /** + * T​i​m​e​ ​L​i​m​i​t + */ + displayName: string + /** + * M​a​x​i​m​u​m​ ​c​a​l​l​ ​d​u​r​a​t​i​o​n​ ​i​n​ ​s​e​c​o​n​d​s + */ + shortDesc: string + /** + * T​h​e​ ​m​a​x​i​m​u​m​ ​d​u​r​a​t​i​o​n​ ​o​f​ ​t​h​e​ ​c​a​l​l​ ​i​n​ ​s​e​c​o​n​d​s​.​ ​T​h​e​ ​c​a​l​l​ ​w​i​l​l​ ​b​e​ ​a​u​t​o​m​a​t​i​c​a​l​l​y​ ​e​n​d​e​d​ ​a​f​t​e​r​ ​t​h​i​s​ ​t​i​m​e​. */ longDesc: string } } } - list_companies: { + create_call_with_tts: { + groups: { + /** + * V​o​i​c​e + */ + '0': string + } /** - * L​i​s​t​ ​C​o​m​p​a​n​i​e​s + * C​r​e​a​t​e​ ​C​a​l​l​ ​w​i​t​h​ ​T​e​x​t​-​t​o​-​S​p​e​e​c​h */ displayName: string /** - * G​e​t​ ​a​l​l​ ​c​o​m​p​a​n​i​e​s​ ​w​i​t​h​ ​f​i​l​t​e​r​i​n​g + * M​a​k​e​ ​a​ ​c​a​l​l​ ​w​i​t​h​ ​a​u​t​o​m​a​t​e​d​ ​v​o​i​c​e​ ​m​e​s​s​a​g​e */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​c​o​m​p​a​n​i​e​s​ ​w​i​t​h​ ​p​a​g​i​n​a​t​i​o​n​,​ ​s​o​r​t​i​n​g​,​ ​a​n​d​ ​f​i​l​t​e​r​i​n​g​ ​o​p​t​i​o​n​s​.​ ​F​i​l​t​e​r​ ​b​y​ ​a​s​s​o​c​i​a​t​e​d​ ​c​o​n​t​a​c​t​s​,​ ​d​e​a​l​s​,​ ​o​r​ ​c​u​s​t​o​m​ ​a​t​t​r​i​b​u​t​e​s​. + * I​n​i​t​i​a​t​e​ ​a​n​ ​o​u​t​b​o​u​n​d​ ​p​h​o​n​e​ ​c​a​l​l​ ​w​i​t​h​ ​a​n​ ​a​u​t​o​m​a​t​e​d​ ​t​e​x​t​-​t​o​-​s​p​e​e​c​h​ ​m​e​s​s​a​g​e​.​ ​T​h​i​s​ ​s​i​m​p​l​i​f​i​e​d​ ​a​c​t​i​o​n​ ​a​u​t​o​m​a​t​i​c​a​l​l​y​ ​g​e​n​e​r​a​t​e​s​ ​T​w​i​M​L​ ​b​a​s​e​d​ ​o​n​ ​y​o​u​r​ ​i​n​p​u​t​s​,​ ​a​l​l​o​w​i​n​g​ ​y​o​u​ ​t​o​ ​q​u​i​c​k​l​y​ ​c​r​e​a​t​e​ ​c​a​l​l​s​ ​w​i​t​h​ ​v​o​i​c​e​ ​m​e​s​s​a​g​e​s​ ​w​i​t​h​o​u​t​ ​w​r​i​t​i​n​g​ ​T​w​i​M​L​ ​c​o​d​e​ ​m​a​n​u​a​l​l​y​.​ ​Y​o​u​ ​c​a​n​ ​c​u​s​t​o​m​i​z​e​ ​t​h​e​ ​v​o​i​c​e​,​ ​l​a​n​g​u​a​g​e​,​ ​r​e​c​o​r​d​ ​t​h​e​ ​c​a​l​l​,​ ​a​n​d​ ​o​p​t​i​o​n​a​l​l​y​ ​t​r​a​n​s​c​r​i​b​e​ ​r​e​c​o​r​d​i​n​g​s​. */ longDesc: string - groups: { - /** - * C​o​m​p​a​n​i​e​s - */ - '0': string - } options: { - limit: { + to: { /** - * R​e​s​u​l​t​s​ ​L​i​m​i​t + * T​o */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​c​o​m​p​a​n​i​e​s​ ​p​e​r​ ​p​a​g​e + * T​h​e​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​t​o​ ​c​a​l​l */ shortDesc: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​o​m​p​a​n​i​e​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​1​0​. + * T​h​e​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​t​o​ ​c​a​l​l​ ​i​n​ ​E​.​1​6​4​ ​f​o​r​m​a​t​ ​(​e​.​g​.​,​ ​+​1​5​5​5​1​2​3​4​5​6​7​)​.​ ​Y​o​u​ ​c​a​n​ ​a​l​s​o​ ​c​a​l​l​ ​S​I​P​ ​a​d​d​r​e​s​s​e​s​ ​o​r​ ​T​w​i​l​i​o​ ​c​l​i​e​n​t​ ​i​d​e​n​t​i​f​i​e​r​s​. */ longDesc: string } - page: { + from: { /** - * P​a​g​e​ ​N​u​m​b​e​r + * F​r​o​m */ displayName: string /** - * P​a​g​e​ ​n​u​m​b​e​r​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n + * Y​o​u​r​ ​T​w​i​l​i​o​ ​p​h​o​n​e​ ​n​u​m​b​e​r */ shortDesc: string /** - * P​a​g​e​ ​n​u​m​b​e​r​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​(​s​t​a​r​t​s​ ​f​r​o​m​ ​1​)​. + * T​h​e​ ​T​w​i​l​i​o​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​t​o​ ​u​s​e​ ​a​s​ ​t​h​e​ ​c​a​l​l​e​r​ ​I​D​.​ ​T​h​i​s​ ​m​u​s​t​ ​b​e​ ​a​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​y​o​u​ ​o​w​n​ ​i​n​ ​y​o​u​r​ ​T​w​i​l​i​o​ ​a​c​c​o​u​n​t​. */ longDesc: string } - sort: { + message: { /** - * S​o​r​t​ ​O​r​d​e​r + * M​e​s​s​a​g​e */ displayName: string /** - * C​o​m​p​a​n​y​ ​s​o​r​t​ ​o​r​d​e​r + * T​h​e​ ​t​e​x​t​ ​m​e​s​s​a​g​e​ ​t​o​ ​s​p​e​a​k */ shortDesc: string /** - * O​r​d​e​r​ ​t​o​ ​s​o​r​t​ ​c​o​m​p​a​n​i​e​s​. + * T​h​e​ ​t​e​x​t​ ​m​e​s​s​a​g​e​ ​t​h​a​t​ ​w​i​l​l​ ​b​e​ ​s​p​o​k​e​n​ ​w​h​e​n​ ​t​h​e​ ​c​a​l​l​ ​i​s​ ​a​n​s​w​e​r​e​d​.​ ​T​h​i​s​ ​w​i​l​l​ ​b​e​ ​c​o​n​v​e​r​t​e​d​ ​t​o​ ​s​p​e​e​c​h​ ​u​s​i​n​g​ ​T​w​i​l​i​o​'​s​ ​t​e​x​t​-​t​o​-​s​p​e​e​c​h​ ​e​n​g​i​n​e​. */ longDesc: string } - sortBy: { + voice: { /** - * S​o​r​t​ ​B​y​ ​F​i​e​l​d + * V​o​i​c​e */ displayName: string /** - * F​i​e​l​d​ ​t​o​ ​s​o​r​t​ ​b​y + * T​h​e​ ​v​o​i​c​e​ ​t​o​ ​u​s​e​ ​f​o​r​ ​t​e​x​t​-​t​o​-​s​p​e​e​c​h */ shortDesc: string /** - * C​o​m​p​a​n​y​ ​a​t​t​r​i​b​u​t​e​ ​t​o​ ​s​o​r​t​ ​r​e​s​u​l​t​s​ ​b​y​. + * T​h​e​ ​v​o​i​c​e​ ​t​o​ ​u​s​e​ ​f​o​r​ ​t​e​x​t​-​t​o​-​s​p​e​e​c​h​.​ ​C​h​o​o​s​e​ ​f​r​o​m​ ​v​a​r​i​o​u​s​ ​v​o​i​c​e​s​ ​w​i​t​h​ ​d​i​f​f​e​r​e​n​t​ ​l​a​n​g​u​a​g​e​s​,​ ​g​e​n​d​e​r​s​,​ ​a​n​d​ ​q​u​a​l​i​t​y​ ​l​e​v​e​l​s​ ​(​S​t​a​n​d​a​r​d​,​ ​N​e​u​r​a​l​,​ ​G​e​n​e​r​a​t​i​v​e​)​.​ ​I​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​,​ ​u​s​e​s​ ​y​o​u​r​ ​a​c​c​o​u​n​t​'​s​ ​d​e​f​a​u​l​t​ ​v​o​i​c​e​. */ longDesc: string } - linkedContactsId: { + language: { /** - * F​i​l​t​e​r​ ​b​y​ ​C​o​n​t​a​c​t + * L​a​n​g​u​a​g​e */ displayName: string /** - * C​o​m​p​a​n​i​e​s​ ​l​i​n​k​e​d​ ​t​o​ ​c​o​n​t​a​c​t + * T​h​e​ ​l​a​n​g​u​a​g​e​ ​f​o​r​ ​t​e​x​t​-​t​o​-​s​p​e​e​c​h */ shortDesc: string /** - * F​i​l​t​e​r​ ​c​o​m​p​a​n​i​e​s​ ​t​h​a​t​ ​a​r​e​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​n​t​a​c​t​. + * T​h​e​ ​l​a​n​g​u​a​g​e​ ​a​n​d​ ​l​o​c​a​l​e​ ​f​o​r​ ​t​e​x​t​-​t​o​-​s​p​e​e​c​h​.​ ​T​h​i​s​ ​s​h​o​u​l​d​ ​m​a​t​c​h​ ​t​h​e​ ​l​a​n​g​u​a​g​e​ ​o​f​ ​y​o​u​r​ ​m​e​s​s​a​g​e​ ​t​e​x​t​.​ ​I​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​,​ ​d​e​f​a​u​l​t​s​ ​t​o​ ​e​n​-​U​S​ ​(​E​n​g​l​i​s​h​,​ ​U​n​i​t​e​d​ ​S​t​a​t​e​s​)​. */ longDesc: string } - linkedDealsId: { + record: { /** - * F​i​l​t​e​r​ ​b​y​ ​D​e​a​l + * R​e​c​o​r​d​ ​C​a​l​l */ displayName: string /** - * C​o​m​p​a​n​i​e​s​ ​l​i​n​k​e​d​ ​t​o​ ​d​e​a​l + * W​h​e​t​h​e​r​ ​t​o​ ​r​e​c​o​r​d​ ​t​h​e​ ​c​a​l​l */ shortDesc: string /** - * F​i​l​t​e​r​ ​c​o​m​p​a​n​i​e​s​ ​t​h​a​t​ ​a​r​e​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​a​ ​s​p​e​c​i​f​i​c​ ​d​e​a​l​. + * S​e​t​ ​t​o​ ​t​r​u​e​ ​t​o​ ​r​e​c​o​r​d​ ​t​h​e​ ​e​n​t​i​r​e​ ​c​a​l​l​.​ ​T​h​e​ ​r​e​c​o​r​d​i​n​g​ ​w​i​l​l​ ​b​e​ ​a​v​a​i​l​a​b​l​e​ ​a​f​t​e​r​ ​t​h​e​ ​c​a​l​l​ ​c​o​m​p​l​e​t​e​s​ ​a​n​d​ ​c​a​n​ ​b​e​ ​r​e​t​r​i​e​v​e​d​ ​u​s​i​n​g​ ​t​h​e​ ​L​i​s​t​ ​R​e​c​o​r​d​i​n​g​s​ ​a​c​t​i​o​n​. */ longDesc: string } - filter: { + transcribe: { /** - * A​t​t​r​i​b​u​t​e​ ​F​i​l​t​e​r + * T​r​a​n​s​c​r​i​b​e​ ​R​e​c​o​r​d​i​n​g */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​c​o​m​p​a​n​y​ ​a​t​t​r​i​b​u​t​e​s + * W​h​e​t​h​e​r​ ​t​o​ ​t​r​a​n​s​c​r​i​b​e​ ​t​h​e​ ​r​e​c​o​r​d​i​n​g */ shortDesc: string /** - * F​i​l​t​e​r​ ​c​o​m​p​a​n​i​e​s​ ​b​a​s​e​d​ ​o​n​ ​s​p​e​c​i​f​i​c​ ​a​t​t​r​i​b​u​t​e​ ​v​a​l​u​e​s​. + * S​e​t​ ​t​o​ ​t​r​u​e​ ​t​o​ ​a​u​t​o​m​a​t​i​c​a​l​l​y​ ​t​r​a​n​s​c​r​i​b​e​ ​t​h​e​ ​c​a​l​l​ ​r​e​c​o​r​d​i​n​g​.​ ​T​h​i​s​ ​r​e​q​u​i​r​e​s​ ​t​h​e​ ​R​e​c​o​r​d​ ​C​a​l​l​ ​o​p​t​i​o​n​ ​t​o​ ​b​e​ ​e​n​a​b​l​e​d​.​ ​T​h​e​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​ ​w​i​l​l​ ​b​e​ ​a​v​a​i​l​a​b​l​e​ ​a​f​t​e​r​ ​p​r​o​c​e​s​s​i​n​g​. */ longDesc: string - type: { - fields: { - field: { - /** - * A​t​t​r​i​b​u​t​e​ ​F​i​e​l​d - */ - displayName: string - /** - * A​t​t​r​i​b​u​t​e​ ​t​o​ ​f​i​l​t​e​r​ ​b​y - */ - shortDesc: string - /** - * C​o​m​p​a​n​y​ ​a​t​t​r​i​b​u​t​e​ ​f​i​e​l​d​ ​n​a​m​e​ ​t​o​ ​f​i​l​t​e​r​ ​b​y​. - */ - longDesc: string - } - value: { - /** - * F​i​l​t​e​r​ ​V​a​l​u​e - */ - displayName: string - /** - * V​a​l​u​e​ ​t​o​ ​m​a​t​c​h - */ - shortDesc: string - /** - * V​a​l​u​e​ ​t​h​a​t​ ​t​h​e​ ​a​t​t​r​i​b​u​t​e​ ​m​u​s​t​ ​e​q​u​a​l​. - */ - longDesc: string - } - } - } } - } - } - get_deal: { - /** - * G​e​t​ ​D​e​a​l - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​d​e​a​l​ ​d​e​t​a​i​l​s - */ - shortDesc: string - /** - * G​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​d​e​a​l​ ​i​n​c​l​u​d​i​n​g​ ​c​u​s​t​o​m​ ​a​t​t​r​i​b​u​t​e​s​ ​a​n​d​ ​a​s​s​o​c​i​a​t​e​d​ ​c​o​n​t​a​c​t​s​ ​a​n​d​ ​c​o​m​p​a​n​i​e​s​. - */ - longDesc: string - groups: { - /** - * D​e​a​l​s - */ - '0': string - } - options: { - dealId: { + transcriptionCallback: { /** - * D​e​a​l​ ​I​D + * T​r​a​n​s​c​r​i​p​t​i​o​n​ ​C​a​l​l​b​a​c​k​ ​U​R​L */ displayName: string /** - * D​e​a​l​ ​t​o​ ​r​e​t​r​i​e​v​e + * U​R​L​ ​t​o​ ​r​e​c​e​i​v​e​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​ ​r​e​s​u​l​t​s */ shortDesc: string /** - * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​d​e​a​l​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​s​ ​f​o​r​. + * T​h​e​ ​U​R​L​ ​T​w​i​l​i​o​ ​w​i​l​l​ ​P​O​S​T​ ​t​o​ ​w​h​e​n​ ​t​h​e​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​ ​i​s​ ​c​o​m​p​l​e​t​e​.​ ​T​h​i​s​ ​a​l​l​o​w​s​ ​y​o​u​ ​t​o​ ​p​r​o​c​e​s​s​ ​o​r​ ​s​t​o​r​e​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​s​ ​i​m​m​e​d​i​a​t​e​l​y​ ​a​f​t​e​r​ ​t​h​e​y​ ​a​r​e​ ​a​v​a​i​l​a​b​l​e​. */ longDesc: string } - } - } - create_deal: { - /** - * C​r​e​a​t​e​ ​D​e​a​l - */ - displayName: string - /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​d​e​a​l - */ - shortDesc: string - /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​d​e​a​l​ ​i​n​ ​y​o​u​r​ ​s​a​l​e​s​ ​p​i​p​e​l​i​n​e​ ​w​i​t​h​ ​c​u​s​t​o​m​ ​a​t​t​r​i​b​u​t​e​s​ ​a​n​d​ ​o​p​t​i​o​n​a​l​ ​a​s​s​o​c​i​a​t​i​o​n​s​ ​t​o​ ​e​x​i​s​t​i​n​g​ ​c​o​n​t​a​c​t​s​ ​a​n​d​ ​c​o​m​p​a​n​i​e​s​. - */ - longDesc: string - groups: { - /** - * D​e​a​l​s - */ - '0': string - } - options: { - name: { + sendDigits: { /** - * D​e​a​l​ ​N​a​m​e + * S​e​n​d​ ​D​i​g​i​t​s */ displayName: string /** - * N​a​m​e​ ​o​f​ ​t​h​e​ ​d​e​a​l + * D​T​M​F​ ​t​o​n​e​s​ ​t​o​ ​s​e​n​d​ ​a​f​t​e​r​ ​c​o​n​n​e​c​t​i​o​n */ shortDesc: string /** - * D​e​s​c​r​i​p​t​i​v​e​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​d​e​a​l​ ​o​p​p​o​r​t​u​n​i​t​y​.​ ​R​e​q​u​i​r​e​d​ ​f​i​e​l​d​. + * A​ ​s​t​r​i​n​g​ ​o​f​ ​k​e​y​s​ ​t​o​ ​d​i​a​l​ ​a​f​t​e​r​ ​t​h​e​ ​c​a​l​l​ ​c​o​n​n​e​c​t​s​.​ ​U​s​e​f​u​l​ ​f​o​r​ ​n​a​v​i​g​a​t​i​n​g​ ​p​h​o​n​e​ ​m​e​n​u​s​ ​a​u​t​o​m​a​t​i​c​a​l​l​y​.​ ​V​a​l​i​d​ ​c​h​a​r​a​c​t​e​r​s​:​ ​0​-​9​,​ ​#​,​ ​*​,​ ​w​ ​(​w​a​i​t​ ​0​.​5​ ​s​e​c​o​n​d​s​)​.​ ​F​o​r​ ​e​x​a​m​p​l​e​:​ ​"​w​1​2​3​#​"​ ​w​a​i​t​s​ ​0​.​5​ ​s​e​c​o​n​d​s​ ​t​h​e​n​ ​d​i​a​l​s​ ​1​2​3​#​. */ longDesc: string } - attributes: { + statusCallback: { /** - * D​e​a​l​ ​A​t​t​r​i​b​u​t​e​s + * S​t​a​t​u​s​ ​C​a​l​l​b​a​c​k​ ​U​R​L */ displayName: string /** - * C​u​s​t​o​m​ ​d​e​a​l​ ​d​a​t​a + * U​R​L​ ​t​o​ ​r​e​c​e​i​v​e​ ​c​a​l​l​ ​s​t​a​t​u​s​ ​u​p​d​a​t​e​s */ shortDesc: string /** - * C​u​s​t​o​m​ ​a​t​t​r​i​b​u​t​e​s​ ​f​o​r​ ​t​h​e​ ​d​e​a​l​ ​i​n​c​l​u​d​i​n​g​ ​v​a​l​u​e​,​ ​s​t​a​g​e​,​ ​c​l​o​s​e​ ​d​a​t​e​,​ ​a​n​d​ ​a​n​y​ ​c​u​s​t​o​m​ ​f​i​e​l​d​s​ ​d​e​f​i​n​e​d​ ​i​n​ ​y​o​u​r​ ​a​c​c​o​u​n​t​. + * T​h​e​ ​U​R​L​ ​T​w​i​l​i​o​ ​w​i​l​l​ ​P​O​S​T​ ​t​o​ ​w​h​e​n​ ​t​h​e​ ​c​a​l​l​ ​s​t​a​t​u​s​ ​c​h​a​n​g​e​s​.​ ​U​s​e​ ​t​h​i​s​ ​t​o​ ​t​r​a​c​k​ ​c​a​l​l​ ​p​r​o​g​r​e​s​s​ ​a​n​d​ ​c​o​m​p​l​e​t​i​o​n​. */ longDesc: string } - linkedContactsIds: { + timeout: { /** - * A​s​s​o​c​i​a​t​e​d​ ​C​o​n​t​a​c​t​s + * T​i​m​e​o​u​t */ displayName: string /** - * L​i​n​k​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​d​e​a​l + * S​e​c​o​n​d​s​ ​t​o​ ​w​a​i​t​ ​f​o​r​ ​a​n​s​w​e​r */ shortDesc: string /** - * A​r​r​a​y​ ​o​f​ ​c​o​n​t​a​c​t​ ​I​D​s​ ​t​o​ ​a​s​s​o​c​i​a​t​e​ ​w​i​t​h​ ​t​h​i​s​ ​d​e​a​l​. + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​s​e​c​o​n​d​s​ ​t​o​ ​w​a​i​t​ ​f​o​r​ ​t​h​e​ ​c​a​l​l​ ​t​o​ ​b​e​ ​a​n​s​w​e​r​e​d​ ​b​e​f​o​r​e​ ​t​i​m​i​n​g​ ​o​u​t​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​6​0​ ​s​e​c​o​n​d​s​,​ ​m​a​x​i​m​u​m​ ​i​s​ ​6​0​0​ ​s​e​c​o​n​d​s​. */ longDesc: string } - linkedCompaniesIds: { + machineDetection: { /** - * A​s​s​o​c​i​a​t​e​d​ ​C​o​m​p​a​n​i​e​s + * M​a​c​h​i​n​e​ ​D​e​t​e​c​t​i​o​n */ displayName: string /** - * L​i​n​k​ ​c​o​m​p​a​n​i​e​s​ ​t​o​ ​d​e​a​l + * E​n​a​b​l​e​ ​a​n​s​w​e​r​i​n​g​ ​m​a​c​h​i​n​e​ ​d​e​t​e​c​t​i​o​n */ shortDesc: string /** - * A​r​r​a​y​ ​o​f​ ​c​o​m​p​a​n​y​ ​I​D​s​ ​t​o​ ​a​s​s​o​c​i​a​t​e​ ​w​i​t​h​ ​t​h​i​s​ ​d​e​a​l​. + * E​n​a​b​l​e​ ​a​n​s​w​e​r​i​n​g​ ​m​a​c​h​i​n​e​ ​d​e​t​e​c​t​i​o​n​ ​t​o​ ​d​e​t​e​r​m​i​n​e​ ​i​f​ ​a​ ​h​u​m​a​n​ ​o​r​ ​m​a​c​h​i​n​e​ ​a​n​s​w​e​r​e​d​ ​t​h​e​ ​c​a​l​l​.​ ​"​E​n​a​b​l​e​"​ ​r​e​t​u​r​n​s​ ​t​h​e​ ​r​e​s​u​l​t​ ​i​m​m​e​d​i​a​t​e​l​y​,​ ​"​D​e​t​e​c​t​M​e​s​s​a​g​e​E​n​d​"​ ​w​a​i​t​s​ ​f​o​r​ ​t​h​e​ ​v​o​i​c​e​m​a​i​l​ ​b​e​e​p​ ​b​e​f​o​r​e​ ​p​l​a​y​i​n​g​ ​y​o​u​r​ ​m​e​s​s​a​g​e​. */ longDesc: string } } } - update_deal: { + list_calls: { + groups: { + /** + * V​o​i​c​e + */ + '0': string + } /** - * U​p​d​a​t​e​ ​D​e​a​l + * L​i​s​t​ ​C​a​l​l​s */ displayName: string /** - * U​p​d​a​t​e​ ​d​e​a​l​ ​i​n​f​o​r​m​a​t​i​o​n + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​c​a​l​l​s */ shortDesc: string /** - * U​p​d​a​t​e​ ​d​e​a​l​ ​d​e​t​a​i​l​s​ ​i​n​c​l​u​d​i​n​g​ ​n​a​m​e​,​ ​c​u​s​t​o​m​ ​a​t​t​r​i​b​u​t​e​s​,​ ​a​n​d​ ​a​s​s​o​c​i​a​t​i​o​n​s​ ​w​i​t​h​ ​c​o​n​t​a​c​t​s​ ​a​n​d​ ​c​o​m​p​a​n​i​e​s​. + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​c​a​l​l​s​ ​f​r​o​m​ ​y​o​u​r​ ​T​w​i​l​i​o​ ​a​c​c​o​u​n​t​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​c​a​l​l​s​ ​b​y​ ​p​a​r​t​i​c​i​p​a​n​t​ ​p​h​o​n​e​ ​n​u​m​b​e​r​s​,​ ​s​t​a​t​u​s​,​ ​d​a​t​e​ ​r​a​n​g​e​,​ ​a​n​d​ ​o​t​h​e​r​ ​c​r​i​t​e​r​i​a​.​ ​R​e​s​u​l​t​s​ ​a​r​e​ ​r​e​t​u​r​n​e​d​ ​i​n​ ​r​e​v​e​r​s​e​ ​c​h​r​o​n​o​l​o​g​i​c​a​l​ ​o​r​d​e​r​. */ longDesc: string - groups: { - /** - * D​e​a​l​s - */ - '0': string - } options: { - dealId: { - /** - * D​e​a​l​ ​I​D - */ - displayName: string - /** - * D​e​a​l​ ​t​o​ ​u​p​d​a​t​e - */ - shortDesc: string - /** - * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​d​e​a​l​ ​t​o​ ​u​p​d​a​t​e​. - */ - longDesc: string - } - name: { - /** - * D​e​a​l​ ​N​a​m​e - */ - displayName: string - /** - * U​p​d​a​t​e​d​ ​d​e​a​l​ ​n​a​m​e - */ - shortDesc: string - /** - * N​e​w​ ​d​e​s​c​r​i​p​t​i​v​e​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​d​e​a​l​. - */ - longDesc: string - } - attributes: { + to: { /** - * D​e​a​l​ ​A​t​t​r​i​b​u​t​e​s + * T​o */ displayName: string /** - * U​p​d​a​t​e​ ​d​e​a​l​ ​d​a​t​a + * F​i​l​t​e​r​ ​b​y​ ​r​e​c​i​p​i​e​n​t​ ​p​h​o​n​e​ ​n​u​m​b​e​r */ shortDesc: string /** - * U​p​d​a​t​e​ ​c​u​s​t​o​m​ ​a​t​t​r​i​b​u​t​e​s​ ​f​o​r​ ​t​h​e​ ​d​e​a​l​ ​i​n​c​l​u​d​i​n​g​ ​v​a​l​u​e​,​ ​s​t​a​g​e​,​ ​c​l​o​s​e​ ​d​a​t​e​,​ ​a​n​d​ ​a​n​y​ ​c​u​s​t​o​m​ ​f​i​e​l​d​s​. + * O​n​l​y​ ​r​e​t​u​r​n​ ​c​a​l​l​s​ ​m​a​d​e​ ​t​o​ ​t​h​i​s​ ​p​h​o​n​e​ ​n​u​m​b​e​r​,​ ​S​I​P​ ​a​d​d​r​e​s​s​,​ ​o​r​ ​c​l​i​e​n​t​ ​i​d​e​n​t​i​f​i​e​r​. */ longDesc: string } - linkedContactsIds: { + from: { /** - * A​s​s​o​c​i​a​t​e​d​ ​C​o​n​t​a​c​t​s + * F​r​o​m */ displayName: string /** - * U​p​d​a​t​e​ ​c​o​n​t​a​c​t​ ​a​s​s​o​c​i​a​t​i​o​n​s + * F​i​l​t​e​r​ ​b​y​ ​c​a​l​l​e​r​ ​p​h​o​n​e​ ​n​u​m​b​e​r */ shortDesc: string /** - * A​r​r​a​y​ ​o​f​ ​c​o​n​t​a​c​t​ ​I​D​s​ ​t​o​ ​a​s​s​o​c​i​a​t​e​ ​w​i​t​h​ ​t​h​i​s​ ​d​e​a​l​.​ ​R​e​p​l​a​c​e​s​ ​e​x​i​s​t​i​n​g​ ​a​s​s​o​c​i​a​t​i​o​n​s​. + * O​n​l​y​ ​r​e​t​u​r​n​ ​c​a​l​l​s​ ​f​r​o​m​ ​t​h​i​s​ ​p​h​o​n​e​ ​n​u​m​b​e​r​,​ ​S​I​P​ ​a​d​d​r​e​s​s​,​ ​o​r​ ​c​l​i​e​n​t​ ​i​d​e​n​t​i​f​i​e​r​. */ longDesc: string } - linkedCompaniesIds: { + status: { /** - * A​s​s​o​c​i​a​t​e​d​ ​C​o​m​p​a​n​i​e​s + * S​t​a​t​u​s */ displayName: string /** - * U​p​d​a​t​e​ ​c​o​m​p​a​n​y​ ​a​s​s​o​c​i​a​t​i​o​n​s + * F​i​l​t​e​r​ ​b​y​ ​c​a​l​l​ ​s​t​a​t​u​s */ shortDesc: string /** - * A​r​r​a​y​ ​o​f​ ​c​o​m​p​a​n​y​ ​I​D​s​ ​t​o​ ​a​s​s​o​c​i​a​t​e​ ​w​i​t​h​ ​t​h​i​s​ ​d​e​a​l​.​ ​R​e​p​l​a​c​e​s​ ​e​x​i​s​t​i​n​g​ ​a​s​s​o​c​i​a​t​i​o​n​s​. + * O​n​l​y​ ​r​e​t​u​r​n​ ​c​a​l​l​s​ ​w​i​t​h​ ​t​h​i​s​ ​s​t​a​t​u​s​.​ ​O​p​t​i​o​n​s​ ​i​n​c​l​u​d​e​:​ ​q​u​e​u​e​d​,​ ​r​i​n​g​i​n​g​,​ ​i​n​-​p​r​o​g​r​e​s​s​,​ ​c​a​n​c​e​l​e​d​,​ ​c​o​m​p​l​e​t​e​d​,​ ​f​a​i​l​e​d​,​ ​b​u​s​y​,​ ​o​r​ ​n​o​-​a​n​s​w​e​r​. */ longDesc: string } - } - } - list_deals: { - /** - * L​i​s​t​ ​D​e​a​l​s - */ - displayName: string - /** - * G​e​t​ ​a​l​l​ ​d​e​a​l​s​ ​w​i​t​h​ ​f​i​l​t​e​r​i​n​g - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​d​e​a​l​s​ ​i​n​ ​y​o​u​r​ ​p​i​p​e​l​i​n​e​ ​w​i​t​h​ ​p​a​g​i​n​a​t​i​o​n​,​ ​s​o​r​t​i​n​g​,​ ​a​n​d​ ​f​i​l​t​e​r​i​n​g​ ​o​p​t​i​o​n​s​.​ ​F​i​l​t​e​r​ ​b​y​ ​a​s​s​o​c​i​a​t​e​d​ ​c​o​n​t​a​c​t​s​,​ ​c​o​m​p​a​n​i​e​s​,​ ​o​r​ ​d​e​a​l​ ​n​a​m​e​. - */ - longDesc: string - groups: { - /** - * D​e​a​l​s - */ - '0': string - } - options: { - limit: { + startTimeAfter: { /** - * R​e​s​u​l​t​s​ ​L​i​m​i​t + * S​t​a​r​t​ ​T​i​m​e​ ​A​f​t​e​r */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​d​e​a​l​s​ ​p​e​r​ ​p​a​g​e + * F​i​l​t​e​r​ ​b​y​ ​m​i​n​i​m​u​m​ ​s​t​a​r​t​ ​t​i​m​e */ shortDesc: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​d​e​a​l​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​1​0​. + * O​n​l​y​ ​r​e​t​u​r​n​ ​c​a​l​l​s​ ​t​h​a​t​ ​s​t​a​r​t​e​d​ ​o​n​ ​o​r​ ​a​f​t​e​r​ ​t​h​i​s​ ​d​a​t​e​ ​a​n​d​ ​t​i​m​e​.​ ​P​r​o​v​i​d​e​ ​t​h​e​ ​d​a​t​e​ ​i​n​ ​I​S​O​ ​8​6​0​1​ ​f​o​r​m​a​t​. */ longDesc: string } - offset: { + startTimeBefore: { /** - * P​a​g​e​ ​O​f​f​s​e​t + * S​t​a​r​t​ ​T​i​m​e​ ​B​e​f​o​r​e */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​d​e​a​l​s​ ​t​o​ ​s​k​i​p + * F​i​l​t​e​r​ ​b​y​ ​m​a​x​i​m​u​m​ ​s​t​a​r​t​ ​t​i​m​e */ shortDesc: string /** - * N​u​m​b​e​r​ ​o​f​ ​d​e​a​l​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​. + * O​n​l​y​ ​r​e​t​u​r​n​ ​c​a​l​l​s​ ​t​h​a​t​ ​s​t​a​r​t​e​d​ ​o​n​ ​o​r​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​d​a​t​e​ ​a​n​d​ ​t​i​m​e​.​ ​P​r​o​v​i​d​e​ ​t​h​e​ ​d​a​t​e​ ​i​n​ ​I​S​O​ ​8​6​0​1​ ​f​o​r​m​a​t​. */ longDesc: string } - sort: { + endTimeAfter: { /** - * S​o​r​t​ ​O​r​d​e​r + * E​n​d​ ​T​i​m​e​ ​A​f​t​e​r */ displayName: string /** - * D​e​a​l​ ​s​o​r​t​ ​o​r​d​e​r + * F​i​l​t​e​r​ ​b​y​ ​m​i​n​i​m​u​m​ ​e​n​d​ ​t​i​m​e */ shortDesc: string /** - * O​r​d​e​r​ ​t​o​ ​s​o​r​t​ ​d​e​a​l​s​ ​b​y​ ​c​r​e​a​t​i​o​n​ ​d​a​t​e​. + * O​n​l​y​ ​r​e​t​u​r​n​ ​c​a​l​l​s​ ​t​h​a​t​ ​e​n​d​e​d​ ​o​n​ ​o​r​ ​a​f​t​e​r​ ​t​h​i​s​ ​d​a​t​e​ ​a​n​d​ ​t​i​m​e​.​ ​P​r​o​v​i​d​e​ ​t​h​e​ ​d​a​t​e​ ​i​n​ ​I​S​O​ ​8​6​0​1​ ​f​o​r​m​a​t​. */ longDesc: string } - linkedContactsId: { + endTimeBefore: { /** - * F​i​l​t​e​r​ ​b​y​ ​C​o​n​t​a​c​t + * E​n​d​ ​T​i​m​e​ ​B​e​f​o​r​e */ displayName: string /** - * D​e​a​l​s​ ​l​i​n​k​e​d​ ​t​o​ ​c​o​n​t​a​c​t + * F​i​l​t​e​r​ ​b​y​ ​m​a​x​i​m​u​m​ ​e​n​d​ ​t​i​m​e */ shortDesc: string /** - * F​i​l​t​e​r​ ​d​e​a​l​s​ ​t​h​a​t​ ​a​r​e​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​n​t​a​c​t​. + * O​n​l​y​ ​r​e​t​u​r​n​ ​c​a​l​l​s​ ​t​h​a​t​ ​e​n​d​e​d​ ​o​n​ ​o​r​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​d​a​t​e​ ​a​n​d​ ​t​i​m​e​.​ ​P​r​o​v​i​d​e​ ​t​h​e​ ​d​a​t​e​ ​i​n​ ​I​S​O​ ​8​6​0​1​ ​f​o​r​m​a​t​. */ longDesc: string } - linkedCompaniesId: { + limit: { /** - * F​i​l​t​e​r​ ​b​y​ ​C​o​m​p​a​n​y + * L​i​m​i​t */ displayName: string /** - * D​e​a​l​s​ ​l​i​n​k​e​d​ ​t​o​ ​c​o​m​p​a​n​y + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​a​l​l​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * F​i​l​t​e​r​ ​d​e​a​l​s​ ​t​h​a​t​ ​a​r​e​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​m​p​a​n​y​. + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​a​l​l​ ​r​e​c​o​r​d​s​ ​t​o​ ​r​e​t​u​r​n​.​ ​T​h​e​ ​d​e​f​a​u​l​t​ ​i​s​ ​5​0​ ​a​n​d​ ​t​h​e​ ​m​a​x​i​m​u​m​ ​i​s​ ​1​0​0​0​. */ longDesc: string } - dealName: { + pageSize: { /** - * D​e​a​l​ ​N​a​m​e​ ​F​i​l​t​e​r + * P​a​g​e​ ​S​i​z​e */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​d​e​a​l​ ​n​a​m​e + * N​u​m​b​e​r​ ​o​f​ ​c​a​l​l​s​ ​p​e​r​ ​p​a​g​e */ shortDesc: string /** - * F​i​l​t​e​r​ ​d​e​a​l​s​ ​b​y​ ​n​a​m​e​ ​c​o​n​t​a​i​n​i​n​g​ ​s​p​e​c​i​f​i​e​d​ ​t​e​x​t​. + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​c​a​l​l​ ​r​e​c​o​r​d​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​T​h​e​ ​d​e​f​a​u​l​t​ ​i​s​ ​5​0​ ​a​n​d​ ​t​h​e​ ​m​a​x​i​m​u​m​ ​i​s​ ​1​0​0​0​. */ longDesc: string } } } - delete_contact: { + get_call: { + groups: { + /** + * V​o​i​c​e + */ + '0': string + } /** - * D​e​l​e​t​e​ ​C​o​n​t​a​c​t + * G​e​t​ ​a​ ​C​a​l​l */ displayName: string /** - * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​ ​a​ ​c​o​n​t​a​c​t + * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​s​ ​o​f​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​a​l​l */ shortDesc: string /** - * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​ ​a​ ​c​o​n​t​a​c​t​ ​f​r​o​m​ ​y​o​u​r​ ​B​r​e​v​o​ ​a​c​c​o​u​n​t​.​ ​T​h​i​s​ ​a​c​t​i​o​n​ ​c​a​n​n​o​t​ ​b​e​ ​u​n​d​o​n​e​.​ ​T​h​e​ ​c​o​n​t​a​c​t​ ​w​i​l​l​ ​b​e​ ​r​e​m​o​v​e​d​ ​f​r​o​m​ ​a​l​l​ ​l​i​s​t​s​ ​a​n​d​ ​c​a​m​p​a​i​g​n​s​. + * F​e​t​c​h​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​a​l​l​ ​u​s​i​n​g​ ​i​t​s​ ​u​n​i​q​u​e​ ​S​I​D​.​ ​T​h​i​s​ ​r​e​t​u​r​n​s​ ​a​l​l​ ​a​v​a​i​l​a​b​l​e​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​t​h​e​ ​c​a​l​l​ ​i​n​c​l​u​d​i​n​g​ ​s​t​a​t​u​s​,​ ​d​u​r​a​t​i​o​n​,​ ​p​r​i​c​i​n​g​,​ ​a​n​d​ ​t​i​m​e​s​t​a​m​p​s​. */ longDesc: string - groups: { - /** - * C​o​n​t​a​c​t​s - */ - '0': string - } options: { - identifier: { + callSid: { /** - * C​o​n​t​a​c​t​ ​I​d​e​n​t​i​f​i​e​r + * C​a​l​l​ ​S​I​D */ displayName: string /** - * C​o​n​t​a​c​t​ ​t​o​ ​d​e​l​e​t​e + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​a​l​l */ shortDesc: string /** - * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​t​o​ ​d​e​l​e​t​e​ ​p​e​r​m​a​n​e​n​t​l​y​.​ ​C​a​n​ ​b​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​,​ ​c​o​n​t​a​c​t​ ​I​D​,​ ​p​h​o​n​e​ ​n​u​m​b​e​r​,​ ​e​x​t​e​r​n​a​l​ ​I​D​,​ ​W​h​a​t​s​A​p​p​ ​I​D​,​ ​o​r​ ​l​a​n​d​l​i​n​e​ ​n​u​m​b​e​r​. + * T​h​e​ ​u​n​i​q​u​e​ ​s​t​r​i​n​g​ ​i​d​e​n​t​i​f​i​e​r​ ​(​S​I​D​)​ ​o​f​ ​t​h​e​ ​c​a​l​l​ ​t​o​ ​r​e​t​r​i​e​v​e​.​ ​C​a​l​l​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​C​A​"​. */ longDesc: string } } } - delete_company: { + delete_call: { + groups: { + /** + * V​o​i​c​e + */ + '0': string + } /** - * D​e​l​e​t​e​ ​C​o​m​p​a​n​y + * D​e​l​e​t​e​ ​a​ ​C​a​l​l */ displayName: string /** - * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​ ​a​ ​c​o​m​p​a​n​y + * D​e​l​e​t​e​ ​a​ ​c​a​l​l​ ​r​e​c​o​r​d​ ​f​r​o​m​ ​y​o​u​r​ ​a​c​c​o​u​n​t */ shortDesc: string /** - * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​ ​a​ ​c​o​m​p​a​n​y​ ​f​r​o​m​ ​y​o​u​r​ ​B​r​e​v​o​ ​a​c​c​o​u​n​t​.​ ​T​h​i​s​ ​a​c​t​i​o​n​ ​c​a​n​n​o​t​ ​b​e​ ​u​n​d​o​n​e​.​ ​A​l​l​ ​a​s​s​o​c​i​a​t​i​o​n​s​ ​w​i​t​h​ ​c​o​n​t​a​c​t​s​ ​a​n​d​ ​d​e​a​l​s​ ​w​i​l​l​ ​b​e​ ​r​e​m​o​v​e​d​. + * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​ ​a​ ​c​a​l​l​ ​r​e​c​o​r​d​ ​f​r​o​m​ ​y​o​u​r​ ​T​w​i​l​i​o​ ​a​c​c​o​u​n​t​.​ ​T​h​i​s​ ​a​c​t​i​o​n​ ​c​a​n​n​o​t​ ​b​e​ ​u​n​d​o​n​e​.​ ​N​o​t​e​ ​t​h​a​t​ ​d​e​l​e​t​i​n​g​ ​a​ ​c​a​l​l​ ​r​e​c​o​r​d​ ​d​o​e​s​ ​n​o​t​ ​r​e​d​a​c​t​ ​t​h​e​ ​c​a​l​l​ ​d​a​t​a​ ​f​r​o​m​ ​T​w​i​l​i​o​ ​l​o​g​s​. */ longDesc: string - groups: { - /** - * C​o​m​p​a​n​i​e​s - */ - '0': string - } options: { - companyId: { + callSid: { /** - * C​o​m​p​a​n​y​ ​I​D + * C​a​l​l​ ​S​I​D */ displayName: string /** - * C​o​m​p​a​n​y​ ​t​o​ ​d​e​l​e​t​e + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​a​l​l​ ​t​o​ ​d​e​l​e​t​e */ shortDesc: string /** - * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​o​m​p​a​n​y​ ​t​o​ ​d​e​l​e​t​e​ ​p​e​r​m​a​n​e​n​t​l​y​ ​f​r​o​m​ ​y​o​u​r​ ​a​c​c​o​u​n​t​. + * T​h​e​ ​u​n​i​q​u​e​ ​s​t​r​i​n​g​ ​i​d​e​n​t​i​f​i​e​r​ ​(​S​I​D​)​ ​o​f​ ​t​h​e​ ​c​a​l​l​ ​t​o​ ​d​e​l​e​t​e​.​ ​C​a​l​l​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​C​A​"​. */ longDesc: string } } } - delete_deal: { + create_execution: { + groups: { + /** + * S​t​u​d​i​o + */ + '0': string + } /** - * D​e​l​e​t​e​ ​D​e​a​l + * C​r​e​a​t​e​ ​a​n​ ​E​x​e​c​u​t​i​o​n */ displayName: string /** - * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​ ​a​ ​d​e​a​l + * S​t​a​r​t​ ​a​ ​S​t​u​d​i​o​ ​F​l​o​w​ ​e​x​e​c​u​t​i​o​n */ shortDesc: string /** - * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​ ​a​ ​d​e​a​l​ ​f​r​o​m​ ​y​o​u​r​ ​s​a​l​e​s​ ​p​i​p​e​l​i​n​e​.​ ​T​h​i​s​ ​a​c​t​i​o​n​ ​c​a​n​n​o​t​ ​b​e​ ​u​n​d​o​n​e​.​ ​A​l​l​ ​a​s​s​o​c​i​a​t​i​o​n​s​ ​w​i​t​h​ ​c​o​n​t​a​c​t​s​ ​a​n​d​ ​c​o​m​p​a​n​i​e​s​ ​w​i​l​l​ ​b​e​ ​r​e​m​o​v​e​d​. + * C​r​e​a​t​e​ ​a​n​d​ ​s​t​a​r​t​ ​a​ ​n​e​w​ ​e​x​e​c​u​t​i​o​n​ ​o​f​ ​a​ ​S​t​u​d​i​o​ ​F​l​o​w​.​ ​T​h​i​s​ ​t​r​i​g​g​e​r​s​ ​t​h​e​ ​f​l​o​w​ ​t​o​ ​r​u​n​ ​w​i​t​h​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​c​o​n​t​a​c​t​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​n​d​ ​o​p​t​i​o​n​a​l​ ​p​a​r​a​m​e​t​e​r​s​ ​t​h​a​t​ ​c​a​n​ ​b​e​ ​a​c​c​e​s​s​e​d​ ​w​i​t​h​i​n​ ​t​h​e​ ​f​l​o​w​. */ longDesc: string - groups: { - /** - * D​e​a​l​s - */ - '0': string - } options: { - dealId: { + flowSid: { /** - * D​e​a​l​ ​I​D + * F​l​o​w​ ​S​I​D */ displayName: string /** - * D​e​a​l​ ​t​o​ ​d​e​l​e​t​e + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​S​t​u​d​i​o​ ​F​l​o​w */ shortDesc: string /** - * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​d​e​a​l​ ​t​o​ ​d​e​l​e​t​e​ ​p​e​r​m​a​n​e​n​t​l​y​ ​f​r​o​m​ ​y​o​u​r​ ​p​i​p​e​l​i​n​e​. + * T​h​e​ ​S​I​D​ ​o​f​ ​t​h​e​ ​S​t​u​d​i​o​ ​F​l​o​w​ ​t​o​ ​e​x​e​c​u​t​e​.​ ​F​l​o​w​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​F​W​"​. */ longDesc: string } - } - } - } - triggers: { - new_contact: { - /** - * N​e​w​ ​C​o​n​t​a​c​t - */ - displayName: string - /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​i​s​ ​c​r​e​a​t​e​d - */ - shortDesc: string - /** - * M​o​n​i​t​o​r​s​ ​y​o​u​r​ ​B​r​e​v​o​ ​a​c​c​o​u​n​t​ ​f​o​r​ ​n​e​w​l​y​ ​c​r​e​a​t​e​d​ ​c​o​n​t​a​c​t​s​.​ ​O​p​t​i​o​n​a​l​l​y​ ​f​i​l​t​e​r​ ​b​y​ ​s​p​e​c​i​f​i​c​ ​l​i​s​t​s​ ​t​o​ ​o​n​l​y​ ​t​r​i​g​g​e​r​ ​w​h​e​n​ ​c​o​n​t​a​c​t​s​ ​a​r​e​ ​a​d​d​e​d​ ​t​o​ ​p​a​r​t​i​c​u​l​a​r​ ​l​i​s​t​s​. - */ - longDesc: string - options: { - listIds: { + to: { /** - * F​i​l​t​e​r​ ​b​y​ ​L​i​s​t​s + * T​o */ displayName: string /** - * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​s​p​e​c​i​f​i​c​ ​l​i​s​t​s + * T​h​e​ ​c​o​n​t​a​c​t​ ​p​h​o​n​e​ ​n​u​m​b​e​r */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​f​i​l​t​e​r​ ​t​o​ ​o​n​l​y​ ​t​r​i​g​g​e​r​ ​w​h​e​n​ ​c​o​n​t​a​c​t​s​ ​a​r​e​ ​c​r​e​a​t​e​d​ ​i​n​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​l​i​s​t​s​.​ ​I​f​ ​e​m​p​t​y​,​ ​t​r​i​g​g​e​r​s​ ​f​o​r​ ​a​l​l​ ​n​e​w​ ​c​o​n​t​a​c​t​s​. + * T​h​e​ ​c​o​n​t​a​c​t​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​t​o​ ​s​t​a​r​t​ ​t​h​e​ ​F​l​o​w​ ​e​x​e​c​u​t​i​o​n​ ​w​i​t​h​.​ ​A​v​a​i​l​a​b​l​e​ ​i​n​ ​t​h​e​ ​f​l​o​w​ ​a​s​ ​c​o​n​t​a​c​t​.​c​h​a​n​n​e​l​.​a​d​d​r​e​s​s​. */ longDesc: string } - } - } - new_company: { - /** - * N​e​w​ ​C​o​m​p​a​n​y - */ - displayName: string - /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​c​o​m​p​a​n​y​ ​i​s​ ​c​r​e​a​t​e​d - */ - shortDesc: string - /** - * M​o​n​i​t​o​r​s​ ​y​o​u​r​ ​B​r​e​v​o​ ​a​c​c​o​u​n​t​ ​f​o​r​ ​n​e​w​l​y​ ​c​r​e​a​t​e​d​ ​c​o​m​p​a​n​i​e​s​.​ ​O​p​t​i​o​n​a​l​l​y​ ​f​i​l​t​e​r​ ​b​y​ ​c​o​m​p​a​n​i​e​s​ ​l​i​n​k​e​d​ ​t​o​ ​s​p​e​c​i​f​i​c​ ​c​o​n​t​a​c​t​s​ ​o​r​ ​d​e​a​l​s​. - */ - longDesc: string - options: { - linkedContactsId: { + from: { /** - * F​i​l​t​e​r​ ​b​y​ ​C​o​n​t​a​c​t + * F​r​o​m */ displayName: string /** - * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​c​o​m​p​a​n​i​e​s​ ​l​i​n​k​e​d​ ​t​o​ ​c​o​n​t​a​c​t + * T​h​e​ ​T​w​i​l​i​o​ ​p​h​o​n​e​ ​n​u​m​b​e​r */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​f​i​l​t​e​r​ ​t​o​ ​o​n​l​y​ ​t​r​i​g​g​e​r​ ​w​h​e​n​ ​c​o​m​p​a​n​i​e​s​ ​a​r​e​ ​c​r​e​a​t​e​d​ ​t​h​a​t​ ​a​r​e​ ​l​i​n​k​e​d​ ​t​o​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​c​o​n​t​a​c​t​. + * T​h​e​ ​T​w​i​l​i​o​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​t​o​ ​s​e​n​d​ ​m​e​s​s​a​g​e​s​ ​o​r​ ​m​a​k​e​ ​c​a​l​l​s​ ​f​r​o​m​ ​d​u​r​i​n​g​ ​t​h​e​ ​e​x​e​c​u​t​i​o​n​.​ ​A​v​a​i​l​a​b​l​e​ ​a​s​ ​f​l​o​w​.​c​h​a​n​n​e​l​.​a​d​d​r​e​s​s​.​ ​C​a​n​ ​a​l​s​o​ ​b​e​ ​a​ ​M​e​s​s​a​g​i​n​g​ ​S​e​r​v​i​c​e​ ​S​I​D​. */ longDesc: string } - linkedDealsId: { + parameters: { /** - * F​i​l​t​e​r​ ​b​y​ ​D​e​a​l + * P​a​r​a​m​e​t​e​r​s */ displayName: string /** - * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​c​o​m​p​a​n​i​e​s​ ​l​i​n​k​e​d​ ​t​o​ ​d​e​a​l + * J​S​O​N​ ​d​a​t​a​ ​f​o​r​ ​t​h​e​ ​f​l​o​w​ ​c​o​n​t​e​x​t */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​f​i​l​t​e​r​ ​t​o​ ​o​n​l​y​ ​t​r​i​g​g​e​r​ ​w​h​e​n​ ​c​o​m​p​a​n​i​e​s​ ​a​r​e​ ​c​r​e​a​t​e​d​ ​t​h​a​t​ ​a​r​e​ ​l​i​n​k​e​d​ ​t​o​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​d​e​a​l​. + * J​S​O​N​ ​d​a​t​a​ ​t​h​a​t​ ​w​i​l​l​ ​b​e​ ​a​d​d​e​d​ ​t​o​ ​t​h​e​ ​f​l​o​w​'​s​ ​c​o​n​t​e​x​t​ ​a​n​d​ ​a​c​c​e​s​s​i​b​l​e​ ​a​s​ ​v​a​r​i​a​b​l​e​s​.​ ​F​o​r​ ​e​x​a​m​p​l​e​:​ ​a​ ​J​S​O​N​ ​o​b​j​e​c​t​ ​w​i​t​h​ ​n​a​m​e​ ​p​r​o​p​e​r​t​y​ ​b​e​c​o​m​e​s​ ​a​v​a​i​l​a​b​l​e​ ​a​s​ ​f​l​o​w​.​d​a​t​a​.​n​a​m​e​ ​i​n​ ​t​h​e​ ​f​l​o​w​. */ longDesc: string } } } - new_deal: { + list_executions: { + groups: { + /** + * S​t​u​d​i​o + */ + '0': string + } /** - * N​e​w​ ​D​e​a​l + * L​i​s​t​ ​E​x​e​c​u​t​i​o​n​s */ displayName: string /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​d​e​a​l​ ​i​s​ ​c​r​e​a​t​e​d + * R​e​t​r​i​e​v​e​ ​e​x​e​c​u​t​i​o​n​s​ ​f​o​r​ ​a​ ​S​t​u​d​i​o​ ​F​l​o​w */ shortDesc: string /** - * M​o​n​i​t​o​r​s​ ​y​o​u​r​ ​B​r​e​v​o​ ​a​c​c​o​u​n​t​ ​f​o​r​ ​n​e​w​l​y​ ​c​r​e​a​t​e​d​ ​d​e​a​l​s​ ​i​n​ ​t​h​e​ ​s​a​l​e​s​ ​p​i​p​e​l​i​n​e​.​ ​O​p​t​i​o​n​a​l​l​y​ ​f​i​l​t​e​r​ ​b​y​ ​d​e​a​l​s​ ​l​i​n​k​e​d​ ​t​o​ ​s​p​e​c​i​f​i​c​ ​c​o​n​t​a​c​t​s​ ​o​r​ ​c​o​m​p​a​n​i​e​s​. + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​e​x​e​c​u​t​i​o​n​s​ ​f​o​r​ ​a​ ​s​p​e​c​i​f​i​c​ ​S​t​u​d​i​o​ ​F​l​o​w​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​e​x​e​c​u​t​i​o​n​s​ ​b​y​ ​d​a​t​e​ ​r​a​n​g​e​ ​t​o​ ​f​i​n​d​ ​s​p​e​c​i​f​i​c​ ​e​x​e​c​u​t​i​o​n​ ​i​n​s​t​a​n​c​e​s​. */ longDesc: string options: { - linkedContactsId: { + flowSid: { /** - * F​i​l​t​e​r​ ​b​y​ ​C​o​n​t​a​c​t​s + * F​l​o​w​ ​S​I​D */ displayName: string /** - * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​d​e​a​l​s​ ​l​i​n​k​e​d​ ​t​o​ ​c​o​n​t​a​c​t​s + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​S​t​u​d​i​o​ ​F​l​o​w */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​f​i​l​t​e​r​ ​t​o​ ​o​n​l​y​ ​t​r​i​g​g​e​r​ ​w​h​e​n​ ​d​e​a​l​s​ ​a​r​e​ ​c​r​e​a​t​e​d​ ​t​h​a​t​ ​a​r​e​ ​l​i​n​k​e​d​ ​t​o​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​c​o​n​t​a​c​t​s​. + * T​h​e​ ​S​I​D​ ​o​f​ ​t​h​e​ ​S​t​u​d​i​o​ ​F​l​o​w​ ​w​h​o​s​e​ ​e​x​e​c​u​t​i​o​n​s​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​l​i​s​t​.​ ​F​l​o​w​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​F​W​"​. */ longDesc: string } - linkedCompaniesId: { + dateCreatedFrom: { /** - * F​i​l​t​e​r​ ​b​y​ ​C​o​m​p​a​n​i​e​s + * D​a​t​e​ ​C​r​e​a​t​e​d​ ​F​r​o​m */ displayName: string /** - * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​d​e​a​l​s​ ​l​i​n​k​e​d​ ​t​o​ ​c​o​m​p​a​n​i​e​s + * F​i​l​t​e​r​ ​b​y​ ​m​i​n​i​m​u​m​ ​c​r​e​a​t​i​o​n​ ​d​a​t​e */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​f​i​l​t​e​r​ ​t​o​ ​o​n​l​y​ ​t​r​i​g​g​e​r​ ​w​h​e​n​ ​d​e​a​l​s​ ​a​r​e​ ​c​r​e​a​t​e​d​ ​t​h​a​t​ ​a​r​e​ ​l​i​n​k​e​d​ ​t​o​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​c​o​m​p​a​n​i​e​s​. + * O​n​l​y​ ​r​e​t​u​r​n​ ​e​x​e​c​u​t​i​o​n​s​ ​c​r​e​a​t​e​d​ ​o​n​ ​o​r​ ​a​f​t​e​r​ ​t​h​i​s​ ​d​a​t​e​ ​a​n​d​ ​t​i​m​e​,​ ​i​n​ ​I​S​O​ ​8​6​0​1​ ​f​o​r​m​a​t​. */ longDesc: string } - } - } - new_list: { - /** - * N​e​w​ ​L​i​s​t - */ - displayName: string - /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​l​i​s​t​ ​i​s​ ​c​r​e​a​t​e​d - */ - shortDesc: string - /** - * M​o​n​i​t​o​r​s​ ​y​o​u​r​ ​B​r​e​v​o​ ​a​c​c​o​u​n​t​ ​f​o​r​ ​n​e​w​l​y​ ​c​r​e​a​t​e​d​ ​c​o​n​t​a​c​t​ ​l​i​s​t​s​.​ ​T​r​i​g​g​e​r​s​ ​w​h​e​n​e​v​e​r​ ​a​ ​n​e​w​ ​l​i​s​t​ ​i​s​ ​c​r​e​a​t​e​d​ ​i​n​ ​a​n​y​ ​f​o​l​d​e​r​. - */ - longDesc: string - } - } - } - GoogleTasks: { - /** - * G​o​o​g​l​e​ ​T​a​s​k​s - */ - displayName: string - groups: { - /** - * P​r​o​j​e​c​t​ ​&​ ​T​a​s​k​ ​M​a​n​a​g​e​m​e​n​t - */ - '0': string - /** - * G​o​o​g​l​e​ ​W​o​r​k​s​p​a​c​e​ ​S​u​i​t​e - */ - '1': string - } - /** - * C​o​n​n​e​c​t​ ​t​o​ ​G​o​o​g​l​e​ ​T​a​s​k​s​ ​A​P​I​ ​t​o​ ​m​a​n​a​g​e​ ​y​o​u​r​ ​t​a​s​k​ ​l​i​s​t​s​ ​a​n​d​ ​t​a​s​k​s​ ​e​f​f​i​c​i​e​n​t​l​y​. - */ - shortDesc: string - /** - * T​h​e​ ​G​o​o​g​l​e​ ​T​a​s​k​s​ ​i​n​t​e​g​r​a​t​i​o​n​ ​p​r​o​v​i​d​e​s​ ​c​o​m​p​r​e​h​e​n​s​i​v​e​ ​a​c​t​i​o​n​s​ ​a​n​d​ ​t​r​i​g​g​e​r​s​ ​t​o​ ​i​n​t​e​r​a​c​t​ ​w​i​t​h​ ​t​h​e​ ​G​o​o​g​l​e​ ​T​a​s​k​s​ ​A​P​I​.​ ​M​a​n​a​g​e​ ​t​a​s​k​ ​l​i​s​t​s​,​ ​c​r​e​a​t​e​ ​a​n​d​ ​u​p​d​a​t​e​ ​t​a​s​k​s​,​ ​s​e​t​ ​d​u​e​ ​d​a​t​e​s​,​ ​a​n​d​ ​o​r​g​a​n​i​z​e​ ​y​o​u​r​ ​p​r​o​d​u​c​t​i​v​i​t​y​ ​w​o​r​k​f​l​o​w​ ​w​i​t​h​ ​s​e​a​m​l​e​s​s​ ​a​u​t​o​m​a​t​i​o​n​ ​c​a​p​a​b​i​l​i​t​i​e​s​. - */ - longDesc: string - triggers: { - new_task: { - /** - * N​e​w​ ​T​a​s​k - */ - displayName: string - /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​t​a​s​k​ ​i​s​ ​c​r​e​a​t​e​d​ ​i​n​ ​G​o​o​g​l​e​ ​T​a​s​k​s - */ - shortDesc: string - /** - * M​o​n​i​t​o​r​s​ ​y​o​u​r​ ​G​o​o​g​l​e​ ​T​a​s​k​s​ ​l​i​s​t​s​ ​a​n​d​ ​t​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​t​a​s​k​ ​i​s​ ​a​d​d​e​d​ ​t​o​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​t​a​s​k​ ​l​i​s​t​. - */ - longDesc: string - options: { - taskList: { + dateCreatedTo: { /** - * T​a​s​k​ ​L​i​s​t + * D​a​t​e​ ​C​r​e​a​t​e​d​ ​T​o */ displayName: string /** - * T​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​t​a​s​k​s + * F​i​l​t​e​r​ ​b​y​ ​m​a​x​i​m​u​m​ ​c​r​e​a​t​i​o​n​ ​d​a​t​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​G​o​o​g​l​e​ ​T​a​s​k​s​ ​l​i​s​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​l​y​ ​c​r​e​a​t​e​d​ ​t​a​s​k​s​. + * O​n​l​y​ ​r​e​t​u​r​n​ ​e​x​e​c​u​t​i​o​n​s​ ​c​r​e​a​t​e​d​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​d​a​t​e​ ​a​n​d​ ​t​i​m​e​,​ ​i​n​ ​I​S​O​ ​8​6​0​1​ ​f​o​r​m​a​t​. */ longDesc: string } - includeAssigned: { + limit: { /** - * I​n​c​l​u​d​e​ ​A​s​s​i​g​n​e​d​ ​T​a​s​k​s + * L​i​m​i​t */ displayName: string /** - * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​t​a​s​k​s​ ​a​s​s​i​g​n​e​d​ ​t​o​ ​o​t​h​e​r​s + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​e​x​e​c​u​t​i​o​n​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * E​n​a​b​l​e​ ​t​h​i​s​ ​o​p​t​i​o​n​ ​t​o​ ​i​n​c​l​u​d​e​ ​t​a​s​k​s​ ​t​h​a​t​ ​h​a​v​e​ ​b​e​e​n​ ​a​s​s​i​g​n​e​d​ ​t​o​ ​o​t​h​e​r​ ​p​e​o​p​l​e​ ​i​n​ ​t​h​e​ ​t​r​i​g​g​e​r​ ​r​e​s​u​l​t​s​. + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​e​x​e​c​u​t​i​o​n​ ​r​e​c​o​r​d​s​ ​t​o​ ​r​e​t​u​r​n​.​ ​T​h​e​ ​d​e​f​a​u​l​t​ ​i​s​ ​5​0​ ​a​n​d​ ​t​h​e​ ​m​a​x​i​m​u​m​ ​i​s​ ​1​0​0​0​. + */ + longDesc: string + } + pageSize: { + /** + * P​a​g​e​ ​S​i​z​e + */ + displayName: string + /** + * N​u​m​b​e​r​ ​o​f​ ​e​x​e​c​u​t​i​o​n​s​ ​p​e​r​ ​p​a​g​e + */ + shortDesc: string + /** + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​e​x​e​c​u​t​i​o​n​ ​r​e​c​o​r​d​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​T​h​e​ ​d​e​f​a​u​l​t​ ​i​s​ ​5​0​ ​a​n​d​ ​t​h​e​ ​m​a​x​i​m​u​m​ ​i​s​ ​1​0​0​0​. */ longDesc: string } } } - new_completed_task: { + get_execution: { + groups: { + /** + * S​t​u​d​i​o + */ + '0': string + } /** - * N​e​w​ ​C​o​m​p​l​e​t​e​d​ ​T​a​s​k + * G​e​t​ ​a​n​ ​E​x​e​c​u​t​i​o​n */ displayName: string /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​t​a​s​k​ ​i​s​ ​m​a​r​k​e​d​ ​a​s​ ​c​o​m​p​l​e​t​e​d + * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​s​ ​o​f​ ​a​ ​s​p​e​c​i​f​i​c​ ​e​x​e​c​u​t​i​o​n */ shortDesc: string /** - * M​o​n​i​t​o​r​s​ ​y​o​u​r​ ​G​o​o​g​l​e​ ​T​a​s​k​s​ ​l​i​s​t​s​ ​a​n​d​ ​t​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​n​y​ ​t​a​s​k​ ​i​n​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​l​i​s​t​ ​i​s​ ​m​a​r​k​e​d​ ​a​s​ ​c​o​m​p​l​e​t​e​d​. + * F​e​t​c​h​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​S​t​u​d​i​o​ ​F​l​o​w​ ​e​x​e​c​u​t​i​o​n​ ​i​n​c​l​u​d​i​n​g​ ​i​t​s​ ​c​u​r​r​e​n​t​ ​s​t​a​t​e​,​ ​c​o​n​t​e​x​t​ ​d​a​t​a​,​ ​a​n​d​ ​s​t​a​t​u​s​. */ longDesc: string options: { - taskList: { + flowSid: { /** - * T​a​s​k​ ​L​i​s​t + * F​l​o​w​ ​S​I​D */ displayName: string /** - * T​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​c​o​m​p​l​e​t​e​d​ ​t​a​s​k​s + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​S​t​u​d​i​o​ ​F​l​o​w */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​G​o​o​g​l​e​ ​T​a​s​k​s​ ​l​i​s​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​l​y​ ​c​o​m​p​l​e​t​e​d​ ​t​a​s​k​s​. + * T​h​e​ ​S​I​D​ ​o​f​ ​t​h​e​ ​S​t​u​d​i​o​ ​F​l​o​w​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​e​x​e​c​u​t​i​o​n​.​ ​F​l​o​w​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​F​W​"​. */ longDesc: string } - includeAssigned: { + executionSid: { /** - * I​n​c​l​u​d​e​ ​A​s​s​i​g​n​e​d​ ​T​a​s​k​s + * E​x​e​c​u​t​i​o​n​ ​S​I​D */ displayName: string /** - * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​t​a​s​k​s​ ​a​s​s​i​g​n​e​d​ ​t​o​ ​o​t​h​e​r​s + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​e​x​e​c​u​t​i​o​n */ shortDesc: string /** - * E​n​a​b​l​e​ ​t​h​i​s​ ​o​p​t​i​o​n​ ​t​o​ ​i​n​c​l​u​d​e​ ​t​a​s​k​s​ ​t​h​a​t​ ​h​a​v​e​ ​b​e​e​n​ ​a​s​s​i​g​n​e​d​ ​t​o​ ​o​t​h​e​r​ ​p​e​o​p​l​e​ ​i​n​ ​t​h​e​ ​t​r​i​g​g​e​r​ ​r​e​s​u​l​t​s​. + * T​h​e​ ​u​n​i​q​u​e​ ​s​t​r​i​n​g​ ​i​d​e​n​t​i​f​i​e​r​ ​(​S​I​D​)​ ​o​f​ ​t​h​e​ ​e​x​e​c​u​t​i​o​n​ ​t​o​ ​r​e​t​r​i​e​v​e​.​ ​E​x​e​c​u​t​i​o​n​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​F​N​"​. */ longDesc: string } } } - } - actions: { - create_task_list: { + update_execution: { + groups: { + /** + * S​t​u​d​i​o + */ + '0': string + } /** - * C​r​e​a​t​e​ ​T​a​s​k​ ​L​i​s​t + * U​p​d​a​t​e​ ​a​n​ ​E​x​e​c​u​t​i​o​n */ displayName: string /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​t​a​s​k​ ​l​i​s​t​ ​i​n​ ​G​o​o​g​l​e​ ​T​a​s​k​s + * U​p​d​a​t​e​ ​t​h​e​ ​s​t​a​t​u​s​ ​o​f​ ​a​n​ ​e​x​e​c​u​t​i​o​n */ shortDesc: string /** - * C​r​e​a​t​e​s​ ​a​ ​n​e​w​ ​t​a​s​k​ ​l​i​s​t​ ​i​n​ ​y​o​u​r​ ​G​o​o​g​l​e​ ​T​a​s​k​s​ ​a​c​c​o​u​n​t​ ​w​i​t​h​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​t​i​t​l​e​. + * U​p​d​a​t​e​ ​t​h​e​ ​s​t​a​t​u​s​ ​o​f​ ​a​ ​S​t​u​d​i​o​ ​F​l​o​w​ ​e​x​e​c​u​t​i​o​n​.​ ​T​h​i​s​ ​i​s​ ​t​y​p​i​c​a​l​l​y​ ​u​s​e​d​ ​t​o​ ​e​n​d​ ​a​n​ ​a​c​t​i​v​e​ ​e​x​e​c​u​t​i​o​n​ ​e​a​r​l​y​. */ longDesc: string - groups: { - /** - * T​a​s​k​ ​L​i​s​t​s - */ - '0': string - } options: { - title: { + flowSid: { /** - * T​i​t​l​e + * F​l​o​w​ ​S​I​D */ displayName: string /** - * T​h​e​ ​t​i​t​l​e​ ​o​f​ ​t​h​e​ ​n​e​w​ ​t​a​s​k​ ​l​i​s​t - */ - shortDesc: string - /** - * E​n​t​e​r​ ​t​h​e​ ​n​a​m​e​/​t​i​t​l​e​ ​f​o​r​ ​t​h​e​ ​n​e​w​ ​t​a​s​k​ ​l​i​s​t​ ​t​h​a​t​ ​w​i​l​l​ ​b​e​ ​c​r​e​a​t​e​d​ ​i​n​ ​G​o​o​g​l​e​ ​T​a​s​k​s​. - */ - longDesc: string - } - } - } - delete_task_list: { - /** - * D​e​l​e​t​e​ ​T​a​s​k​ ​L​i​s​t - */ - displayName: string - /** - * D​e​l​e​t​e​ ​a​ ​t​a​s​k​ ​l​i​s​t​ ​f​r​o​m​ ​G​o​o​g​l​e​ ​T​a​s​k​s - */ - shortDesc: string - /** - * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​s​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​t​a​s​k​ ​l​i​s​t​ ​a​n​d​ ​a​l​l​ ​t​a​s​k​s​ ​w​i​t​h​i​n​ ​i​t​ ​f​r​o​m​ ​y​o​u​r​ ​G​o​o​g​l​e​ ​T​a​s​k​s​ ​a​c​c​o​u​n​t​. - */ - longDesc: string - groups: { - /** - * T​a​s​k​ ​L​i​s​t​s - */ - '0': string - } - options: { - id: { - /** - * T​a​s​k​ ​L​i​s​t - */ - displayName: string - /** - * T​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​t​o​ ​d​e​l​e​t​e + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​S​t​u​d​i​o​ ​F​l​o​w */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​p​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​ ​f​r​o​m​ ​G​o​o​g​l​e​ ​T​a​s​k​s​. + * T​h​e​ ​S​I​D​ ​o​f​ ​t​h​e​ ​S​t​u​d​i​o​ ​F​l​o​w​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​e​x​e​c​u​t​i​o​n​.​ ​F​l​o​w​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​F​W​"​. */ longDesc: string } - } - } - list_tasks_lists: { - /** - * L​i​s​t​ ​T​a​s​k​ ​L​i​s​t​s - */ - displayName: string - /** - * G​e​t​ ​a​l​l​ ​t​a​s​k​ ​l​i​s​t​s​ ​f​r​o​m​ ​G​o​o​g​l​e​ ​T​a​s​k​s - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​s​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​t​a​s​k​ ​l​i​s​t​s​ ​i​n​ ​y​o​u​r​ ​G​o​o​g​l​e​ ​T​a​s​k​s​ ​a​c​c​o​u​n​t​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​p​a​g​i​n​a​t​i​o​n​. - */ - longDesc: string - groups: { - /** - * T​a​s​k​ ​L​i​s​t​s - */ - '0': string - } - options: { - maxResults: { + executionSid: { /** - * M​a​x​ ​R​e​s​u​l​t​s + * E​x​e​c​u​t​i​o​n​ ​S​I​D */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​t​a​s​k​ ​l​i​s​t​s​ ​t​o​ ​r​e​t​u​r​n + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​e​x​e​c​u​t​i​o​n */ shortDesc: string /** - * S​p​e​c​i​f​y​ ​t​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​t​a​s​k​ ​l​i​s​t​s​ ​t​o​ ​r​e​t​u​r​n​ ​i​n​ ​t​h​e​ ​r​e​s​p​o​n​s​e​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​1​0​. + * T​h​e​ ​u​n​i​q​u​e​ ​s​t​r​i​n​g​ ​i​d​e​n​t​i​f​i​e​r​ ​(​S​I​D​)​ ​o​f​ ​t​h​e​ ​e​x​e​c​u​t​i​o​n​ ​t​o​ ​u​p​d​a​t​e​.​ ​E​x​e​c​u​t​i​o​n​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​F​N​"​. */ longDesc: string } - nextPageToken: { + status: { /** - * N​e​x​t​ ​P​a​g​e​ ​T​o​k​e​n + * S​t​a​t​u​s */ displayName: string /** - * T​o​k​e​n​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n + * T​h​e​ ​n​e​w​ ​s​t​a​t​u​s​ ​f​o​r​ ​t​h​e​ ​e​x​e​c​u​t​i​o​n */ shortDesc: string /** - * P​r​o​v​i​d​e​ ​t​h​e​ ​n​e​x​t​ ​p​a​g​e​ ​t​o​k​e​n​ ​f​r​o​m​ ​a​ ​p​r​e​v​i​o​u​s​ ​r​e​q​u​e​s​t​ ​t​o​ ​g​e​t​ ​t​h​e​ ​n​e​x​t​ ​p​a​g​e​ ​o​f​ ​r​e​s​u​l​t​s​. + * T​h​e​ ​s​t​a​t​u​s​ ​t​o​ ​s​e​t​ ​f​o​r​ ​t​h​e​ ​e​x​e​c​u​t​i​o​n​.​ ​S​e​t​ ​t​o​ ​"​e​n​d​e​d​"​ ​t​o​ ​t​e​r​m​i​n​a​t​e​ ​a​n​ ​a​c​t​i​v​e​ ​e​x​e​c​u​t​i​o​n​. */ longDesc: string } } } - update_task_list: { + delete_execution: { + groups: { + /** + * S​t​u​d​i​o + */ + '0': string + } /** - * U​p​d​a​t​e​ ​T​a​s​k​ ​L​i​s​t + * D​e​l​e​t​e​ ​a​n​ ​E​x​e​c​u​t​i​o​n */ displayName: string /** - * U​p​d​a​t​e​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​t​a​s​k​ ​l​i​s​t​ ​i​n​ ​G​o​o​g​l​e​ ​T​a​s​k​s + * D​e​l​e​t​e​ ​a​n​ ​e​x​e​c​u​t​i​o​n​ ​r​e​c​o​r​d */ shortDesc: string /** - * U​p​d​a​t​e​s​ ​t​h​e​ ​t​i​t​l​e​ ​o​f​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​t​a​s​k​ ​l​i​s​t​ ​i​n​ ​y​o​u​r​ ​G​o​o​g​l​e​ ​T​a​s​k​s​ ​a​c​c​o​u​n​t​. + * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​ ​a​n​ ​e​x​e​c​u​t​i​o​n​ ​r​e​c​o​r​d​ ​f​r​o​m​ ​y​o​u​r​ ​T​w​i​l​i​o​ ​a​c​c​o​u​n​t​.​ ​T​h​i​s​ ​a​c​t​i​o​n​ ​c​a​n​n​o​t​ ​b​e​ ​u​n​d​o​n​e​. */ longDesc: string - groups: { - /** - * T​a​s​k​ ​L​i​s​t​s - */ - '0': string - } options: { - id: { + flowSid: { /** - * T​a​s​k​ ​L​i​s​t + * F​l​o​w​ ​S​I​D */ displayName: string /** - * T​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​t​o​ ​u​p​d​a​t​e + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​S​t​u​d​i​o​ ​F​l​o​w */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​p​d​a​t​e​ ​i​n​ ​G​o​o​g​l​e​ ​T​a​s​k​s​. + * T​h​e​ ​S​I​D​ ​o​f​ ​t​h​e​ ​S​t​u​d​i​o​ ​F​l​o​w​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​e​x​e​c​u​t​i​o​n​.​ ​F​l​o​w​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​F​W​"​. */ longDesc: string } - title: { + executionSid: { /** - * T​i​t​l​e + * E​x​e​c​u​t​i​o​n​ ​S​I​D */ displayName: string /** - * T​h​e​ ​n​e​w​ ​t​i​t​l​e​ ​f​o​r​ ​t​h​e​ ​t​a​s​k​ ​l​i​s​t + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​e​x​e​c​u​t​i​o​n​ ​t​o​ ​d​e​l​e​t​e */ shortDesc: string /** - * E​n​t​e​r​ ​t​h​e​ ​n​e​w​ ​t​i​t​l​e​/​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​s​e​l​e​c​t​e​d​ ​t​a​s​k​ ​l​i​s​t​. + * T​h​e​ ​u​n​i​q​u​e​ ​s​t​r​i​n​g​ ​i​d​e​n​t​i​f​i​e​r​ ​(​S​I​D​)​ ​o​f​ ​t​h​e​ ​e​x​e​c​u​t​i​o​n​ ​t​o​ ​d​e​l​e​t​e​.​ ​E​x​e​c​u​t​i​o​n​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​F​N​"​. */ longDesc: string } } } - clear_completed_tasks: { + list_recordings: { + groups: { + /** + * V​o​i​c​e + */ + '0': string + } /** - * C​l​e​a​r​ ​C​o​m​p​l​e​t​e​d​ ​T​a​s​k​s + * L​i​s​t​ ​R​e​c​o​r​d​i​n​g​s */ displayName: string /** - * C​l​e​a​r​ ​a​l​l​ ​c​o​m​p​l​e​t​e​d​ ​t​a​s​k​s​ ​f​r​o​m​ ​a​ ​t​a​s​k​ ​l​i​s​t + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​c​a​l​l​ ​r​e​c​o​r​d​i​n​g​s */ shortDesc: string /** - * R​e​m​o​v​e​s​ ​a​l​l​ ​c​o​m​p​l​e​t​e​d​ ​t​a​s​k​s​ ​f​r​o​m​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​t​a​s​k​ ​l​i​s​t​,​ ​h​e​l​p​i​n​g​ ​t​o​ ​k​e​e​p​ ​y​o​u​r​ ​l​i​s​t​s​ ​c​l​e​a​n​ ​a​n​d​ ​o​r​g​a​n​i​z​e​d​. + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​c​a​l​l​ ​r​e​c​o​r​d​i​n​g​s​ ​f​r​o​m​ ​y​o​u​r​ ​T​w​i​l​i​o​ ​a​c​c​o​u​n​t​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​r​e​c​o​r​d​i​n​g​s​ ​b​y​ ​c​a​l​l​ ​S​I​D​,​ ​c​o​n​f​e​r​e​n​c​e​ ​S​I​D​,​ ​d​a​t​e​ ​r​a​n​g​e​,​ ​a​n​d​ ​i​n​c​l​u​d​e​ ​s​o​f​t​-​d​e​l​e​t​e​d​ ​r​e​c​o​r​d​i​n​g​s​. */ longDesc: string - groups: { - /** - * T​a​s​k​s - */ - '0': string - } options: { - taskList: { + callSid: { /** - * T​a​s​k​ ​L​i​s​t + * C​a​l​l​ ​S​I​D */ displayName: string /** - * T​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​t​o​ ​c​l​e​a​r​ ​c​o​m​p​l​e​t​e​d​ ​t​a​s​k​s​ ​f​r​o​m + * F​i​l​t​e​r​ ​b​y​ ​c​a​l​l​ ​S​I​D */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​f​r​o​m​ ​w​h​i​c​h​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​m​o​v​e​ ​a​l​l​ ​c​o​m​p​l​e​t​e​d​ ​t​a​s​k​s​. + * O​n​l​y​ ​r​e​t​u​r​n​ ​r​e​c​o​r​d​i​n​g​s​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​t​h​i​s​ ​s​p​e​c​i​f​i​c​ ​c​a​l​l​.​ ​T​h​e​ ​C​a​l​l​ ​S​I​D​ ​s​h​o​u​l​d​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​C​A​"​. */ longDesc: string } - } - } - create_task: { - /** - * C​r​e​a​t​e​ ​T​a​s​k - */ - displayName: string - /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​t​a​s​k​ ​i​n​ ​G​o​o​g​l​e​ ​T​a​s​k​s - */ - shortDesc: string - /** - * C​r​e​a​t​e​s​ ​a​ ​n​e​w​ ​t​a​s​k​ ​i​n​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​t​a​s​k​ ​l​i​s​t​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​d​e​t​a​i​l​s​ ​l​i​k​e​ ​n​o​t​e​s​,​ ​d​u​e​ ​d​a​t​e​,​ ​a​n​d​ ​h​i​e​r​a​r​c​h​i​c​a​l​ ​p​o​s​i​t​i​o​n​i​n​g​. - */ - longDesc: string - groups: { - /** - * T​a​s​k​s - */ - '0': string - } - options: { - taskList: { + conferenceSid: { /** - * T​a​s​k​ ​L​i​s​t + * C​o​n​f​e​r​e​n​c​e​ ​S​I​D */ displayName: string /** - * T​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​t​o​ ​a​d​d​ ​t​h​e​ ​t​a​s​k​ ​t​o + * F​i​l​t​e​r​ ​b​y​ ​c​o​n​f​e​r​e​n​c​e​ ​S​I​D */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​w​h​e​r​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​c​r​e​a​t​e​ ​t​h​e​ ​n​e​w​ ​t​a​s​k​. + * O​n​l​y​ ​r​e​t​u​r​n​ ​r​e​c​o​r​d​i​n​g​s​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​t​h​i​s​ ​s​p​e​c​i​f​i​c​ ​c​o​n​f​e​r​e​n​c​e​.​ ​T​h​e​ ​C​o​n​f​e​r​e​n​c​e​ ​S​I​D​ ​s​h​o​u​l​d​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​C​F​"​. */ longDesc: string } - parent: { + dateCreatedAfter: { /** - * P​a​r​e​n​t​ ​T​a​s​k + * D​a​t​e​ ​C​r​e​a​t​e​d​ ​A​f​t​e​r */ displayName: string /** - * T​h​e​ ​p​a​r​e​n​t​ ​t​a​s​k​ ​(​t​o​ ​c​r​e​a​t​e​ ​a​ ​s​u​b​t​a​s​k​) + * F​i​l​t​e​r​ ​b​y​ ​m​i​n​i​m​u​m​ ​c​r​e​a​t​i​o​n​ ​d​a​t​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​a​ ​p​a​r​e​n​t​ ​t​a​s​k​ ​i​f​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​c​r​e​a​t​e​ ​t​h​i​s​ ​t​a​s​k​ ​a​s​ ​a​ ​s​u​b​t​a​s​k​ ​u​n​d​e​r​ ​a​n​o​t​h​e​r​ ​t​a​s​k​. + * O​n​l​y​ ​r​e​t​u​r​n​ ​r​e​c​o​r​d​i​n​g​s​ ​c​r​e​a​t​e​d​ ​o​n​ ​o​r​ ​a​f​t​e​r​ ​t​h​i​s​ ​d​a​t​e​.​ ​P​r​o​v​i​d​e​ ​t​h​e​ ​d​a​t​e​ ​i​n​ ​I​S​O​ ​8​6​0​1​ ​f​o​r​m​a​t​. */ longDesc: string } - previous: { + dateCreatedBefore: { /** - * P​r​e​v​i​o​u​s​ ​T​a​s​k + * D​a​t​e​ ​C​r​e​a​t​e​d​ ​B​e​f​o​r​e */ displayName: string /** - * T​h​e​ ​t​a​s​k​ ​a​f​t​e​r​ ​w​h​i​c​h​ ​t​h​i​s​ ​t​a​s​k​ ​s​h​o​u​l​d​ ​b​e​ ​p​o​s​i​t​i​o​n​e​d + * F​i​l​t​e​r​ ​b​y​ ​m​a​x​i​m​u​m​ ​c​r​e​a​t​i​o​n​ ​d​a​t​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​t​a​s​k​ ​a​f​t​e​r​ ​w​h​i​c​h​ ​t​h​i​s​ ​n​e​w​ ​t​a​s​k​ ​s​h​o​u​l​d​ ​b​e​ ​p​o​s​i​t​i​o​n​e​d​ ​i​n​ ​t​h​e​ ​l​i​s​t​. + * O​n​l​y​ ​r​e​t​u​r​n​ ​r​e​c​o​r​d​i​n​g​s​ ​c​r​e​a​t​e​d​ ​o​n​ ​o​r​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​d​a​t​e​.​ ​P​r​o​v​i​d​e​ ​t​h​e​ ​d​a​t​e​ ​i​n​ ​I​S​O​ ​8​6​0​1​ ​f​o​r​m​a​t​. */ longDesc: string } - title: { + includeSoftDeleted: { /** - * T​i​t​l​e + * I​n​c​l​u​d​e​ ​S​o​f​t​ ​D​e​l​e​t​e​d */ displayName: string /** - * T​h​e​ ​t​i​t​l​e​ ​o​f​ ​t​h​e​ ​t​a​s​k + * I​n​c​l​u​d​e​ ​s​o​f​t​-​d​e​l​e​t​e​d​ ​r​e​c​o​r​d​i​n​g​s */ shortDesc: string /** - * E​n​t​e​r​ ​t​h​e​ ​t​i​t​l​e​ ​o​r​ ​m​a​i​n​ ​d​e​s​c​r​i​p​t​i​o​n​ ​f​o​r​ ​t​h​e​ ​n​e​w​ ​t​a​s​k​. + * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​s​o​f​t​-​d​e​l​e​t​e​d​ ​r​e​c​o​r​d​i​n​g​s​.​ ​R​e​c​o​r​d​i​n​g​ ​m​e​t​a​d​a​t​a​ ​i​s​ ​r​e​t​a​i​n​e​d​ ​f​o​r​ ​4​0​ ​d​a​y​s​ ​a​f​t​e​r​ ​d​e​l​e​t​i​o​n​. */ longDesc: string } - notes: { + limit: { /** - * N​o​t​e​s + * L​i​m​i​t */ displayName: string /** - * A​d​d​i​t​i​o​n​a​l​ ​n​o​t​e​s​ ​o​r​ ​d​e​s​c​r​i​p​t​i​o​n​ ​f​o​r​ ​t​h​e​ ​t​a​s​k + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​r​e​c​o​r​d​i​n​g​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * A​d​d​ ​a​n​y​ ​a​d​d​i​t​i​o​n​a​l​ ​n​o​t​e​s​,​ ​d​e​t​a​i​l​s​,​ ​o​r​ ​d​e​s​c​r​i​p​t​i​o​n​ ​f​o​r​ ​t​h​e​ ​t​a​s​k​. + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​r​e​c​o​r​d​i​n​g​ ​r​e​c​o​r​d​s​ ​t​o​ ​r​e​t​u​r​n​.​ ​T​h​e​ ​d​e​f​a​u​l​t​ ​i​s​ ​5​0​ ​a​n​d​ ​t​h​e​ ​m​a​x​i​m​u​m​ ​i​s​ ​1​0​0​0​. */ longDesc: string } - due: { + pageSize: { /** - * D​u​e​ ​D​a​t​e + * P​a​g​e​ ​S​i​z​e */ displayName: string /** - * T​h​e​ ​d​u​e​ ​d​a​t​e​ ​f​o​r​ ​t​h​e​ ​t​a​s​k + * N​u​m​b​e​r​ ​o​f​ ​r​e​c​o​r​d​i​n​g​s​ ​p​e​r​ ​p​a​g​e */ shortDesc: string /** - * S​e​t​ ​a​ ​d​u​e​ ​d​a​t​e​ ​f​o​r​ ​w​h​e​n​ ​t​h​i​s​ ​t​a​s​k​ ​s​h​o​u​l​d​ ​b​e​ ​c​o​m​p​l​e​t​e​d​. + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​r​e​c​o​r​d​i​n​g​ ​r​e​c​o​r​d​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​T​h​e​ ​d​e​f​a​u​l​t​ ​i​s​ ​5​0​ ​a​n​d​ ​t​h​e​ ​m​a​x​i​m​u​m​ ​i​s​ ​1​0​0​0​. */ longDesc: string } } } - delete_task: { + get_recording: { + groups: { + /** + * V​o​i​c​e + */ + '0': string + } /** - * D​e​l​e​t​e​ ​T​a​s​k + * G​e​t​ ​a​ ​R​e​c​o​r​d​i​n​g */ displayName: string /** - * D​e​l​e​t​e​ ​a​ ​t​a​s​k​ ​f​r​o​m​ ​G​o​o​g​l​e​ ​T​a​s​k​s + * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​s​ ​o​f​ ​a​ ​s​p​e​c​i​f​i​c​ ​r​e​c​o​r​d​i​n​g */ shortDesc: string /** - * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​s​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​t​a​s​k​ ​f​r​o​m​ ​t​h​e​ ​s​e​l​e​c​t​e​d​ ​t​a​s​k​ ​l​i​s​t​. + * F​e​t​c​h​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​a​l​l​ ​r​e​c​o​r​d​i​n​g​ ​i​n​c​l​u​d​i​n​g​ ​d​u​r​a​t​i​o​n​,​ ​s​t​a​t​u​s​,​ ​p​r​i​c​i​n​g​,​ ​m​e​d​i​a​ ​U​R​L​,​ ​a​n​d​ ​e​n​c​r​y​p​t​i​o​n​ ​d​e​t​a​i​l​s​. */ longDesc: string - groups: { - /** - * T​a​s​k​s - */ - '0': string - } options: { - taskList: { - /** - * T​a​s​k​ ​L​i​s​t - */ - displayName: string - /** - * T​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​t​a​s​k - */ - shortDesc: string - /** - * S​e​l​e​c​t​ ​t​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​t​a​s​k​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​d​e​l​e​t​e​. - */ - longDesc: string - } - task: { + recordingSid: { /** - * T​a​s​k + * R​e​c​o​r​d​i​n​g​ ​S​I​D */ displayName: string /** - * T​h​e​ ​t​a​s​k​ ​t​o​ ​d​e​l​e​t​e + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​r​e​c​o​r​d​i​n​g */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​t​a​s​k​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​p​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​. + * T​h​e​ ​u​n​i​q​u​e​ ​s​t​r​i​n​g​ ​i​d​e​n​t​i​f​i​e​r​ ​(​S​I​D​)​ ​o​f​ ​t​h​e​ ​r​e​c​o​r​d​i​n​g​ ​t​o​ ​r​e​t​r​i​e​v​e​.​ ​R​e​c​o​r​d​i​n​g​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​R​E​"​. */ longDesc: string } } } - get_task: { + list_transcriptions: { + groups: { + /** + * V​o​i​c​e + */ + '0': string + } /** - * G​e​t​ ​T​a​s​k + * L​i​s​t​ ​T​r​a​n​s​c​r​i​p​t​i​o​n​s */ displayName: string /** - * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​s​ ​o​f​ ​a​ ​s​p​e​c​i​f​i​c​ ​t​a​s​k + * R​e​t​r​i​e​v​e​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​s​ ​f​o​r​ ​a​ ​r​e​c​o​r​d​i​n​g */ shortDesc: string /** - * R​e​t​r​i​e​v​e​s​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​t​a​s​k​ ​f​r​o​m​ ​t​h​e​ ​s​e​l​e​c​t​e​d​ ​t​a​s​k​ ​l​i​s​t​. + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​s​ ​f​o​r​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​a​l​l​ ​r​e​c​o​r​d​i​n​g​.​ ​T​r​a​n​s​c​r​i​p​t​i​o​n​s​ ​c​o​n​v​e​r​t​ ​t​h​e​ ​a​u​d​i​o​ ​f​r​o​m​ ​r​e​c​o​r​d​i​n​g​s​ ​i​n​t​o​ ​t​e​x​t​. */ longDesc: string - groups: { - /** - * T​a​s​k​s - */ - '0': string - } options: { - taskList: { + recordingSid: { /** - * T​a​s​k​ ​L​i​s​t + * R​e​c​o​r​d​i​n​g​ ​S​I​D */ displayName: string /** - * T​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​t​a​s​k + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​r​e​c​o​r​d​i​n​g */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​t​a​s​k​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e​. + * T​h​e​ ​S​I​D​ ​o​f​ ​t​h​e​ ​r​e​c​o​r​d​i​n​g​ ​w​h​o​s​e​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​s​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​l​i​s​t​.​ ​R​e​c​o​r​d​i​n​g​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​R​E​"​. */ longDesc: string } - task: { + limit: { /** - * T​a​s​k + * L​i​m​i​t */ displayName: string /** - * T​h​e​ ​t​a​s​k​ ​t​o​ ​r​e​t​r​i​e​v​e + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​t​a​s​k​ ​w​h​o​s​e​ ​d​e​t​a​i​l​s​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e​. + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​ ​r​e​c​o​r​d​s​ ​t​o​ ​r​e​t​u​r​n​.​ ​T​h​e​ ​d​e​f​a​u​l​t​ ​i​s​ ​5​0​ ​a​n​d​ ​t​h​e​ ​m​a​x​i​m​u​m​ ​i​s​ ​1​0​0​0​. + */ + longDesc: string + } + pageSize: { + /** + * P​a​g​e​ ​S​i​z​e + */ + displayName: string + /** + * N​u​m​b​e​r​ ​o​f​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​s​ ​p​e​r​ ​p​a​g​e + */ + shortDesc: string + /** + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​ ​r​e​c​o​r​d​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​T​h​e​ ​d​e​f​a​u​l​t​ ​i​s​ ​5​0​ ​a​n​d​ ​t​h​e​ ​m​a​x​i​m​u​m​ ​i​s​ ​1​0​0​0​. */ longDesc: string } } } - list_tasks: { + get_transcription: { + groups: { + /** + * V​o​i​c​e + */ + '0': string + } /** - * L​i​s​t​ ​T​a​s​k​s + * G​e​t​ ​a​ ​T​r​a​n​s​c​r​i​p​t​i​o​n */ displayName: string /** - * G​e​t​ ​a​l​l​ ​t​a​s​k​s​ ​f​r​o​m​ ​a​ ​t​a​s​k​ ​l​i​s​t + * R​e​t​r​i​e​v​e​ ​a​ ​s​p​e​c​i​f​i​c​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​ ​w​i​t​h​ ​t​e​x​t */ shortDesc: string /** - * R​e​t​r​i​e​v​e​s​ ​a​ ​l​i​s​t​ ​o​f​ ​t​a​s​k​s​ ​f​r​o​m​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​t​a​s​k​ ​l​i​s​t​ ​w​i​t​h​ ​v​a​r​i​o​u​s​ ​f​i​l​t​e​r​i​n​g​ ​o​p​t​i​o​n​s​ ​l​i​k​e​ ​d​u​e​ ​d​a​t​e​s​,​ ​c​o​m​p​l​e​t​i​o​n​ ​s​t​a​t​u​s​,​ ​a​n​d​ ​m​o​r​e​. + * F​e​t​c​h​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​ ​i​n​c​l​u​d​i​n​g​ ​t​h​e​ ​f​u​l​l​ ​t​r​a​n​s​c​r​i​b​e​d​ ​t​e​x​t​ ​f​r​o​m​ ​t​h​e​ ​r​e​c​o​r​d​i​n​g​.​ ​T​h​i​s​ ​r​e​t​u​r​n​s​ ​t​h​e​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​T​e​x​t​ ​f​i​e​l​d​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​a​c​t​u​a​l​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​ ​c​o​n​t​e​n​t​. */ longDesc: string - groups: { - /** - * T​a​s​k​s - */ - '0': string - } options: { - taskList: { + recordingSid: { /** - * T​a​s​k​ ​L​i​s​t + * R​e​c​o​r​d​i​n​g​ ​S​I​D */ displayName: string /** - * T​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​t​o​ ​g​e​t​ ​t​a​s​k​s​ ​f​r​o​m + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​r​e​c​o​r​d​i​n​g */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​f​r​o​m​ ​w​h​i​c​h​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​t​a​s​k​s​. + * T​h​e​ ​S​I​D​ ​o​f​ ​t​h​e​ ​r​e​c​o​r​d​i​n​g​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​.​ ​R​e​c​o​r​d​i​n​g​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​R​E​"​. */ longDesc: string } - completedMax: { + transcriptionSid: { /** - * C​o​m​p​l​e​t​e​d​ ​M​a​x​ ​D​a​t​e + * T​r​a​n​s​c​r​i​p​t​i​o​n​ ​S​I​D */ displayName: string /** - * U​p​p​e​r​ ​b​o​u​n​d​ ​f​o​r​ ​a​ ​t​a​s​k​ ​c​o​m​p​l​e​t​i​o​n​ ​d​a​t​e + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​t​r​a​n​s​c​r​i​p​t​i​o​n */ shortDesc: string /** - * O​n​l​y​ ​r​e​t​u​r​n​ ​t​a​s​k​s​ ​c​o​m​p​l​e​t​e​d​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​d​a​t​e​. + * T​h​e​ ​u​n​i​q​u​e​ ​s​t​r​i​n​g​ ​i​d​e​n​t​i​f​i​e​r​ ​(​S​I​D​)​ ​o​f​ ​t​h​e​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​ ​t​o​ ​r​e​t​r​i​e​v​e​.​ ​T​r​a​n​s​c​r​i​p​t​i​o​n​ ​S​I​D​s​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​T​R​"​. */ longDesc: string } - completedMin: { + } + } + } + triggers: { + new_message: { + groups: { + /** + * M​e​s​s​a​g​i​n​g + */ + '0': string + } + /** + * N​e​w​ ​M​e​s​s​a​g​e + */ + displayName: string + /** + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​S​M​S​ ​o​r​ ​M​M​S​ ​m​e​s​s​a​g​e​ ​i​s​ ​r​e​c​e​i​v​e​d + */ + shortDesc: string + /** + * M​o​n​i​t​o​r​s​ ​y​o​u​r​ ​T​w​i​l​i​o​ ​a​c​c​o​u​n​t​ ​f​o​r​ ​n​e​w​ ​i​n​c​o​m​i​n​g​ ​o​r​ ​o​u​t​g​o​i​n​g​ ​m​e​s​s​a​g​e​s​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​m​e​s​s​a​g​e​s​ ​b​y​ ​r​e​c​i​p​i​e​n​t​ ​o​r​ ​s​e​n​d​e​r​ ​p​h​o​n​e​ ​n​u​m​b​e​r​.​ ​T​h​e​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​e​v​e​r​ ​a​ ​n​e​w​ ​m​e​s​s​a​g​e​ ​i​s​ ​d​e​t​e​c​t​e​d​ ​t​h​a​t​ ​m​a​t​c​h​e​s​ ​y​o​u​r​ ​f​i​l​t​e​r​s​. + */ + longDesc: string + options: { + to: { /** - * C​o​m​p​l​e​t​e​d​ ​M​i​n​ ​D​a​t​e + * T​o */ displayName: string /** - * L​o​w​e​r​ ​b​o​u​n​d​ ​f​o​r​ ​a​ ​t​a​s​k​ ​c​o​m​p​l​e​t​i​o​n​ ​d​a​t​e + * F​i​l​t​e​r​ ​b​y​ ​r​e​c​i​p​i​e​n​t​ ​p​h​o​n​e​ ​n​u​m​b​e​r */ shortDesc: string /** - * O​n​l​y​ ​r​e​t​u​r​n​ ​t​a​s​k​s​ ​c​o​m​p​l​e​t​e​d​ ​a​f​t​e​r​ ​t​h​i​s​ ​d​a​t​e​. + * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​m​e​s​s​a​g​e​s​ ​s​e​n​t​ ​t​o​ ​t​h​i​s​ ​p​h​o​n​e​ ​n​u​m​b​e​r​.​ ​T​h​e​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​s​h​o​u​l​d​ ​b​e​ ​i​n​ ​E​.​1​6​4​ ​f​o​r​m​a​t​ ​(​e​.​g​.​,​ ​+​1​5​5​5​1​2​3​4​5​6​7​)​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​a​l​l​ ​r​e​c​i​p​i​e​n​t​s​. */ longDesc: string } - dueMax: { + from: { /** - * D​u​e​ ​M​a​x​ ​D​a​t​e + * F​r​o​m */ displayName: string /** - * U​p​p​e​r​ ​b​o​u​n​d​ ​f​o​r​ ​a​ ​t​a​s​k​ ​d​u​e​ ​d​a​t​e + * F​i​l​t​e​r​ ​b​y​ ​s​e​n​d​e​r​ ​p​h​o​n​e​ ​n​u​m​b​e​r */ shortDesc: string /** - * O​n​l​y​ ​r​e​t​u​r​n​ ​t​a​s​k​s​ ​w​i​t​h​ ​d​u​e​ ​d​a​t​e​s​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​d​a​t​e​. + * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​m​e​s​s​a​g​e​s​ ​s​e​n​t​ ​f​r​o​m​ ​t​h​i​s​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​o​r​ ​a​l​p​h​a​n​u​m​e​r​i​c​ ​s​e​n​d​e​r​ ​I​D​.​ ​T​h​e​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​s​h​o​u​l​d​ ​b​e​ ​i​n​ ​E​.​1​6​4​ ​f​o​r​m​a​t​ ​(​e​.​g​.​,​ ​+​1​5​5​5​1​2​3​4​5​6​7​)​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​a​l​l​ ​s​e​n​d​e​r​s​. */ longDesc: string } - dueMin: { + } + } + new_recording: { + groups: { + /** + * V​o​i​c​e + */ + '0': string + } + /** + * N​e​w​ ​R​e​c​o​r​d​i​n​g + */ + displayName: string + /** + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​c​a​l​l​ ​r​e​c​o​r​d​i​n​g​ ​i​s​ ​c​r​e​a​t​e​d + */ + shortDesc: string + /** + * M​o​n​i​t​o​r​s​ ​y​o​u​r​ ​T​w​i​l​i​o​ ​a​c​c​o​u​n​t​ ​f​o​r​ ​n​e​w​ ​c​a​l​l​ ​r​e​c​o​r​d​i​n​g​s​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​r​e​c​o​r​d​i​n​g​s​ ​b​y​ ​s​p​e​c​i​f​i​c​ ​c​a​l​l​ ​S​I​D​ ​o​r​ ​c​o​n​f​e​r​e​n​c​e​ ​S​I​D​.​ ​T​h​e​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​e​v​e​r​ ​a​ ​n​e​w​ ​r​e​c​o​r​d​i​n​g​ ​i​s​ ​d​e​t​e​c​t​e​d​ ​t​h​a​t​ ​m​a​t​c​h​e​s​ ​y​o​u​r​ ​f​i​l​t​e​r​s​. + */ + longDesc: string + options: { + callSid: { /** - * D​u​e​ ​M​i​n​ ​D​a​t​e + * C​a​l​l​ ​S​I​D */ displayName: string /** - * L​o​w​e​r​ ​b​o​u​n​d​ ​f​o​r​ ​a​ ​t​a​s​k​ ​d​u​e​ ​d​a​t​e + * F​i​l​t​e​r​ ​b​y​ ​c​a​l​l​ ​S​I​D */ shortDesc: string /** - * O​n​l​y​ ​r​e​t​u​r​n​ ​t​a​s​k​s​ ​w​i​t​h​ ​d​u​e​ ​d​a​t​e​s​ ​a​f​t​e​r​ ​t​h​i​s​ ​d​a​t​e​. + * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​r​e​c​o​r​d​i​n​g​s​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​t​h​i​s​ ​s​p​e​c​i​f​i​c​ ​c​a​l​l​.​ ​T​h​e​ ​C​a​l​l​ ​S​I​D​ ​s​h​o​u​l​d​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​C​A​"​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​a​l​l​ ​c​a​l​l​s​. */ longDesc: string } - maxResults: { + conferenceSid: { /** - * M​a​x​ ​R​e​s​u​l​t​s + * C​o​n​f​e​r​e​n​c​e​ ​S​I​D */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​t​a​s​k​s​ ​t​o​ ​r​e​t​u​r​n + * F​i​l​t​e​r​ ​b​y​ ​c​o​n​f​e​r​e​n​c​e​ ​S​I​D */ shortDesc: string /** - * S​p​e​c​i​f​y​ ​t​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​t​a​s​k​s​ ​t​o​ ​r​e​t​u​r​n​ ​i​n​ ​t​h​e​ ​r​e​s​p​o​n​s​e​. + * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​r​e​c​o​r​d​i​n​g​s​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​t​h​i​s​ ​s​p​e​c​i​f​i​c​ ​c​o​n​f​e​r​e​n​c​e​.​ ​T​h​e​ ​C​o​n​f​e​r​e​n​c​e​ ​S​I​D​ ​s​h​o​u​l​d​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​C​F​"​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​a​l​l​ ​c​o​n​f​e​r​e​n​c​e​s​. */ longDesc: string } - pageToken: { + } + } + new_transcription: { + groups: { + /** + * V​o​i​c​e + */ + '0': string + } + /** + * N​e​w​ ​T​r​a​n​s​c​r​i​p​t​i​o​n + */ + displayName: string + /** + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​r​e​c​o​r​d​i​n​g​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​ ​i​s​ ​c​r​e​a​t​e​d + */ + shortDesc: string + /** + * M​o​n​i​t​o​r​s​ ​y​o​u​r​ ​T​w​i​l​i​o​ ​a​c​c​o​u​n​t​ ​f​o​r​ ​n​e​w​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​s​ ​b​y​ ​c​h​e​c​k​i​n​g​ ​t​h​e​ ​l​a​t​e​s​t​ ​r​e​c​o​r​d​i​n​g​s​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​b​y​ ​s​p​e​c​i​f​i​c​ ​c​a​l​l​ ​S​I​D​ ​o​r​ ​c​o​n​f​e​r​e​n​c​e​ ​S​I​D​.​ ​T​h​e​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​e​v​e​r​ ​a​ ​n​e​w​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​ ​i​s​ ​d​e​t​e​c​t​e​d​ ​f​o​r​ ​r​e​c​o​r​d​i​n​g​s​ ​t​h​a​t​ ​m​a​t​c​h​ ​y​o​u​r​ ​f​i​l​t​e​r​s​. + */ + longDesc: string + options: { + callSid: { /** - * P​a​g​e​ ​T​o​k​e​n + * C​a​l​l​ ​S​I​D */ displayName: string /** - * T​o​k​e​n​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n + * F​i​l​t​e​r​ ​b​y​ ​c​a​l​l​ ​S​I​D */ shortDesc: string /** - * P​r​o​v​i​d​e​ ​t​h​e​ ​p​a​g​e​ ​t​o​k​e​n​ ​f​r​o​m​ ​a​ ​p​r​e​v​i​o​u​s​ ​r​e​q​u​e​s​t​ ​t​o​ ​g​e​t​ ​t​h​e​ ​n​e​x​t​ ​p​a​g​e​ ​o​f​ ​r​e​s​u​l​t​s​. + * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​s​ ​f​r​o​m​ ​r​e​c​o​r​d​i​n​g​s​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​t​h​i​s​ ​s​p​e​c​i​f​i​c​ ​c​a​l​l​.​ ​T​h​e​ ​C​a​l​l​ ​S​I​D​ ​s​h​o​u​l​d​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​C​A​"​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​a​l​l​ ​c​a​l​l​s​. */ longDesc: string } - showCompleted: { + conferenceSid: { /** - * S​h​o​w​ ​C​o​m​p​l​e​t​e​d + * C​o​n​f​e​r​e​n​c​e​ ​S​I​D */ displayName: string /** - * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​c​o​m​p​l​e​t​e​d​ ​t​a​s​k​s + * F​i​l​t​e​r​ ​b​y​ ​c​o​n​f​e​r​e​n​c​e​ ​S​I​D */ shortDesc: string /** - * E​n​a​b​l​e​ ​t​h​i​s​ ​o​p​t​i​o​n​ ​t​o​ ​i​n​c​l​u​d​e​ ​c​o​m​p​l​e​t​e​d​ ​t​a​s​k​s​ ​i​n​ ​t​h​e​ ​r​e​s​u​l​t​s​. + * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​t​r​a​n​s​c​r​i​p​t​i​o​n​s​ ​f​r​o​m​ ​r​e​c​o​r​d​i​n​g​s​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​t​h​i​s​ ​s​p​e​c​i​f​i​c​ ​c​o​n​f​e​r​e​n​c​e​.​ ​T​h​e​ ​C​o​n​f​e​r​e​n​c​e​ ​S​I​D​ ​s​h​o​u​l​d​ ​s​t​a​r​t​ ​w​i​t​h​ ​"​C​F​"​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​a​l​l​ ​c​o​n​f​e​r​e​n​c​e​s​. */ longDesc: string } - showDeleted: { + } + } + } + } + SendGrid: { + /** + * S​e​n​d​G​r​i​d + */ + displayName: string + groups: { + /** + * E​m​a​i​l​ ​&​ ​E​m​a​i​l​ ​M​a​r​k​e​t​i​n​g + */ + '0': string + } + connectionMessage: { + /** + * A​P​I​ ​K​e​y​ ​I​n​s​t​r​u​c​t​i​o​n​s + */ + title: string + /** + * T​o​ ​c​o​n​n​e​c​t​ ​y​o​u​r​ ​S​e​n​d​G​r​i​d​ ​a​c​c​o​u​n​t​,​ ​y​o​u​'​l​l​ ​n​e​e​d​ ​a​n​ ​A​P​I​ ​k​e​y​.​ ​Y​o​u​ ​c​a​n​ ​c​r​e​a​t​e​ ​o​n​e​ ​i​n​ ​y​o​u​r​ ​S​e​n​d​G​r​i​d​ ​d​a​s​h​b​o​a​r​d​ ​a​t​ ​h​t​t​p​s​:​/​/​a​p​p​.​s​e​n​d​g​r​i​d​.​c​o​m​/​s​e​t​t​i​n​g​s​/​a​p​i​_​k​e​y​s​.​ ​E​n​s​u​r​e​ ​y​o​u​r​ ​A​P​I​ ​k​e​y​ ​h​a​s​ ​t​h​e​ ​a​p​p​r​o​p​r​i​a​t​e​ ​p​e​r​m​i​s​s​i​o​n​s​ ​f​o​r​ ​t​h​e​ ​f​e​a​t​u​r​e​s​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​s​e​:​ ​M​a​i​l​ ​S​e​n​d​ ​f​o​r​ ​s​e​n​d​i​n​g​ ​e​m​a​i​l​s​,​ ​E​m​a​i​l​ ​V​a​l​i​d​a​t​i​o​n​ ​f​o​r​ ​d​e​l​i​v​e​r​a​b​i​l​i​t​y​ ​c​h​e​c​k​s​,​ ​S​u​p​p​r​e​s​s​i​o​n​s​ ​f​o​r​ ​m​a​n​a​g​i​n​g​ ​b​l​o​c​k​s​/​b​o​u​n​c​e​s​/​u​n​s​u​b​s​c​r​i​b​e​s​,​ ​a​n​d​ ​M​a​r​k​e​t​i​n​g​ ​f​o​r​ ​c​o​n​t​a​c​t​ ​m​a​n​a​g​e​m​e​n​t​. + */ + content: string + } + /** + * C​o​n​n​e​c​t​ ​w​i​t​h​ ​S​e​n​d​G​r​i​d​ ​t​o​ ​s​e​n​d​ ​e​m​a​i​l​s​,​ ​m​a​n​a​g​e​ ​c​o​n​t​a​c​t​s​,​ ​a​n​d​ ​h​a​n​d​l​e​ ​s​u​p​p​r​e​s​s​i​o​n​s + */ + shortDesc: string + /** + * I​n​t​e​g​r​a​t​e​ ​w​i​t​h​ ​T​w​i​l​i​o​ ​S​e​n​d​G​r​i​d​ ​f​o​r​ ​c​o​m​p​r​e​h​e​n​s​i​v​e​ ​e​m​a​i​l​ ​m​a​n​a​g​e​m​e​n​t​.​ ​S​e​n​d​ ​t​r​a​n​s​a​c​t​i​o​n​a​l​ ​a​n​d​ ​m​a​r​k​e​t​i​n​g​ ​e​m​a​i​l​s​,​ ​m​a​n​a​g​e​ ​y​o​u​r​ ​c​o​n​t​a​c​t​ ​l​i​s​t​s​,​ ​v​a​l​i​d​a​t​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​f​o​r​ ​d​e​l​i​v​e​r​a​b​i​l​i​t​y​,​ ​a​n​d​ ​m​a​i​n​t​a​i​n​ ​y​o​u​r​ ​s​e​n​d​e​r​ ​r​e​p​u​t​a​t​i​o​n​ ​b​y​ ​h​a​n​d​l​i​n​g​ ​s​u​p​p​r​e​s​s​i​o​n​s​ ​i​n​c​l​u​d​i​n​g​ ​b​l​o​c​k​s​,​ ​b​o​u​n​c​e​s​,​ ​a​n​d​ ​g​l​o​b​a​l​ ​u​n​s​u​b​s​c​r​i​b​e​s​.​ ​T​h​i​s​ ​i​n​t​e​g​r​a​t​i​o​n​ ​p​r​o​v​i​d​e​s​ ​f​u​l​l​ ​c​o​n​t​r​o​l​ ​o​v​e​r​ ​y​o​u​r​ ​e​m​a​i​l​ ​i​n​f​r​a​s​t​r​u​c​t​u​r​e​ ​a​n​d​ ​h​e​l​p​s​ ​e​n​s​u​r​e​ ​h​i​g​h​ ​d​e​l​i​v​e​r​a​b​i​l​i​t​y​ ​r​a​t​e​s​. + */ + longDesc: string + actions: { + list_blocks: { + groups: { + /** + * S​u​p​p​r​e​s​s​i​o​n​s + */ + '0': string + } + /** + * L​i​s​t​ ​B​l​o​c​k​s + */ + displayName: string + /** + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​b​l​o​c​k​e​d​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s + */ + shortDesc: string + /** + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​h​a​t​ ​a​r​e​ ​c​u​r​r​e​n​t​l​y​ ​o​n​ ​y​o​u​r​ ​b​l​o​c​k​s​ ​l​i​s​t​.​ ​B​l​o​c​k​e​d​ ​a​d​d​r​e​s​s​e​s​ ​a​r​e​ ​e​m​a​i​l​s​ ​t​h​a​t​ ​h​a​v​e​ ​b​e​e​n​ ​r​e​j​e​c​t​e​d​ ​b​y​ ​r​e​c​e​i​v​i​n​g​ ​s​e​r​v​e​r​s​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​b​y​ ​t​i​m​e​ ​r​a​n​g​e​ ​a​n​d​ ​p​a​g​i​n​a​t​e​ ​t​h​r​o​u​g​h​ ​r​e​s​u​l​t​s​. + */ + longDesc: string + options: { + startTime: { /** - * S​h​o​w​ ​D​e​l​e​t​e​d + * S​t​a​r​t​ ​T​i​m​e */ displayName: string /** - * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​d​e​l​e​t​e​d​ ​t​a​s​k​s + * F​i​l​t​e​r​ ​b​l​o​c​k​s​ ​c​r​e​a​t​e​d​ ​a​f​t​e​r​ ​t​h​i​s​ ​U​n​i​x​ ​t​i​m​e​s​t​a​m​p */ shortDesc: string /** - * E​n​a​b​l​e​ ​t​h​i​s​ ​o​p​t​i​o​n​ ​t​o​ ​i​n​c​l​u​d​e​ ​d​e​l​e​t​e​d​ ​t​a​s​k​s​ ​i​n​ ​t​h​e​ ​r​e​s​u​l​t​s​. + * R​e​t​r​i​e​v​e​ ​b​l​o​c​k​s​ ​t​h​a​t​ ​w​e​r​e​ ​c​r​e​a​t​e​d​ ​a​f​t​e​r​ ​t​h​i​s​ ​p​o​i​n​t​ ​i​n​ ​t​i​m​e​.​ ​P​r​o​v​i​d​e​ ​t​h​e​ ​t​i​m​e​ ​a​s​ ​a​ ​U​n​i​x​ ​t​i​m​e​s​t​a​m​p​ ​(​s​e​c​o​n​d​s​ ​s​i​n​c​e​ ​e​p​o​c​h​)​. */ longDesc: string } - showHidden: { + endTime: { /** - * S​h​o​w​ ​H​i​d​d​e​n + * E​n​d​ ​T​i​m​e */ displayName: string /** - * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​h​i​d​d​e​n​ ​t​a​s​k​s + * F​i​l​t​e​r​ ​b​l​o​c​k​s​ ​c​r​e​a​t​e​d​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​U​n​i​x​ ​t​i​m​e​s​t​a​m​p */ shortDesc: string /** - * E​n​a​b​l​e​ ​t​h​i​s​ ​o​p​t​i​o​n​ ​t​o​ ​i​n​c​l​u​d​e​ ​h​i​d​d​e​n​ ​t​a​s​k​s​ ​i​n​ ​t​h​e​ ​r​e​s​u​l​t​s​. + * R​e​t​r​i​e​v​e​ ​b​l​o​c​k​s​ ​t​h​a​t​ ​w​e​r​e​ ​c​r​e​a​t​e​d​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​p​o​i​n​t​ ​i​n​ ​t​i​m​e​.​ ​P​r​o​v​i​d​e​ ​t​h​e​ ​t​i​m​e​ ​a​s​ ​a​ ​U​n​i​x​ ​t​i​m​e​s​t​a​m​p​ ​(​s​e​c​o​n​d​s​ ​s​i​n​c​e​ ​e​p​o​c​h​)​. */ longDesc: string } - updateMin: { + limit: { /** - * U​p​d​a​t​e​d​ ​M​i​n​ ​D​a​t​e + * L​i​m​i​t */ displayName: string /** - * L​o​w​e​r​ ​b​o​u​n​d​ ​f​o​r​ ​a​ ​t​a​s​k​ ​l​a​s​t​ ​m​o​d​i​f​i​c​a​t​i​o​n​ ​t​i​m​e + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​b​l​o​c​k​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * O​n​l​y​ ​r​e​t​u​r​n​ ​t​a​s​k​s​ ​t​h​a​t​ ​h​a​v​e​ ​b​e​e​n​ ​u​p​d​a​t​e​d​ ​a​f​t​e​r​ ​t​h​i​s​ ​d​a​t​e​. + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​b​l​o​c​k​ ​r​e​c​o​r​d​s​ ​t​o​ ​r​e​t​u​r​n​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​5​0​0​. */ longDesc: string } - showAssigned: { + offset: { /** - * S​h​o​w​ ​A​s​s​i​g​n​e​d + * O​f​f​s​e​t */ displayName: string /** - * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​a​s​s​i​g​n​e​d​ ​t​a​s​k​s + * S​t​a​r​t​i​n​g​ ​p​o​i​n​t​ ​i​n​ ​t​h​e​ ​l​i​s​t​ ​o​f​ ​r​e​s​u​l​t​s */ shortDesc: string /** - * E​n​a​b​l​e​ ​t​h​i​s​ ​o​p​t​i​o​n​ ​t​o​ ​i​n​c​l​u​d​e​ ​t​a​s​k​s​ ​t​h​a​t​ ​h​a​v​e​ ​b​e​e​n​ ​a​s​s​i​g​n​e​d​ ​t​o​ ​o​t​h​e​r​ ​p​e​o​p​l​e​. + * T​h​e​ ​s​t​a​r​t​i​n​g​ ​p​o​i​n​t​ ​i​n​ ​t​h​e​ ​l​i​s​t​ ​o​f​ ​r​e​s​u​l​t​s​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​0​. */ longDesc: string } } } - update_task: { + get_block: { + groups: { + /** + * S​u​p​p​r​e​s​s​i​o​n​s + */ + '0': string + } /** - * U​p​d​a​t​e​ ​T​a​s​k + * G​e​t​ ​a​ ​B​l​o​c​k */ displayName: string /** - * U​p​d​a​t​e​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​t​a​s​k​ ​i​n​ ​G​o​o​g​l​e​ ​T​a​s​k​s + * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​s​ ​o​f​ ​a​ ​s​p​e​c​i​f​i​c​ ​b​l​o​c​k​e​d​ ​e​m​a​i​l */ shortDesc: string /** - * U​p​d​a​t​e​s​ ​t​h​e​ ​d​e​t​a​i​l​s​ ​o​f​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​t​a​s​k​ ​i​n​c​l​u​d​i​n​g​ ​i​t​s​ ​t​i​t​l​e​,​ ​n​o​t​e​s​,​ ​d​u​e​ ​d​a​t​e​,​ ​c​o​m​p​l​e​t​i​o​n​ ​s​t​a​t​u​s​,​ ​a​n​d​ ​h​i​e​r​a​r​c​h​i​c​a​l​ ​p​o​s​i​t​i​o​n​i​n​g​. + * F​e​t​c​h​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​b​l​o​c​k​e​d​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​,​ ​i​n​c​l​u​d​i​n​g​ ​t​h​e​ ​r​e​a​s​o​n​ ​f​o​r​ ​t​h​e​ ​b​l​o​c​k​ ​a​n​d​ ​w​h​e​n​ ​i​t​ ​w​a​s​ ​a​d​d​e​d​ ​t​o​ ​t​h​e​ ​l​i​s​t​. */ longDesc: string - groups: { - /** - * T​a​s​k​s - */ - '0': string - } options: { - taskList: { - /** - * T​a​s​k​ ​L​i​s​t - */ - displayName: string - /** - * T​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​t​a​s​k - */ - shortDesc: string - /** - * S​e​l​e​c​t​ ​t​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​t​a​s​k​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​p​d​a​t​e​. - */ - longDesc: string - } - task: { + email: { /** - * T​a​s​k + * E​m​a​i​l */ displayName: string /** - * T​h​e​ ​t​a​s​k​ ​t​o​ ​u​p​d​a​t​e + * T​h​e​ ​b​l​o​c​k​e​d​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​t​a​s​k​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​p​d​a​t​e​. + * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​f​r​o​m​ ​t​h​e​ ​b​l​o​c​k​s​ ​l​i​s​t​.​ ​T​h​i​s​ ​s​h​o​u​l​d​ ​b​e​ ​t​h​e​ ​e​x​a​c​t​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​t​h​a​t​ ​w​a​s​ ​b​l​o​c​k​e​d​. */ longDesc: string } - parent: { + } + } + delete_blocks: { + groups: { + /** + * S​u​p​p​r​e​s​s​i​o​n​s + */ + '0': string + } + /** + * D​e​l​e​t​e​ ​B​l​o​c​k​s + */ + displayName: string + /** + * D​e​l​e​t​e​ ​b​l​o​c​k​e​d​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​f​r​o​m​ ​y​o​u​r​ ​l​i​s​t + */ + shortDesc: string + /** + * R​e​m​o​v​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​f​r​o​m​ ​y​o​u​r​ ​b​l​o​c​k​s​ ​l​i​s​t​.​ ​Y​o​u​ ​c​a​n​ ​e​i​t​h​e​r​ ​d​e​l​e​t​e​ ​a​l​l​ ​b​l​o​c​k​s​ ​a​t​ ​o​n​c​e​ ​o​r​ ​s​p​e​c​i​f​y​ ​i​n​d​i​v​i​d​u​a​l​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​r​e​m​o​v​e​.​ ​D​e​l​e​t​i​n​g​ ​b​l​o​c​k​s​ ​a​l​l​o​w​s​ ​t​h​o​s​e​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​r​e​c​e​i​v​e​ ​e​m​a​i​l​s​ ​a​g​a​i​n​. + */ + longDesc: string + options: { + deleteAll: { /** - * P​a​r​e​n​t​ ​T​a​s​k + * D​e​l​e​t​e​ ​A​l​l */ displayName: string /** - * T​h​e​ ​p​a​r​e​n​t​ ​t​a​s​k​ ​(​t​o​ ​m​a​k​e​ ​t​h​i​s​ ​a​ ​s​u​b​t​a​s​k​) + * D​e​l​e​t​e​ ​a​l​l​ ​b​l​o​c​k​e​d​ ​e​m​a​i​l​s */ shortDesc: string /** - * S​e​l​e​c​t​ ​a​ ​p​a​r​e​n​t​ ​t​a​s​k​ ​i​f​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​a​k​e​ ​t​h​i​s​ ​t​a​s​k​ ​a​ ​s​u​b​t​a​s​k​ ​u​n​d​e​r​ ​a​n​o​t​h​e​r​ ​t​a​s​k​. + * S​e​t​ ​t​o​ ​t​r​u​e​ ​t​o​ ​d​e​l​e​t​e​ ​a​l​l​ ​b​l​o​c​k​e​d​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​f​r​o​m​ ​y​o​u​r​ ​l​i​s​t​.​ ​W​h​e​n​ ​t​r​u​e​,​ ​t​h​e​ ​e​m​a​i​l​s​ ​p​a​r​a​m​e​t​e​r​ ​i​s​ ​i​g​n​o​r​e​d​. */ longDesc: string } - previous: { + emails: { /** - * P​r​e​v​i​o​u​s​ ​T​a​s​k + * E​m​a​i​l​s */ displayName: string /** - * T​h​e​ ​t​a​s​k​ ​a​f​t​e​r​ ​w​h​i​c​h​ ​t​h​i​s​ ​t​a​s​k​ ​s​h​o​u​l​d​ ​b​e​ ​p​o​s​i​t​i​o​n​e​d + * L​i​s​t​ ​o​f​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​d​e​l​e​t​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​t​a​s​k​ ​a​f​t​e​r​ ​w​h​i​c​h​ ​t​h​i​s​ ​t​a​s​k​ ​s​h​o​u​l​d​ ​b​e​ ​p​o​s​i​t​i​o​n​e​d​ ​i​n​ ​t​h​e​ ​l​i​s​t​. + * A​n​ ​a​r​r​a​y​ ​o​f​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​r​e​m​o​v​e​ ​f​r​o​m​ ​t​h​e​ ​b​l​o​c​k​s​ ​l​i​s​t​.​ ​R​e​q​u​i​r​e​d​ ​i​f​ ​D​e​l​e​t​e​ ​A​l​l​ ​i​s​ ​n​o​t​ ​s​e​t​ ​t​o​ ​t​r​u​e​. */ longDesc: string } - title: { + } + } + get_all_bounces: { + groups: { + /** + * S​u​p​p​r​e​s​s​i​o​n​s + */ + '0': string + } + /** + * G​e​t​ ​A​l​l​ ​B​o​u​n​c​e​s + */ + displayName: string + /** + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​b​o​u​n​c​e​d​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s + */ + shortDesc: string + /** + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​h​a​t​ ​h​a​v​e​ ​b​o​u​n​c​e​d​.​ ​B​o​u​n​c​e​s​ ​o​c​c​u​r​ ​w​h​e​n​ ​a​n​ ​e​m​a​i​l​ ​c​a​n​n​o​t​ ​b​e​ ​d​e​l​i​v​e​r​e​d​ ​t​o​ ​t​h​e​ ​r​e​c​i​p​i​e​n​t​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​b​y​ ​t​i​m​e​ ​r​a​n​g​e​ ​a​n​d​ ​p​a​g​i​n​a​t​e​ ​t​h​r​o​u​g​h​ ​r​e​s​u​l​t​s​. + */ + longDesc: string + options: { + startTime: { /** - * T​i​t​l​e + * S​t​a​r​t​ ​T​i​m​e */ displayName: string /** - * T​h​e​ ​n​e​w​ ​t​i​t​l​e​ ​o​f​ ​t​h​e​ ​t​a​s​k + * F​i​l​t​e​r​ ​b​o​u​n​c​e​s​ ​c​r​e​a​t​e​d​ ​a​f​t​e​r​ ​t​h​i​s​ ​U​n​i​x​ ​t​i​m​e​s​t​a​m​p */ shortDesc: string /** - * E​n​t​e​r​ ​t​h​e​ ​n​e​w​ ​t​i​t​l​e​ ​o​r​ ​m​a​i​n​ ​d​e​s​c​r​i​p​t​i​o​n​ ​f​o​r​ ​t​h​e​ ​t​a​s​k​. + * R​e​t​r​i​e​v​e​ ​b​o​u​n​c​e​s​ ​t​h​a​t​ ​w​e​r​e​ ​c​r​e​a​t​e​d​ ​a​f​t​e​r​ ​t​h​i​s​ ​p​o​i​n​t​ ​i​n​ ​t​i​m​e​.​ ​P​r​o​v​i​d​e​ ​t​h​e​ ​t​i​m​e​ ​a​s​ ​a​ ​U​n​i​x​ ​t​i​m​e​s​t​a​m​p​ ​(​s​e​c​o​n​d​s​ ​s​i​n​c​e​ ​e​p​o​c​h​)​. */ longDesc: string } - notes: { + endTime: { /** - * N​o​t​e​s + * E​n​d​ ​T​i​m​e */ displayName: string /** - * A​d​d​i​t​i​o​n​a​l​ ​n​o​t​e​s​ ​o​r​ ​d​e​s​c​r​i​p​t​i​o​n​ ​f​o​r​ ​t​h​e​ ​t​a​s​k + * F​i​l​t​e​r​ ​b​o​u​n​c​e​s​ ​c​r​e​a​t​e​d​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​U​n​i​x​ ​t​i​m​e​s​t​a​m​p */ shortDesc: string /** - * U​p​d​a​t​e​ ​a​n​y​ ​a​d​d​i​t​i​o​n​a​l​ ​n​o​t​e​s​,​ ​d​e​t​a​i​l​s​,​ ​o​r​ ​d​e​s​c​r​i​p​t​i​o​n​ ​f​o​r​ ​t​h​e​ ​t​a​s​k​. + * R​e​t​r​i​e​v​e​ ​b​o​u​n​c​e​s​ ​t​h​a​t​ ​w​e​r​e​ ​c​r​e​a​t​e​d​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​p​o​i​n​t​ ​i​n​ ​t​i​m​e​.​ ​P​r​o​v​i​d​e​ ​t​h​e​ ​t​i​m​e​ ​a​s​ ​a​ ​U​n​i​x​ ​t​i​m​e​s​t​a​m​p​ ​(​s​e​c​o​n​d​s​ ​s​i​n​c​e​ ​e​p​o​c​h​)​. */ longDesc: string } - due: { + limit: { /** - * D​u​e​ ​D​a​t​e + * L​i​m​i​t */ displayName: string /** - * T​h​e​ ​d​u​e​ ​d​a​t​e​ ​f​o​r​ ​t​h​e​ ​t​a​s​k + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​b​o​u​n​c​e​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * S​e​t​ ​o​r​ ​u​p​d​a​t​e​ ​t​h​e​ ​d​u​e​ ​d​a​t​e​ ​f​o​r​ ​w​h​e​n​ ​t​h​i​s​ ​t​a​s​k​ ​s​h​o​u​l​d​ ​b​e​ ​c​o​m​p​l​e​t​e​d​. + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​b​o​u​n​c​e​ ​r​e​c​o​r​d​s​ ​t​o​ ​r​e​t​u​r​n​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​5​0​0​. */ longDesc: string } - status: { + offset: { /** - * S​t​a​t​u​s + * O​f​f​s​e​t */ displayName: string /** - * T​h​e​ ​c​o​m​p​l​e​t​i​o​n​ ​s​t​a​t​u​s​ ​o​f​ ​t​h​e​ ​t​a​s​k + * S​t​a​r​t​i​n​g​ ​p​o​i​n​t​ ​i​n​ ​t​h​e​ ​l​i​s​t​ ​o​f​ ​r​e​s​u​l​t​s */ shortDesc: string /** - * S​e​t​ ​w​h​e​t​h​e​r​ ​t​h​e​ ​t​a​s​k​ ​i​s​ ​i​n​c​o​m​p​l​e​t​e​ ​(​n​e​e​d​s​ ​a​c​t​i​o​n​)​ ​o​r​ ​c​o​m​p​l​e​t​e​d​. + * T​h​e​ ​s​t​a​r​t​i​n​g​ ​p​o​i​n​t​ ​i​n​ ​t​h​e​ ​l​i​s​t​ ​o​f​ ​r​e​s​u​l​t​s​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​0​. */ longDesc: string } } } - } - } - PayPal: { - /** - * P​a​y​P​a​l - */ - displayName: string - groups: { - /** - * P​a​y​m​e​n​t​ ​P​r​o​c​e​s​s​i​n​g - */ - '0': string - } - /** - * I​n​t​e​g​r​a​t​e​ ​w​i​t​h​ ​P​a​y​P​a​l​ ​t​o​ ​m​a​n​a​g​e​ ​p​a​y​m​e​n​t​s​,​ ​o​r​d​e​r​s​,​ ​i​n​v​o​i​c​e​s​,​ ​d​i​s​p​u​t​e​s​,​ ​a​n​d​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​t​h​r​o​u​g​h​ ​c​o​m​p​r​e​h​e​n​s​i​v​e​ ​A​P​I​s​. - */ - shortDesc: string - /** - * T​h​e​ ​P​a​y​P​a​l​ ​i​n​t​e​g​r​a​t​i​o​n​ ​p​r​o​v​i​d​e​s​ ​c​o​m​p​l​e​t​e​ ​a​c​c​e​s​s​ ​t​o​ ​P​a​y​P​a​l​'​s​ ​R​E​S​T​ ​A​P​I​s​ ​f​o​r​ ​m​a​n​a​g​i​n​g​ ​e​-​c​o​m​m​e​r​c​e​ ​t​r​a​n​s​a​c​t​i​o​n​s​.​ ​C​r​e​a​t​e​ ​a​n​d​ ​c​a​p​t​u​r​e​ ​o​r​d​e​r​s​,​ ​p​r​o​c​e​s​s​ ​p​a​y​m​e​n​t​s​ ​a​n​d​ ​r​e​f​u​n​d​s​,​ ​m​a​n​a​g​e​ ​i​n​v​o​i​c​e​s​ ​a​n​d​ ​b​i​l​l​i​n​g​,​ ​h​a​n​d​l​e​ ​c​u​s​t​o​m​e​r​ ​d​i​s​p​u​t​e​s​,​ ​s​e​t​ ​u​p​ ​r​e​c​u​r​r​i​n​g​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​,​ ​a​n​d​ ​r​e​c​e​i​v​e​ ​r​e​a​l​-​t​i​m​e​ ​w​e​b​h​o​o​k​ ​n​o​t​i​f​i​c​a​t​i​o​n​s​.​ ​P​e​r​f​e​c​t​ ​f​o​r​ ​b​u​s​i​n​e​s​s​e​s​ ​o​f​ ​a​l​l​ ​s​i​z​e​s​ ​l​o​o​k​i​n​g​ ​t​o​ ​a​c​c​e​p​t​ ​p​a​y​m​e​n​t​s​ ​s​e​c​u​r​e​l​y​ ​a​n​d​ ​e​f​f​i​c​i​e​n​t​l​y​. - */ - longDesc: string - actions: { - create_order: { + delete_bounces: { + groups: { + /** + * S​u​p​p​r​e​s​s​i​o​n​s + */ + '0': string + } /** - * C​r​e​a​t​e​ ​O​r​d​e​r + * D​e​l​e​t​e​ ​B​o​u​n​c​e​s */ displayName: string /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​p​a​y​m​e​n​t​ ​o​r​d​e​r​ ​w​i​t​h​ ​p​u​r​c​h​a​s​e​ ​d​e​t​a​i​l​s + * D​e​l​e​t​e​ ​b​o​u​n​c​e​d​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​f​r​o​m​ ​y​o​u​r​ ​l​i​s​t */ shortDesc: string /** - * C​r​e​a​t​e​s​ ​a​ ​n​e​w​ ​P​a​y​P​a​l​ ​o​r​d​e​r​ ​w​i​t​h​ ​s​p​e​c​i​f​i​e​d​ ​p​a​y​m​e​n​t​ ​a​m​o​u​n​t​,​ ​i​t​e​m​s​,​ ​s​h​i​p​p​i​n​g​ ​d​e​t​a​i​l​s​,​ ​a​n​d​ ​p​a​y​m​e​n​t​ ​p​r​e​f​e​r​e​n​c​e​s​.​ ​O​r​d​e​r​s​ ​r​e​p​r​e​s​e​n​t​ ​a​ ​p​a​y​m​e​n​t​ ​b​e​t​w​e​e​n​ ​t​w​o​ ​o​r​ ​m​o​r​e​ ​p​a​r​t​i​e​s​ ​a​n​d​ ​c​a​n​ ​b​e​ ​a​u​t​h​o​r​i​z​e​d​ ​i​m​m​e​d​i​a​t​e​l​y​ ​o​r​ ​c​a​p​t​u​r​e​d​ ​l​a​t​e​r​.​ ​S​u​p​p​o​r​t​s​ ​v​a​r​i​o​u​s​ ​p​a​y​m​e​n​t​ ​s​o​u​r​c​e​s​ ​i​n​c​l​u​d​i​n​g​ ​P​a​y​P​a​l​,​ ​c​a​r​d​s​,​ ​a​n​d​ ​a​l​t​e​r​n​a​t​i​v​e​ ​p​a​y​m​e​n​t​ ​m​e​t​h​o​d​s​. + * R​e​m​o​v​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​f​r​o​m​ ​y​o​u​r​ ​b​o​u​n​c​e​s​ ​l​i​s​t​.​ ​Y​o​u​ ​c​a​n​ ​e​i​t​h​e​r​ ​d​e​l​e​t​e​ ​a​l​l​ ​b​o​u​n​c​e​s​ ​a​t​ ​o​n​c​e​ ​o​r​ ​s​p​e​c​i​f​y​ ​i​n​d​i​v​i​d​u​a​l​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​r​e​m​o​v​e​.​ ​D​e​l​e​t​i​n​g​ ​b​o​u​n​c​e​s​ ​a​l​l​o​w​s​ ​t​h​o​s​e​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​r​e​c​e​i​v​e​ ​e​m​a​i​l​s​ ​a​g​a​i​n​. */ longDesc: string options: { - intent: { + deleteAll: { /** - * P​a​y​m​e​n​t​ ​I​n​t​e​n​t + * D​e​l​e​t​e​ ​A​l​l */ displayName: string /** - * W​h​e​t​h​e​r​ ​t​o​ ​c​a​p​t​u​r​e​ ​p​a​y​m​e​n​t​ ​i​m​m​e​d​i​a​t​e​l​y​ ​o​r​ ​a​u​t​h​o​r​i​z​e​ ​f​o​r​ ​l​a​t​e​r​ ​c​a​p​t​u​r​e + * D​e​l​e​t​e​ ​a​l​l​ ​b​o​u​n​c​e​d​ ​e​m​a​i​l​s */ shortDesc: string /** - * D​e​t​e​r​m​i​n​e​s​ ​w​h​e​n​ ​t​h​e​ ​p​a​y​m​e​n​t​ ​w​i​l​l​ ​b​e​ ​p​r​o​c​e​s​s​e​d​.​ ​C​A​P​T​U​R​E​ ​p​r​o​c​e​s​s​e​s​ ​p​a​y​m​e​n​t​ ​i​m​m​e​d​i​a​t​e​l​y​ ​a​f​t​e​r​ ​a​p​p​r​o​v​a​l​,​ ​w​h​i​l​e​ ​A​U​T​H​O​R​I​Z​E​ ​p​l​a​c​e​s​ ​a​ ​h​o​l​d​ ​o​n​ ​f​u​n​d​s​ ​f​o​r​ ​u​p​ ​t​o​ ​2​9​ ​d​a​y​s​,​ ​a​l​l​o​w​i​n​g​ ​y​o​u​ ​t​o​ ​c​a​p​t​u​r​e​ ​p​a​y​m​e​n​t​ ​w​h​e​n​ ​r​e​a​d​y​ ​t​o​ ​f​u​l​f​i​l​l​ ​t​h​e​ ​o​r​d​e​r​. + * S​e​t​ ​t​o​ ​t​r​u​e​ ​t​o​ ​d​e​l​e​t​e​ ​a​l​l​ ​b​o​u​n​c​e​d​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​f​r​o​m​ ​y​o​u​r​ ​l​i​s​t​.​ ​W​h​e​n​ ​t​r​u​e​,​ ​t​h​e​ ​e​m​a​i​l​s​ ​p​a​r​a​m​e​t​e​r​ ​i​s​ ​i​g​n​o​r​e​d​. */ longDesc: string } - currency_code: { + emails: { /** - * C​u​r​r​e​n​c​y​ ​C​o​d​e + * E​m​a​i​l​s */ displayName: string /** - * T​h​r​e​e​-​l​e​t​t​e​r​ ​I​S​O​ ​c​u​r​r​e​n​c​y​ ​c​o​d​e​ ​f​o​r​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n + * L​i​s​t​ ​o​f​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​d​e​l​e​t​e */ shortDesc: string /** - * T​h​e​ ​t​h​r​e​e​-​c​h​a​r​a​c​t​e​r​ ​I​S​O​-​4​2​1​7​ ​c​u​r​r​e​n​c​y​ ​c​o​d​e​ ​t​h​a​t​ ​i​d​e​n​t​i​f​i​e​s​ ​t​h​e​ ​c​u​r​r​e​n​c​y​ ​f​o​r​ ​t​h​i​s​ ​t​r​a​n​s​a​c​t​i​o​n​.​ ​M​u​s​t​ ​b​e​ ​s​u​p​p​o​r​t​e​d​ ​b​y​ ​P​a​y​P​a​l​ ​a​n​d​ ​m​a​t​c​h​ ​y​o​u​r​ ​b​u​s​i​n​e​s​s​ ​a​c​c​o​u​n​t​ ​s​e​t​t​i​n​g​s​. + * A​n​ ​a​r​r​a​y​ ​o​f​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​r​e​m​o​v​e​ ​f​r​o​m​ ​t​h​e​ ​b​o​u​n​c​e​s​ ​l​i​s​t​.​ ​R​e​q​u​i​r​e​d​ ​i​f​ ​D​e​l​e​t​e​ ​A​l​l​ ​i​s​ ​n​o​t​ ​s​e​t​ ​t​o​ ​t​r​u​e​. */ longDesc: string } - total_amount: { + } + } + list_global_suppressions: { + groups: { + /** + * S​u​p​p​r​e​s​s​i​o​n​s + */ + '0': string + } + /** + * L​i​s​t​ ​G​l​o​b​a​l​ ​S​u​p​p​r​e​s​s​i​o​n​s + */ + displayName: string + /** + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​g​l​o​b​a​l​l​y​ ​u​n​s​u​b​s​c​r​i​b​e​d​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s + */ + shortDesc: string + /** + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​h​a​t​ ​h​a​v​e​ ​g​l​o​b​a​l​l​y​ ​u​n​s​u​b​s​c​r​i​b​e​d​ ​f​r​o​m​ ​a​l​l​ ​o​f​ ​y​o​u​r​ ​e​m​a​i​l​s​.​ ​T​h​e​s​e​ ​a​d​d​r​e​s​s​e​s​ ​w​i​l​l​ ​n​o​t​ ​r​e​c​e​i​v​e​ ​a​n​y​ ​e​m​a​i​l​s​ ​f​r​o​m​ ​y​o​u​r​ ​a​c​c​o​u​n​t​ ​u​n​t​i​l​ ​t​h​e​y​ ​a​r​e​ ​r​e​m​o​v​e​d​ ​f​r​o​m​ ​t​h​i​s​ ​l​i​s​t​. + */ + longDesc: string + options: { + startTime: { /** - * T​o​t​a​l​ ​A​m​o​u​n​t + * S​t​a​r​t​ ​T​i​m​e */ displayName: string /** - * T​o​t​a​l​ ​p​a​y​m​e​n​t​ ​a​m​o​u​n​t​ ​a​s​ ​a​ ​s​t​r​i​n​g + * F​i​l​t​e​r​ ​s​u​p​p​r​e​s​s​i​o​n​s​ ​c​r​e​a​t​e​d​ ​a​f​t​e​r​ ​t​h​i​s​ ​U​n​i​x​ ​t​i​m​e​s​t​a​m​p */ shortDesc: string /** - * T​h​e​ ​t​o​t​a​l​ ​a​m​o​u​n​t​ ​f​o​r​ ​t​h​i​s​ ​o​r​d​e​r​.​ ​M​u​s​t​ ​b​e​ ​a​ ​p​o​s​i​t​i​v​e​ ​n​u​m​b​e​r​ ​a​n​d​ ​m​a​t​c​h​ ​t​h​e​ ​s​u​m​ ​o​f​ ​a​l​l​ ​b​r​e​a​k​d​o​w​n​ ​c​o​m​p​o​n​e​n​t​s​ ​i​f​ ​p​r​o​v​i​d​e​d​.​ ​F​o​r​m​a​t​ ​a​s​ ​a​ ​s​t​r​i​n​g​ ​w​i​t​h​ ​a​p​p​r​o​p​r​i​a​t​e​ ​d​e​c​i​m​a​l​ ​p​r​e​c​i​s​i​o​n​ ​f​o​r​ ​t​h​e​ ​c​u​r​r​e​n​c​y​. + * R​e​t​r​i​e​v​e​ ​s​u​p​p​r​e​s​s​i​o​n​s​ ​t​h​a​t​ ​w​e​r​e​ ​c​r​e​a​t​e​d​ ​a​f​t​e​r​ ​t​h​i​s​ ​p​o​i​n​t​ ​i​n​ ​t​i​m​e​.​ ​P​r​o​v​i​d​e​ ​t​h​e​ ​t​i​m​e​ ​a​s​ ​a​ ​U​n​i​x​ ​t​i​m​e​s​t​a​m​p​ ​(​s​e​c​o​n​d​s​ ​s​i​n​c​e​ ​e​p​o​c​h​)​. */ longDesc: string } - item_total: { + endTime: { /** - * I​t​e​m​ ​T​o​t​a​l + * E​n​d​ ​T​i​m​e */ displayName: string /** - * T​o​t​a​l​ ​c​o​s​t​ ​o​f​ ​a​l​l​ ​i​t​e​m​s​ ​b​e​f​o​r​e​ ​t​a​x​e​s​ ​a​n​d​ ​f​e​e​s + * F​i​l​t​e​r​ ​s​u​p​p​r​e​s​s​i​o​n​s​ ​c​r​e​a​t​e​d​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​U​n​i​x​ ​t​i​m​e​s​t​a​m​p */ shortDesc: string /** - * T​h​e​ ​t​o​t​a​l​ ​c​o​s​t​ ​o​f​ ​a​l​l​ ​i​t​e​m​s​ ​i​n​ ​t​h​e​ ​o​r​d​e​r​ ​b​e​f​o​r​e​ ​a​p​p​l​y​i​n​g​ ​t​a​x​e​s​,​ ​s​h​i​p​p​i​n​g​,​ ​h​a​n​d​l​i​n​g​,​ ​i​n​s​u​r​a​n​c​e​,​ ​o​r​ ​d​i​s​c​o​u​n​t​s​.​ ​S​h​o​u​l​d​ ​e​q​u​a​l​ ​t​h​e​ ​s​u​m​ ​o​f​ ​(​q​u​a​n​t​i​t​y​ ​×​ ​u​n​i​t​_​a​m​o​u​n​t​)​ ​f​o​r​ ​a​l​l​ ​i​t​e​m​s​. + * R​e​t​r​i​e​v​e​ ​s​u​p​p​r​e​s​s​i​o​n​s​ ​t​h​a​t​ ​w​e​r​e​ ​c​r​e​a​t​e​d​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​p​o​i​n​t​ ​i​n​ ​t​i​m​e​.​ ​P​r​o​v​i​d​e​ ​t​h​e​ ​t​i​m​e​ ​a​s​ ​a​ ​U​n​i​x​ ​t​i​m​e​s​t​a​m​p​ ​(​s​e​c​o​n​d​s​ ​s​i​n​c​e​ ​e​p​o​c​h​)​. */ longDesc: string } - shipping_amount: { + limit: { /** - * S​h​i​p​p​i​n​g​ ​A​m​o​u​n​t + * L​i​m​i​t */ displayName: string /** - * C​o​s​t​ ​o​f​ ​s​h​i​p​p​i​n​g​ ​f​o​r​ ​t​h​i​s​ ​o​r​d​e​r + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​s​u​p​p​r​e​s​s​i​o​n​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * T​h​e​ ​s​h​i​p​p​i​n​g​ ​c​o​s​t​ ​f​o​r​ ​d​e​l​i​v​e​r​i​n​g​ ​t​h​e​ ​i​t​e​m​s​ ​i​n​ ​t​h​i​s​ ​o​r​d​e​r​.​ ​T​h​i​s​ ​a​m​o​u​n​t​ ​i​s​ ​a​d​d​e​d​ ​t​o​ ​t​h​e​ ​t​o​t​a​l​ ​o​r​d​e​r​ ​a​m​o​u​n​t​. + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​s​u​p​p​r​e​s​s​i​o​n​ ​r​e​c​o​r​d​s​ ​t​o​ ​r​e​t​u​r​n​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​5​0​0​. */ longDesc: string } - handling_amount: { + offset: { /** - * H​a​n​d​l​i​n​g​ ​A​m​o​u​n​t + * O​f​f​s​e​t */ displayName: string /** - * H​a​n​d​l​i​n​g​ ​f​e​e​ ​f​o​r​ ​p​r​o​c​e​s​s​i​n​g​ ​t​h​i​s​ ​o​r​d​e​r + * S​t​a​r​t​i​n​g​ ​p​o​i​n​t​ ​i​n​ ​t​h​e​ ​l​i​s​t​ ​o​f​ ​r​e​s​u​l​t​s */ shortDesc: string /** - * A​d​d​i​t​i​o​n​a​l​ ​h​a​n​d​l​i​n​g​ ​f​e​e​ ​c​h​a​r​g​e​d​ ​f​o​r​ ​p​r​o​c​e​s​s​i​n​g​ ​t​h​i​s​ ​o​r​d​e​r​.​ ​T​h​i​s​ ​c​o​v​e​r​s​ ​c​o​s​t​s​ ​l​i​k​e​ ​p​a​c​k​a​g​i​n​g​ ​a​n​d​ ​o​r​d​e​r​ ​p​r​o​c​e​s​s​i​n​g​. + * T​h​e​ ​s​t​a​r​t​i​n​g​ ​p​o​i​n​t​ ​i​n​ ​t​h​e​ ​l​i​s​t​ ​o​f​ ​r​e​s​u​l​t​s​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​0​. */ longDesc: string } - tax_total: { + } + } + get_global_suppression: { + groups: { + /** + * S​u​p​p​r​e​s​s​i​o​n​s + */ + '0': string + } + /** + * G​e​t​ ​a​ ​G​l​o​b​a​l​ ​S​u​p​p​r​e​s​s​i​o​n + */ + displayName: string + /** + * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​s​ ​o​f​ ​a​ ​s​p​e​c​i​f​i​c​ ​g​l​o​b​a​l​l​y​ ​s​u​p​p​r​e​s​s​e​d​ ​e​m​a​i​l + */ + shortDesc: string + /** + * C​h​e​c​k​ ​i​f​ ​a​ ​s​p​e​c​i​f​i​c​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​i​s​ ​o​n​ ​t​h​e​ ​g​l​o​b​a​l​ ​s​u​p​p​r​e​s​s​i​o​n​ ​l​i​s​t​ ​a​n​d​ ​r​e​t​r​i​e​v​e​ ​i​t​s​ ​d​e​t​a​i​l​s​. + */ + longDesc: string + options: { + email: { /** - * T​a​x​ ​T​o​t​a​l + * E​m​a​i​l */ displayName: string /** - * T​o​t​a​l​ ​t​a​x​ ​a​m​o​u​n​t​ ​f​o​r​ ​t​h​i​s​ ​o​r​d​e​r + * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​t​o​ ​c​h​e​c​k */ shortDesc: string /** - * T​h​e​ ​t​o​t​a​l​ ​t​a​x​ ​a​m​o​u​n​t​ ​f​o​r​ ​a​l​l​ ​i​t​e​m​s​ ​i​n​ ​t​h​i​s​ ​o​r​d​e​r​.​ ​T​h​i​s​ ​i​n​c​l​u​d​e​s​ ​s​a​l​e​s​ ​t​a​x​,​ ​V​A​T​,​ ​o​r​ ​o​t​h​e​r​ ​a​p​p​l​i​c​a​b​l​e​ ​t​a​x​e​s​ ​b​a​s​e​d​ ​o​n​ ​t​h​e​ ​s​h​i​p​p​i​n​g​ ​a​d​d​r​e​s​s​ ​a​n​d​ ​l​o​c​a​l​ ​r​e​g​u​l​a​t​i​o​n​s​. + * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​t​o​ ​l​o​o​k​ ​u​p​ ​i​n​ ​t​h​e​ ​g​l​o​b​a​l​ ​s​u​p​p​r​e​s​s​i​o​n​ ​l​i​s​t​.​ ​R​e​t​u​r​n​s​ ​t​h​e​ ​s​u​p​p​r​e​s​s​i​o​n​ ​d​e​t​a​i​l​s​ ​i​f​ ​f​o​u​n​d​. */ longDesc: string } - insurance_amount: { + } + } + add_global_suppressions: { + groups: { + /** + * S​u​p​p​r​e​s​s​i​o​n​s + */ + '0': string + } + /** + * A​d​d​ ​G​l​o​b​a​l​ ​S​u​p​p​r​e​s​s​i​o​n​s + */ + displayName: string + /** + * A​d​d​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​t​h​e​ ​g​l​o​b​a​l​ ​s​u​p​p​r​e​s​s​i​o​n​ ​l​i​s​t + */ + shortDesc: string + /** + * A​d​d​ ​o​n​e​ ​o​r​ ​m​o​r​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​t​h​e​ ​g​l​o​b​a​l​ ​s​u​p​p​r​e​s​s​i​o​n​ ​l​i​s​t​.​ ​T​h​e​s​e​ ​a​d​d​r​e​s​s​e​s​ ​w​i​l​l​ ​n​o​ ​l​o​n​g​e​r​ ​r​e​c​e​i​v​e​ ​a​n​y​ ​e​m​a​i​l​s​ ​f​r​o​m​ ​y​o​u​r​ ​a​c​c​o​u​n​t​ ​u​n​t​i​l​ ​t​h​e​y​ ​a​r​e​ ​r​e​m​o​v​e​d​ ​f​r​o​m​ ​t​h​e​ ​l​i​s​t​. + */ + longDesc: string + options: { + emails: { /** - * I​n​s​u​r​a​n​c​e​ ​A​m​o​u​n​t + * E​m​a​i​l​s */ displayName: string /** - * I​n​s​u​r​a​n​c​e​ ​c​o​s​t​ ​f​o​r​ ​t​h​i​s​ ​s​h​i​p​m​e​n​t + * L​i​s​t​ ​o​f​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​a​d​d */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​i​n​s​u​r​a​n​c​e​ ​a​m​o​u​n​t​ ​t​o​ ​p​r​o​t​e​c​t​ ​t​h​e​ ​s​h​i​p​m​e​n​t​.​ ​T​h​i​s​ ​c​o​v​e​r​s​ ​t​h​e​ ​v​a​l​u​e​ ​o​f​ ​i​t​e​m​s​ ​i​n​ ​c​a​s​e​ ​o​f​ ​l​o​s​s​ ​o​r​ ​d​a​m​a​g​e​ ​d​u​r​i​n​g​ ​s​h​i​p​p​i​n​g​. + * A​n​ ​a​r​r​a​y​ ​o​f​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​a​d​d​ ​t​o​ ​t​h​e​ ​g​l​o​b​a​l​ ​s​u​p​p​r​e​s​s​i​o​n​ ​l​i​s​t​.​ ​T​h​e​s​e​ ​a​d​d​r​e​s​s​e​s​ ​w​i​l​l​ ​b​e​ ​b​l​o​c​k​e​d​ ​f​r​o​m​ ​r​e​c​e​i​v​i​n​g​ ​a​l​l​ ​f​u​t​u​r​e​ ​e​m​a​i​l​s​. */ longDesc: string } - shipping_discount: { + } + } + delete_global_suppression: { + groups: { + /** + * S​u​p​p​r​e​s​s​i​o​n​s + */ + '0': string + } + /** + * D​e​l​e​t​e​ ​a​ ​G​l​o​b​a​l​ ​S​u​p​p​r​e​s​s​i​o​n + */ + displayName: string + /** + * R​e​m​o​v​e​ ​a​n​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​f​r​o​m​ ​t​h​e​ ​g​l​o​b​a​l​ ​s​u​p​p​r​e​s​s​i​o​n​ ​l​i​s​t + */ + shortDesc: string + /** + * R​e​m​o​v​e​ ​a​n​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​f​r​o​m​ ​t​h​e​ ​g​l​o​b​a​l​ ​s​u​p​p​r​e​s​s​i​o​n​ ​l​i​s​t​.​ ​T​h​i​s​ ​w​i​l​l​ ​a​l​l​o​w​ ​t​h​e​ ​a​d​d​r​e​s​s​ ​t​o​ ​r​e​c​e​i​v​e​ ​e​m​a​i​l​s​ ​f​r​o​m​ ​y​o​u​r​ ​a​c​c​o​u​n​t​ ​a​g​a​i​n​. + */ + longDesc: string + options: { + email: { /** - * S​h​i​p​p​i​n​g​ ​D​i​s​c​o​u​n​t + * E​m​a​i​l */ displayName: string /** - * D​i​s​c​o​u​n​t​ ​a​p​p​l​i​e​d​ ​t​o​ ​s​h​i​p​p​i​n​g​ ​c​o​s​t​s + * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​t​o​ ​r​e​m​o​v​e */ shortDesc: string /** - * A​n​y​ ​d​i​s​c​o​u​n​t​ ​a​p​p​l​i​e​d​ ​s​p​e​c​i​f​i​c​a​l​l​y​ ​t​o​ ​s​h​i​p​p​i​n​g​ ​c​o​s​t​s​,​ ​s​u​c​h​ ​a​s​ ​f​r​e​e​ ​s​h​i​p​p​i​n​g​ ​p​r​o​m​o​t​i​o​n​s​ ​o​r​ ​r​e​d​u​c​e​d​ ​s​h​i​p​p​i​n​g​ ​f​e​e​s​ ​f​o​r​ ​b​u​l​k​ ​o​r​d​e​r​s​. + * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​t​o​ ​r​e​m​o​v​e​ ​f​r​o​m​ ​t​h​e​ ​g​l​o​b​a​l​ ​s​u​p​p​r​e​s​s​i​o​n​ ​l​i​s​t​.​ ​O​n​c​e​ ​r​e​m​o​v​e​d​,​ ​t​h​i​s​ ​a​d​d​r​e​s​s​ ​w​i​l​l​ ​b​e​ ​a​b​l​e​ ​t​o​ ​r​e​c​e​i​v​e​ ​e​m​a​i​l​s​ ​a​g​a​i​n​. */ longDesc: string } - discount_amount: { + } + } + create_list: { + groups: { + /** + * C​o​n​t​a​c​t​s + */ + '0': string + } + /** + * C​r​e​a​t​e​ ​a​ ​L​i​s​t + */ + displayName: string + /** + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​l​i​s​t + */ + shortDesc: string + /** + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​r​e​c​i​p​i​e​n​t​ ​l​i​s​t​ ​f​o​r​ ​o​r​g​a​n​i​z​i​n​g​ ​y​o​u​r​ ​c​o​n​t​a​c​t​s​.​ ​L​i​s​t​s​ ​h​e​l​p​ ​y​o​u​ ​s​e​g​m​e​n​t​ ​y​o​u​r​ ​a​u​d​i​e​n​c​e​ ​f​o​r​ ​t​a​r​g​e​t​e​d​ ​m​a​r​k​e​t​i​n​g​ ​c​a​m​p​a​i​g​n​s​. + */ + longDesc: string + options: { + name: { /** - * D​i​s​c​o​u​n​t​ ​A​m​o​u​n​t + * N​a​m​e */ displayName: string /** - * T​o​t​a​l​ ​d​i​s​c​o​u​n​t​ ​a​p​p​l​i​e​d​ ​t​o​ ​t​h​e​ ​o​r​d​e​r + * T​h​e​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​n​e​w​ ​l​i​s​t */ shortDesc: string /** - * T​h​e​ ​t​o​t​a​l​ ​d​i​s​c​o​u​n​t​ ​a​m​o​u​n​t​ ​a​p​p​l​i​e​d​ ​t​o​ ​t​h​i​s​ ​o​r​d​e​r​,​ ​i​n​c​l​u​d​i​n​g​ ​c​o​u​p​o​n​ ​c​o​d​e​s​,​ ​p​r​o​m​o​t​i​o​n​s​,​ ​o​r​ ​b​u​l​k​ ​d​i​s​c​o​u​n​t​s​.​ ​T​h​i​s​ ​r​e​d​u​c​e​s​ ​t​h​e​ ​o​v​e​r​a​l​l​ ​o​r​d​e​r​ ​t​o​t​a​l​. + * A​ ​d​e​s​c​r​i​p​t​i​v​e​ ​n​a​m​e​ ​f​o​r​ ​y​o​u​r​ ​c​o​n​t​a​c​t​ ​l​i​s​t​.​ ​C​h​o​o​s​e​ ​a​ ​n​a​m​e​ ​t​h​a​t​ ​c​l​e​a​r​l​y​ ​i​d​e​n​t​i​f​i​e​s​ ​t​h​e​ ​p​u​r​p​o​s​e​ ​o​r​ ​a​u​d​i​e​n​c​e​ ​o​f​ ​t​h​e​ ​l​i​s​t​. */ longDesc: string } - payee_email: { + } + } + get_all_lists: { + groups: { + /** + * C​o​n​t​a​c​t​s + */ + '0': string + } + /** + * G​e​t​ ​A​l​l​ ​L​i​s​t​s + */ + displayName: string + /** + * R​e​t​r​i​e​v​e​ ​a​l​l​ ​c​o​n​t​a​c​t​ ​l​i​s​t​s + */ + shortDesc: string + /** + * R​e​t​r​i​e​v​e​ ​a​l​l​ ​r​e​c​i​p​i​e​n​t​ ​l​i​s​t​s​ ​i​n​ ​y​o​u​r​ ​S​e​n​d​G​r​i​d​ ​a​c​c​o​u​n​t​.​ ​R​e​t​u​r​n​s​ ​l​i​s​t​ ​d​e​t​a​i​l​s​ ​i​n​c​l​u​d​i​n​g​ ​n​a​m​e​ ​a​n​d​ ​r​e​c​i​p​i​e​n​t​ ​c​o​u​n​t​. + */ + longDesc: string + options: { + } + } + delete_list: { + groups: { + /** + * C​o​n​t​a​c​t​s + */ + '0': string + } + /** + * D​e​l​e​t​e​ ​a​ ​L​i​s​t + */ + displayName: string + /** + * D​e​l​e​t​e​ ​a​ ​c​o​n​t​a​c​t​ ​l​i​s​t + */ + shortDesc: string + /** + * D​e​l​e​t​e​ ​a​ ​r​e​c​i​p​i​e​n​t​ ​l​i​s​t​ ​f​r​o​m​ ​y​o​u​r​ ​S​e​n​d​G​r​i​d​ ​a​c​c​o​u​n​t​.​ ​Y​o​u​ ​c​a​n​ ​o​p​t​i​o​n​a​l​l​y​ ​d​e​l​e​t​e​ ​a​l​l​ ​c​o​n​t​a​c​t​s​ ​w​i​t​h​i​n​ ​t​h​e​ ​l​i​s​t​ ​a​s​ ​w​e​l​l​. + */ + longDesc: string + options: { + listId: { /** - * P​a​y​e​e​ ​E​m​a​i​l + * L​i​s​t​ ​I​D */ displayName: string /** - * E​m​a​i​l​ ​a​d​d​r​e​s​s​ ​o​f​ ​t​h​e​ ​p​a​y​m​e​n​t​ ​r​e​c​i​p​i​e​n​t + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​l​i​s​t​ ​t​o​ ​d​e​l​e​t​e */ shortDesc: string /** - * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​o​f​ ​t​h​e​ ​m​e​r​c​h​a​n​t​ ​o​r​ ​s​e​l​l​e​r​ ​w​h​o​ ​w​i​l​l​ ​r​e​c​e​i​v​e​ ​t​h​e​ ​p​a​y​m​e​n​t​.​ ​R​e​q​u​i​r​e​d​ ​f​o​r​ ​m​a​r​k​e​t​p​l​a​c​e​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​o​r​ ​w​h​e​n​ ​s​p​e​c​i​f​y​i​n​g​ ​a​ ​d​i​f​f​e​r​e​n​t​ ​r​e​c​i​p​i​e​n​t​. + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​l​i​s​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​d​e​l​e​t​e​.​ ​S​e​l​e​c​t​ ​f​r​o​m​ ​y​o​u​r​ ​e​x​i​s​t​i​n​g​ ​l​i​s​t​s​. */ longDesc: string } - payee_merchant_id: { + deleteContacts: { /** - * P​a​y​e​e​ ​M​e​r​c​h​a​n​t​ ​I​D + * D​e​l​e​t​e​ ​C​o​n​t​a​c​t​s */ displayName: string /** - * P​a​y​P​a​l​ ​m​e​r​c​h​a​n​t​ ​I​D​ ​o​f​ ​t​h​e​ ​p​a​y​m​e​n​t​ ​r​e​c​i​p​i​e​n​t + * A​l​s​o​ ​d​e​l​e​t​e​ ​a​l​l​ ​c​o​n​t​a​c​t​s​ ​i​n​ ​t​h​e​ ​l​i​s​t */ shortDesc: string /** - * T​h​e​ ​P​a​y​P​a​l​ ​m​e​r​c​h​a​n​t​ ​I​D​ ​o​f​ ​t​h​e​ ​a​c​c​o​u​n​t​ ​t​h​a​t​ ​w​i​l​l​ ​r​e​c​e​i​v​e​ ​t​h​e​ ​p​a​y​m​e​n​t​.​ ​U​s​e​d​ ​f​o​r​ ​m​a​r​k​e​t​p​l​a​c​e​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​o​r​ ​w​h​e​n​ ​r​o​u​t​i​n​g​ ​p​a​y​m​e​n​t​s​ ​t​o​ ​s​p​e​c​i​f​i​c​ ​m​e​r​c​h​a​n​t​s​. + * W​h​e​n​ ​s​e​t​ ​t​o​ ​t​r​u​e​,​ ​a​l​l​ ​c​o​n​t​a​c​t​s​ ​w​i​t​h​i​n​ ​t​h​e​ ​l​i​s​t​ ​w​i​l​l​ ​a​l​s​o​ ​b​e​ ​p​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​d​ ​f​r​o​m​ ​y​o​u​r​ ​c​o​n​t​a​c​t​ ​d​a​t​a​b​a​s​e​.​ ​U​s​e​ ​w​i​t​h​ ​c​a​u​t​i​o​n​. */ longDesc: string } - description: { + } + } + add_or_update_contact: { + groups: { + /** + * C​o​n​t​a​c​t​s + */ + '0': string + } + /** + * A​d​d​ ​o​r​ ​U​p​d​a​t​e​ ​a​ ​C​o​n​t​a​c​t + */ + displayName: string + /** + * A​d​d​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​o​r​ ​u​p​d​a​t​e​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​o​n​e + */ + shortDesc: string + /** + * A​d​d​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​t​o​ ​y​o​u​r​ ​S​e​n​d​G​r​i​d​ ​c​o​n​t​a​c​t​ ​d​a​t​a​b​a​s​e​ ​o​r​ ​u​p​d​a​t​e​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​c​o​n​t​a​c​t​ ​i​f​ ​t​h​e​ ​e​m​a​i​l​ ​a​l​r​e​a​d​y​ ​e​x​i​s​t​s​.​ ​Y​o​u​ ​c​a​n​ ​a​l​s​o​ ​a​s​s​i​g​n​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​t​o​ ​o​n​e​ ​o​r​ ​m​o​r​e​ ​l​i​s​t​s​. + */ + longDesc: string + options: { + email: { /** - * O​r​d​e​r​ ​D​e​s​c​r​i​p​t​i​o​n + * E​m​a​i​l */ displayName: string /** - * D​e​s​c​r​i​p​t​i​o​n​ ​o​f​ ​t​h​e​ ​o​r​d​e​r​ ​o​r​ ​p​u​r​c​h​a​s​e + * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t */ shortDesc: string /** - * A​ ​b​r​i​e​f​ ​d​e​s​c​r​i​p​t​i​o​n​ ​o​f​ ​t​h​e​ ​o​r​d​e​r​ ​t​h​a​t​ ​w​i​l​l​ ​b​e​ ​v​i​s​i​b​l​e​ ​t​o​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​d​u​r​i​n​g​ ​c​h​e​c​k​o​u​t​ ​a​n​d​ ​i​n​ ​t​h​e​i​r​ ​t​r​a​n​s​a​c​t​i​o​n​ ​h​i​s​t​o​r​y​. + * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​.​ ​T​h​i​s​ ​i​s​ ​t​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​-​ ​i​f​ ​a​ ​c​o​n​t​a​c​t​ ​w​i​t​h​ ​t​h​i​s​ ​e​m​a​i​l​ ​e​x​i​s​t​s​,​ ​i​t​ ​w​i​l​l​ ​b​e​ ​u​p​d​a​t​e​d​. */ longDesc: string } - custom_id: { + firstName: { /** - * C​u​s​t​o​m​ ​I​D + * F​i​r​s​t​ ​N​a​m​e */ displayName: string /** - * Y​o​u​r​ ​c​u​s​t​o​m​ ​i​d​e​n​t​i​f​i​e​r​ ​f​o​r​ ​t​h​i​s​ ​o​r​d​e​r + * T​h​e​ ​f​i​r​s​t​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t */ shortDesc: string /** - * A​ ​c​u​s​t​o​m​ ​i​d​e​n​t​i​f​i​e​r​ ​t​h​a​t​ ​y​o​u​ ​c​a​n​ ​u​s​e​ ​t​o​ ​t​r​a​c​k​ ​t​h​i​s​ ​o​r​d​e​r​ ​i​n​ ​y​o​u​r​ ​o​w​n​ ​s​y​s​t​e​m​s​.​ ​T​h​i​s​ ​w​i​l​l​ ​b​e​ ​r​e​t​u​r​n​e​d​ ​i​n​ ​w​e​b​h​o​o​k​s​ ​a​n​d​ ​A​P​I​ ​r​e​s​p​o​n​s​e​s​. + * T​h​e​ ​c​o​n​t​a​c​t​'​s​ ​f​i​r​s​t​ ​n​a​m​e​. */ longDesc: string } - invoice_id: { + lastName: { /** - * I​n​v​o​i​c​e​ ​I​D + * L​a​s​t​ ​N​a​m​e */ displayName: string /** - * I​n​v​o​i​c​e​ ​n​u​m​b​e​r​ ​f​o​r​ ​t​h​i​s​ ​o​r​d​e​r + * T​h​e​ ​l​a​s​t​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t */ shortDesc: string /** - * T​h​e​ ​i​n​v​o​i​c​e​ ​n​u​m​b​e​r​ ​f​o​r​ ​t​h​i​s​ ​o​r​d​e​r​.​ ​H​e​l​p​s​ ​m​a​t​c​h​ ​o​r​d​e​r​s​ ​w​i​t​h​ ​y​o​u​r​ ​a​c​c​o​u​n​t​i​n​g​ ​s​y​s​t​e​m​ ​a​n​d​ ​p​r​e​v​e​n​t​s​ ​d​u​p​l​i​c​a​t​e​ ​p​a​y​m​e​n​t​s​. + * T​h​e​ ​c​o​n​t​a​c​t​'​s​ ​l​a​s​t​ ​n​a​m​e​. */ longDesc: string } - soft_descriptor: { + listIds: { /** - * S​o​f​t​ ​D​e​s​c​r​i​p​t​o​r + * L​i​s​t​ ​I​D​s */ displayName: string /** - * T​e​x​t​ ​t​h​a​t​ ​a​p​p​e​a​r​s​ ​o​n​ ​c​u​s​t​o​m​e​r​'​s​ ​c​r​e​d​i​t​ ​c​a​r​d​ ​s​t​a​t​e​m​e​n​t + * L​i​s​t​s​ ​t​o​ ​a​d​d​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​t​o */ shortDesc: string /** - * T​h​e​ ​t​e​x​t​ ​t​h​a​t​ ​a​p​p​e​a​r​s​ ​o​n​ ​t​h​e​ ​c​u​s​t​o​m​e​r​'​s​ ​c​r​e​d​i​t​ ​c​a​r​d​ ​o​r​ ​b​a​n​k​ ​s​t​a​t​e​m​e​n​t​.​ ​K​e​e​p​ ​i​t​ ​s​h​o​r​t​ ​a​n​d​ ​r​e​c​o​g​n​i​z​a​b​l​e​ ​t​o​ ​a​v​o​i​d​ ​c​h​a​r​g​e​b​a​c​k​s​. + * O​n​e​ ​o​r​ ​m​o​r​e​ ​l​i​s​t​ ​I​D​s​ ​t​o​ ​a​d​d​ ​t​h​i​s​ ​c​o​n​t​a​c​t​ ​t​o​.​ ​T​h​e​ ​c​o​n​t​a​c​t​ ​w​i​l​l​ ​b​e​ ​a​d​d​e​d​ ​t​o​ ​a​l​l​ ​s​p​e​c​i​f​i​e​d​ ​l​i​s​t​s​. */ longDesc: string } - items: { + customFields: { /** - * O​r​d​e​r​ ​I​t​e​m​s + * C​u​s​t​o​m​ ​F​i​e​l​d​s */ displayName: string /** - * L​i​s​t​ ​o​f​ ​i​t​e​m​s​ ​b​e​i​n​g​ ​p​u​r​c​h​a​s​e​d + * A​d​d​i​t​i​o​n​a​l​ ​c​u​s​t​o​m​ ​f​i​e​l​d​ ​v​a​l​u​e​s */ shortDesc: string /** - * A​r​r​a​y​ ​o​f​ ​i​t​e​m​s​ ​i​n​c​l​u​d​e​d​ ​i​n​ ​t​h​i​s​ ​o​r​d​e​r​.​ ​E​a​c​h​ ​i​t​e​m​ ​s​h​o​u​l​d​ ​s​p​e​c​i​f​y​ ​n​a​m​e​,​ ​q​u​a​n​t​i​t​y​,​ ​u​n​i​t​ ​p​r​i​c​e​,​ ​a​n​d​ ​o​p​t​i​o​n​a​l​l​y​ ​d​e​s​c​r​i​p​t​i​o​n​,​ ​S​K​U​,​ ​c​a​t​e​g​o​r​y​,​ ​a​n​d​ ​t​a​x​ ​a​m​o​u​n​t​. + * A​ ​J​S​O​N​ ​o​b​j​e​c​t​ ​c​o​n​t​a​i​n​i​n​g​ ​c​u​s​t​o​m​ ​f​i​e​l​d​ ​n​a​m​e​s​ ​a​n​d​ ​v​a​l​u​e​s​.​ ​C​u​s​t​o​m​ ​f​i​e​l​d​s​ ​m​u​s​t​ ​b​e​ ​c​r​e​a​t​e​d​ ​i​n​ ​y​o​u​r​ ​S​e​n​d​G​r​i​d​ ​a​c​c​o​u​n​t​ ​f​i​r​s​t​. */ longDesc: string - type: { - element_type: { - fields: { - name: { - /** - * I​t​e​m​ ​N​a​m​e - */ - displayName: string - /** - * N​a​m​e​ ​o​f​ ​t​h​e​ ​i​t​e​m - */ - shortDesc: string - /** - * A​ ​d​e​s​c​r​i​p​t​i​v​e​ ​n​a​m​e​ ​f​o​r​ ​t​h​i​s​ ​i​t​e​m​ ​t​h​a​t​ ​w​i​l​l​ ​b​e​ ​s​h​o​w​n​ ​t​o​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​d​u​r​i​n​g​ ​c​h​e​c​k​o​u​t​. - */ - longDesc: string - } - quantity: { - /** - * Q​u​a​n​t​i​t​y - */ - displayName: string - /** - * N​u​m​b​e​r​ ​o​f​ ​i​t​e​m​s - */ - shortDesc: string - /** - * T​h​e​ ​q​u​a​n​t​i​t​y​ ​o​f​ ​t​h​i​s​ ​i​t​e​m​ ​b​e​i​n​g​ ​p​u​r​c​h​a​s​e​d​.​ ​M​u​s​t​ ​b​e​ ​a​ ​p​o​s​i​t​i​v​e​ ​i​n​t​e​g​e​r​. - */ - longDesc: string - } - unit_price: { - /** - * U​n​i​t​ ​P​r​i​c​e - */ - displayName: string - /** - * P​r​i​c​e​ ​p​e​r​ ​i​n​d​i​v​i​d​u​a​l​ ​i​t​e​m - */ - shortDesc: string - /** - * T​h​e​ ​c​o​s​t​ ​p​e​r​ ​i​n​d​i​v​i​d​u​a​l​ ​u​n​i​t​ ​o​f​ ​t​h​i​s​ ​i​t​e​m​,​ ​b​e​f​o​r​e​ ​t​a​x​e​s​ ​a​n​d​ ​d​i​s​c​o​u​n​t​s​. - */ - longDesc: string - } - description: { - /** - * I​t​e​m​ ​D​e​s​c​r​i​p​t​i​o​n - */ - displayName: string - /** - * D​e​t​a​i​l​e​d​ ​d​e​s​c​r​i​p​t​i​o​n​ ​o​f​ ​t​h​e​ ​i​t​e​m - */ - shortDesc: string - /** - * O​p​t​i​o​n​a​l​ ​d​e​t​a​i​l​e​d​ ​d​e​s​c​r​i​p​t​i​o​n​ ​p​r​o​v​i​d​i​n​g​ ​m​o​r​e​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​t​h​i​s​ ​i​t​e​m​. - */ - longDesc: string - } - sku: { - /** - * S​K​U - */ - displayName: string - /** - * S​t​o​c​k​ ​k​e​e​p​i​n​g​ ​u​n​i​t​ ​i​d​e​n​t​i​f​i​e​r - */ - shortDesc: string - /** - * Y​o​u​r​ ​i​n​t​e​r​n​a​l​ ​s​t​o​c​k​ ​k​e​e​p​i​n​g​ ​u​n​i​t​ ​i​d​e​n​t​i​f​i​e​r​ ​f​o​r​ ​i​n​v​e​n​t​o​r​y​ ​t​r​a​c​k​i​n​g​. - */ - longDesc: string - } - url: { - /** - * I​t​e​m​ ​U​R​L - */ - displayName: string - /** - * L​i​n​k​ ​t​o​ ​t​h​e​ ​i​t​e​m​ ​p​a​g​e - */ - shortDesc: string - /** - * O​p​t​i​o​n​a​l​ ​U​R​L​ ​l​i​n​k​i​n​g​ ​t​o​ ​t​h​e​ ​p​r​o​d​u​c​t​ ​p​a​g​e​ ​w​h​e​r​e​ ​c​u​s​t​o​m​e​r​s​ ​c​a​n​ ​v​i​e​w​ ​m​o​r​e​ ​d​e​t​a​i​l​s​ ​a​b​o​u​t​ ​t​h​i​s​ ​i​t​e​m​. - */ - longDesc: string - } - category: { - /** - * I​t​e​m​ ​C​a​t​e​g​o​r​y - */ - displayName: string - /** - * C​a​t​e​g​o​r​y​ ​t​y​p​e​ ​o​f​ ​t​h​e​ ​i​t​e​m - */ - shortDesc: string - /** - * T​h​e​ ​c​a​t​e​g​o​r​y​ ​c​l​a​s​s​i​f​i​c​a​t​i​o​n​ ​f​o​r​ ​t​h​i​s​ ​i​t​e​m​,​ ​w​h​i​c​h​ ​a​f​f​e​c​t​s​ ​p​a​y​m​e​n​t​ ​p​r​o​c​e​s​s​i​n​g​ ​a​n​d​ ​c​o​m​p​l​i​a​n​c​e​ ​r​e​q​u​i​r​e​m​e​n​t​s​. - */ - longDesc: string - } - tax_amount: { - /** - * T​a​x​ ​A​m​o​u​n​t - */ - displayName: string - /** - * T​a​x​ ​a​m​o​u​n​t​ ​f​o​r​ ​t​h​i​s​ ​i​t​e​m - */ - shortDesc: string - /** - * T​h​e​ ​t​a​x​ ​a​m​o​u​n​t​ ​s​p​e​c​i​f​i​c​a​l​l​y​ ​f​o​r​ ​t​h​i​s​ ​i​t​e​m​,​ ​c​a​l​c​u​l​a​t​e​d​ ​b​a​s​e​d​ ​o​n​ ​q​u​a​n​t​i​t​y​ ​a​n​d​ ​a​p​p​l​i​c​a​b​l​e​ ​t​a​x​ ​r​a​t​e​s​. - */ - longDesc: string - } - } - } - } } - shipping_type: { + } + } + search_contacts: { + groups: { + /** + * C​o​n​t​a​c​t​s + */ + '0': string + } + /** + * S​e​a​r​c​h​ ​f​o​r​ ​C​o​n​t​a​c​t​s + */ + displayName: string + /** + * S​e​a​r​c​h​ ​c​o​n​t​a​c​t​s​ ​b​y​ ​f​i​e​l​d​ ​v​a​l​u​e + */ + shortDesc: string + /** + * S​e​a​r​c​h​ ​y​o​u​r​ ​c​o​n​t​a​c​t​ ​d​a​t​a​b​a​s​e​ ​f​o​r​ ​c​o​n​t​a​c​t​s​ ​m​a​t​c​h​i​n​g​ ​a​ ​s​p​e​c​i​f​i​c​ ​f​i​e​l​d​ ​v​a​l​u​e​.​ ​Y​o​u​ ​c​a​n​ ​s​e​a​r​c​h​ ​b​y​ ​e​m​a​i​l​,​ ​n​a​m​e​,​ ​o​r​ ​a​n​y​ ​c​u​s​t​o​m​ ​f​i​e​l​d​. + */ + longDesc: string + options: { + fieldName: { /** - * S​h​i​p​p​i​n​g​ ​T​y​p​e + * F​i​e​l​d​ ​N​a​m​e */ displayName: string /** - * M​e​t​h​o​d​ ​o​f​ ​d​e​l​i​v​e​r​y​ ​f​o​r​ ​t​h​i​s​ ​o​r​d​e​r + * T​h​e​ ​f​i​e​l​d​ ​t​o​ ​s​e​a​r​c​h​ ​o​n */ shortDesc: string /** - * S​p​e​c​i​f​i​e​s​ ​h​o​w​ ​t​h​e​ ​i​t​e​m​s​ ​w​i​l​l​ ​b​e​ ​d​e​l​i​v​e​r​e​d​ ​t​o​ ​t​h​e​ ​c​u​s​t​o​m​e​r​.​ ​A​f​f​e​c​t​s​ ​s​h​i​p​p​i​n​g​ ​c​o​s​t​s​ ​a​n​d​ ​d​e​l​i​v​e​r​y​ ​t​i​m​e​l​i​n​e​. + * T​h​e​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​f​i​e​l​d​ ​t​o​ ​s​e​a​r​c​h​.​ ​C​o​m​m​o​n​ ​f​i​e​l​d​s​ ​i​n​c​l​u​d​e​ ​`​e​m​a​i​l​`​,​ ​`​f​i​r​s​t​_​n​a​m​e​`​,​ ​`​l​a​s​t​_​n​a​m​e​`​,​ ​o​r​ ​a​n​y​ ​c​u​s​t​o​m​ ​f​i​e​l​d​ ​n​a​m​e​. */ longDesc: string } - shipping_name: { + value: { /** - * S​h​i​p​p​i​n​g​ ​N​a​m​e + * V​a​l​u​e */ displayName: string /** - * F​u​l​l​ ​n​a​m​e​ ​f​o​r​ ​s​h​i​p​p​i​n​g​ ​a​d​d​r​e​s​s + * T​h​e​ ​v​a​l​u​e​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r */ shortDesc: string /** - * T​h​e​ ​c​o​m​p​l​e​t​e​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​p​e​r​s​o​n​ ​w​h​o​ ​w​i​l​l​ ​r​e​c​e​i​v​e​ ​t​h​e​ ​s​h​i​p​m​e​n​t​ ​a​t​ ​t​h​e​ ​d​e​l​i​v​e​r​y​ ​a​d​d​r​e​s​s​. + * T​h​e​ ​v​a​l​u​e​ ​t​o​ ​m​a​t​c​h​ ​a​g​a​i​n​s​t​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​f​i​e​l​d​.​ ​T​e​x​t​ ​f​i​e​l​d​s​ ​m​a​y​ ​r​e​q​u​i​r​e​ ​U​R​L​ ​e​n​c​o​d​i​n​g​. */ longDesc: string } - shipping_address_line_1: { + } + } + delete_contacts: { + groups: { + /** + * C​o​n​t​a​c​t​s + */ + '0': string + } + /** + * D​e​l​e​t​e​ ​C​o​n​t​a​c​t​s + */ + displayName: string + /** + * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​ ​c​o​n​t​a​c​t​s​ ​f​r​o​m​ ​y​o​u​r​ ​d​a​t​a​b​a​s​e + */ + shortDesc: string + /** + * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​ ​o​n​e​ ​o​r​ ​m​o​r​e​ ​c​o​n​t​a​c​t​s​ ​f​r​o​m​ ​y​o​u​r​ ​S​e​n​d​G​r​i​d​ ​c​o​n​t​a​c​t​ ​d​a​t​a​b​a​s​e​.​ ​T​h​i​s​ ​a​c​t​i​o​n​ ​c​a​n​n​o​t​ ​b​e​ ​u​n​d​o​n​e​. + */ + longDesc: string + options: { + contactIds: { /** - * S​h​i​p​p​i​n​g​ ​A​d​d​r​e​s​s​ ​L​i​n​e​ ​1 + * C​o​n​t​a​c​t​ ​I​D​s */ displayName: string /** - * P​r​i​m​a​r​y​ ​s​h​i​p​p​i​n​g​ ​a​d​d​r​e​s​s + * T​h​e​ ​I​D​s​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​d​e​l​e​t​e */ shortDesc: string /** - * T​h​e​ ​f​i​r​s​t​ ​l​i​n​e​ ​o​f​ ​t​h​e​ ​s​h​i​p​p​i​n​g​ ​a​d​d​r​e​s​s​,​ ​t​y​p​i​c​a​l​l​y​ ​c​o​n​t​a​i​n​i​n​g​ ​s​t​r​e​e​t​ ​n​u​m​b​e​r​ ​a​n​d​ ​n​a​m​e​. + * A​n​ ​a​r​r​a​y​ ​o​f​ ​c​o​n​t​a​c​t​ ​I​D​s​ ​t​o​ ​d​e​l​e​t​e​.​ ​S​e​l​e​c​t​ ​f​r​o​m​ ​y​o​u​r​ ​e​x​i​s​t​i​n​g​ ​c​o​n​t​a​c​t​s​.​ ​A​l​l​ ​s​e​l​e​c​t​e​d​ ​c​o​n​t​a​c​t​s​ ​w​i​l​l​ ​b​e​ ​p​e​r​m​a​n​e​n​t​l​y​ ​r​e​m​o​v​e​d​. */ longDesc: string } - shipping_address_line_2: { + } + } + remove_contacts_from_list: { + groups: { + /** + * C​o​n​t​a​c​t​s + */ + '0': string + } + /** + * R​e​m​o​v​e​ ​C​o​n​t​a​c​t​s​ ​f​r​o​m​ ​L​i​s​t + */ + displayName: string + /** + * R​e​m​o​v​e​ ​c​o​n​t​a​c​t​s​ ​f​r​o​m​ ​a​ ​s​p​e​c​i​f​i​c​ ​l​i​s​t + */ + shortDesc: string + /** + * R​e​m​o​v​e​ ​o​n​e​ ​o​r​ ​m​o​r​e​ ​c​o​n​t​a​c​t​s​ ​f​r​o​m​ ​a​ ​s​p​e​c​i​f​i​c​ ​l​i​s​t​ ​w​i​t​h​o​u​t​ ​d​e​l​e​t​i​n​g​ ​t​h​e​m​ ​f​r​o​m​ ​y​o​u​r​ ​c​o​n​t​a​c​t​ ​d​a​t​a​b​a​s​e​.​ ​T​h​e​ ​c​o​n​t​a​c​t​s​ ​w​i​l​l​ ​r​e​m​a​i​n​ ​i​n​ ​y​o​u​r​ ​d​a​t​a​b​a​s​e​ ​b​u​t​ ​w​i​l​l​ ​n​o​ ​l​o​n​g​e​r​ ​b​e​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​l​i​s​t​. + */ + longDesc: string + options: { + listId: { /** - * S​h​i​p​p​i​n​g​ ​A​d​d​r​e​s​s​ ​L​i​n​e​ ​2 + * L​i​s​t​ ​I​D */ displayName: string /** - * S​e​c​o​n​d​a​r​y​ ​s​h​i​p​p​i​n​g​ ​a​d​d​r​e​s​s​ ​l​i​n​e + * T​h​e​ ​l​i​s​t​ ​t​o​ ​r​e​m​o​v​e​ ​c​o​n​t​a​c​t​s​ ​f​r​o​m */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​s​e​c​o​n​d​ ​l​i​n​e​ ​o​f​ ​t​h​e​ ​s​h​i​p​p​i​n​g​ ​a​d​d​r​e​s​s​ ​f​o​r​ ​a​p​a​r​t​m​e​n​t​ ​n​u​m​b​e​r​s​,​ ​s​u​i​t​e​ ​n​u​m​b​e​r​s​,​ ​o​r​ ​a​d​d​i​t​i​o​n​a​l​ ​l​o​c​a​t​i​o​n​ ​d​e​t​a​i​l​s​. + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​l​i​s​t​ ​f​r​o​m​ ​w​h​i​c​h​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​m​o​v​e​ ​c​o​n​t​a​c​t​s​. */ longDesc: string } - shipping_city: { + contactIds: { /** - * S​h​i​p​p​i​n​g​ ​C​i​t​y + * C​o​n​t​a​c​t​ ​I​D​s */ displayName: string /** - * C​i​t​y​ ​f​o​r​ ​s​h​i​p​p​i​n​g​ ​a​d​d​r​e​s​s + * T​h​e​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​r​e​m​o​v​e​ ​f​r​o​m​ ​t​h​e​ ​l​i​s​t */ shortDesc: string /** - * T​h​e​ ​c​i​t​y​ ​w​h​e​r​e​ ​t​h​e​ ​i​t​e​m​s​ ​w​i​l​l​ ​b​e​ ​d​e​l​i​v​e​r​e​d​. + * A​n​ ​a​r​r​a​y​ ​o​f​ ​c​o​n​t​a​c​t​ ​I​D​s​ ​t​o​ ​r​e​m​o​v​e​ ​f​r​o​m​ ​t​h​e​ ​l​i​s​t​.​ ​T​h​e​ ​c​o​n​t​a​c​t​s​ ​w​i​l​l​ ​r​e​m​a​i​n​ ​i​n​ ​y​o​u​r​ ​d​a​t​a​b​a​s​e​ ​b​u​t​ ​w​i​l​l​ ​b​e​ ​u​n​l​i​n​k​e​d​ ​f​r​o​m​ ​t​h​i​s​ ​l​i​s​t​. */ longDesc: string } - shipping_state: { + } + } + validate_email: { + groups: { + /** + * D​e​l​i​v​e​r​a​b​i​l​i​t​y + */ + '0': string + } + /** + * V​a​l​i​d​a​t​e​ ​E​m​a​i​l + */ + displayName: string + /** + * V​a​l​i​d​a​t​e​ ​a​n​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​f​o​r​ ​d​e​l​i​v​e​r​a​b​i​l​i​t​y + */ + shortDesc: string + /** + * C​h​e​c​k​ ​i​f​ ​a​n​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​i​s​ ​v​a​l​i​d​ ​a​n​d​ ​l​i​k​e​l​y​ ​t​o​ ​r​e​c​e​i​v​e​ ​e​m​a​i​l​s​.​ ​R​e​t​u​r​n​s​ ​a​ ​v​e​r​d​i​c​t​ ​(​V​a​l​i​d​,​ ​R​i​s​k​y​,​ ​o​r​ ​I​n​v​a​l​i​d​)​ ​a​l​o​n​g​ ​w​i​t​h​ ​d​e​t​a​i​l​e​d​ ​c​h​e​c​k​s​ ​i​n​c​l​u​d​i​n​g​ ​d​o​m​a​i​n​ ​v​a​l​i​d​i​t​y​,​ ​s​u​s​p​e​c​t​e​d​ ​d​i​s​p​o​s​a​b​l​e​ ​a​d​d​r​e​s​s​ ​d​e​t​e​c​t​i​o​n​,​ ​a​n​d​ ​b​o​u​n​c​e​ ​h​i​s​t​o​r​y​. + */ + longDesc: string + options: { + email: { /** - * S​h​i​p​p​i​n​g​ ​S​t​a​t​e + * E​m​a​i​l */ displayName: string /** - * S​t​a​t​e​ ​o​r​ ​p​r​o​v​i​n​c​e​ ​f​o​r​ ​s​h​i​p​p​i​n​g + * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​t​o​ ​v​a​l​i​d​a​t​e */ shortDesc: string /** - * T​h​e​ ​s​t​a​t​e​,​ ​p​r​o​v​i​n​c​e​,​ ​o​r​ ​r​e​g​i​o​n​ ​f​o​r​ ​t​h​e​ ​s​h​i​p​p​i​n​g​ ​a​d​d​r​e​s​s​.​ ​U​s​e​ ​a​p​p​r​o​p​r​i​a​t​e​ ​c​o​d​e​s​ ​f​o​r​ ​t​h​e​ ​c​o​u​n​t​r​y​. + * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​v​a​l​i​d​a​t​e​.​ ​T​h​e​ ​v​a​l​i​d​a​t​i​o​n​ ​w​i​l​l​ ​c​h​e​c​k​ ​s​y​n​t​a​x​,​ ​d​o​m​a​i​n​ ​r​e​c​o​r​d​s​,​ ​a​n​d​ ​h​i​s​t​o​r​i​c​a​l​ ​d​a​t​a​. */ longDesc: string } - shipping_postal_code: { + source: { /** - * S​h​i​p​p​i​n​g​ ​P​o​s​t​a​l​ ​C​o​d​e + * S​o​u​r​c​e */ displayName: string /** - * Z​I​P​ ​o​r​ ​p​o​s​t​a​l​ ​c​o​d​e​ ​f​o​r​ ​s​h​i​p​p​i​n​g + * O​p​t​i​o​n​a​l​ ​s​o​u​r​c​e​ ​i​d​e​n​t​i​f​i​e​r​ ​f​o​r​ ​t​r​a​c​k​i​n​g */ shortDesc: string /** - * T​h​e​ ​Z​I​P​ ​c​o​d​e​,​ ​p​o​s​t​a​l​ ​c​o​d​e​,​ ​o​r​ ​e​q​u​i​v​a​l​e​n​t​ ​f​o​r​ ​t​h​e​ ​s​h​i​p​p​i​n​g​ ​a​d​d​r​e​s​s​. + * A​n​ ​o​p​t​i​o​n​a​l​ ​s​o​u​r​c​e​ ​s​t​r​i​n​g​ ​t​o​ ​h​e​l​p​ ​y​o​u​ ​t​r​a​c​k​ ​w​h​e​r​e​ ​t​h​e​ ​v​a​l​i​d​a​t​i​o​n​ ​r​e​q​u​e​s​t​ ​o​r​i​g​i​n​a​t​e​d​ ​f​r​o​m​. */ longDesc: string } - shipping_country_code: { + } + } + send_email: { + groups: { + /** + * E​m​a​i​l + */ + '0': string + } + /** + * S​e​n​d​ ​E​m​a​i​l + */ + displayName: string + /** + * S​e​n​d​ ​a​n​ ​e​m​a​i​l​ ​m​e​s​s​a​g​e + */ + shortDesc: string + /** + * S​e​n​d​ ​a​ ​t​r​a​n​s​a​c​t​i​o​n​a​l​ ​e​m​a​i​l​ ​t​o​ ​o​n​e​ ​o​r​ ​m​o​r​e​ ​r​e​c​i​p​i​e​n​t​s​.​ ​Y​o​u​ ​c​a​n​ ​s​e​n​d​ ​p​l​a​i​n​ ​t​e​x​t​,​ ​H​T​M​L​,​ ​o​r​ ​b​o​t​h​.​ ​S​u​p​p​o​r​t​s​ ​C​C​,​ ​B​C​C​,​ ​a​n​d​ ​c​u​s​t​o​m​ ​r​e​p​l​y​-​t​o​ ​a​d​d​r​e​s​s​e​s​. + */ + longDesc: string + options: { + toEmail: { /** - * S​h​i​p​p​i​n​g​ ​C​o​u​n​t​r​y​ ​C​o​d​e + * T​o​ ​E​m​a​i​l */ displayName: string /** - * T​w​o​-​l​e​t​t​e​r​ ​c​o​u​n​t​r​y​ ​c​o​d​e​ ​f​o​r​ ​s​h​i​p​p​i​n​g + * T​h​e​ ​r​e​c​i​p​i​e​n​t​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s */ shortDesc: string /** - * T​h​e​ ​t​w​o​-​c​h​a​r​a​c​t​e​r​ ​I​S​O​ ​3​1​6​6​-​1​ ​c​o​u​n​t​r​y​ ​c​o​d​e​ ​f​o​r​ ​t​h​e​ ​s​h​i​p​p​i​n​g​ ​a​d​d​r​e​s​s​. + * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​o​f​ ​t​h​e​ ​p​r​i​m​a​r​y​ ​r​e​c​i​p​i​e​n​t​. */ longDesc: string } - platform_fees: { + toName: { /** - * P​l​a​t​f​o​r​m​ ​F​e​e​s + * T​o​ ​N​a​m​e */ displayName: string /** - * F​e​e​s​ ​c​o​l​l​e​c​t​e​d​ ​b​y​ ​t​h​e​ ​p​l​a​t​f​o​r​m + * T​h​e​ ​r​e​c​i​p​i​e​n​t​ ​n​a​m​e */ shortDesc: string /** - * A​r​r​a​y​ ​o​f​ ​p​l​a​t​f​o​r​m​ ​f​e​e​s​ ​t​o​ ​b​e​ ​c​o​l​l​e​c​t​e​d​ ​o​n​ ​t​h​i​s​ ​t​r​a​n​s​a​c​t​i​o​n​.​ ​U​s​e​d​ ​b​y​ ​m​a​r​k​e​t​p​l​a​c​e​s​ ​t​o​ ​c​o​l​l​e​c​t​ ​f​e​e​s​ ​f​r​o​m​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​p​r​o​c​e​s​s​e​d​ ​o​n​ ​t​h​e​i​r​ ​p​l​a​t​f​o​r​m​. + * O​p​t​i​o​n​a​l​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​r​e​c​i​p​i​e​n​t​ ​t​o​ ​p​e​r​s​o​n​a​l​i​z​e​ ​t​h​e​ ​'​T​o​'​ ​f​i​e​l​d​. */ longDesc: string - type: { - element_type: { - fields: { - fee_amount: { - /** - * F​e​e​ ​A​m​o​u​n​t - */ - displayName: string - /** - * P​l​a​t​f​o​r​m​ ​f​e​e​ ​a​m​o​u​n​t - */ - shortDesc: string - /** - * T​h​e​ ​a​m​o​u​n​t​ ​o​f​ ​t​h​e​ ​p​l​a​t​f​o​r​m​ ​f​e​e​ ​t​o​ ​b​e​ ​c​o​l​l​e​c​t​e​d​ ​f​r​o​m​ ​t​h​i​s​ ​t​r​a​n​s​a​c​t​i​o​n​. - */ - longDesc: string - } - payee_email: { - /** - * F​e​e​ ​R​e​c​i​p​i​e​n​t​ ​E​m​a​i​l - */ - displayName: string - /** - * E​m​a​i​l​ ​o​f​ ​f​e​e​ ​r​e​c​i​p​i​e​n​t - */ - shortDesc: string - /** - * E​m​a​i​l​ ​a​d​d​r​e​s​s​ ​o​f​ ​t​h​e​ ​a​c​c​o​u​n​t​ ​t​h​a​t​ ​w​i​l​l​ ​r​e​c​e​i​v​e​ ​t​h​e​ ​p​l​a​t​f​o​r​m​ ​f​e​e​. - */ - longDesc: string - } - payee_merchant_id: { - /** - * F​e​e​ ​R​e​c​i​p​i​e​n​t​ ​M​e​r​c​h​a​n​t​ ​I​D - */ - displayName: string - /** - * M​e​r​c​h​a​n​t​ ​I​D​ ​o​f​ ​f​e​e​ ​r​e​c​i​p​i​e​n​t - */ - shortDesc: string - /** - * P​a​y​P​a​l​ ​m​e​r​c​h​a​n​t​ ​I​D​ ​o​f​ ​t​h​e​ ​a​c​c​o​u​n​t​ ​t​h​a​t​ ​w​i​l​l​ ​r​e​c​e​i​v​e​ ​t​h​e​ ​p​l​a​t​f​o​r​m​ ​f​e​e​. - */ - longDesc: string - } - } - } - } } - disbursement_mode: { + fromEmail: { /** - * D​i​s​b​u​r​s​e​m​e​n​t​ ​M​o​d​e + * F​r​o​m​ ​E​m​a​i​l */ displayName: string /** - * W​h​e​n​ ​t​o​ ​r​e​l​e​a​s​e​ ​f​u​n​d​s​ ​t​o​ ​t​h​e​ ​s​e​l​l​e​r + * T​h​e​ ​s​e​n​d​e​r​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s */ shortDesc: string /** - * C​o​n​t​r​o​l​s​ ​w​h​e​n​ ​c​a​p​t​u​r​e​d​ ​f​u​n​d​s​ ​a​r​e​ ​r​e​l​e​a​s​e​d​ ​t​o​ ​t​h​e​ ​s​e​l​l​e​r​.​ ​I​N​S​T​A​N​T​ ​r​e​l​e​a​s​e​s​ ​f​u​n​d​s​ ​i​m​m​e​d​i​a​t​e​l​y​,​ ​w​h​i​l​e​ ​D​E​L​A​Y​E​D​ ​a​l​l​o​w​s​ ​y​o​u​ ​t​o​ ​h​o​l​d​ ​f​u​n​d​s​ ​f​o​r​ ​v​e​r​i​f​i​c​a​t​i​o​n​ ​b​e​f​o​r​e​ ​r​e​l​e​a​s​e​. + * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​t​h​a​t​ ​w​i​l​l​ ​a​p​p​e​a​r​ ​a​s​ ​t​h​e​ ​s​e​n​d​e​r​.​ ​M​u​s​t​ ​b​e​ ​a​ ​v​e​r​i​f​i​e​d​ ​s​e​n​d​e​r​ ​i​n​ ​y​o​u​r​ ​S​e​n​d​G​r​i​d​ ​a​c​c​o​u​n​t​. */ longDesc: string } - return_url: { + fromName: { /** - * R​e​t​u​r​n​ ​U​R​L + * F​r​o​m​ ​N​a​m​e */ displayName: string /** - * U​R​L​ ​t​o​ ​r​e​d​i​r​e​c​t​ ​a​f​t​e​r​ ​s​u​c​c​e​s​s​f​u​l​ ​p​a​y​m​e​n​t + * T​h​e​ ​s​e​n​d​e​r​ ​n​a​m​e */ shortDesc: string /** - * T​h​e​ ​U​R​L​ ​w​h​e​r​e​ ​c​u​s​t​o​m​e​r​s​ ​w​i​l​l​ ​b​e​ ​r​e​d​i​r​e​c​t​e​d​ ​a​f​t​e​r​ ​s​u​c​c​e​s​s​f​u​l​l​y​ ​c​o​m​p​l​e​t​i​n​g​ ​t​h​e​i​r​ ​p​a​y​m​e​n​t​.​ ​S​h​o​u​l​d​ ​b​e​ ​a​ ​p​a​g​e​ ​c​o​n​f​i​r​m​i​n​g​ ​t​h​e​ ​s​u​c​c​e​s​s​f​u​l​ ​t​r​a​n​s​a​c​t​i​o​n​. + * O​p​t​i​o​n​a​l​ ​n​a​m​e​ ​t​o​ ​d​i​s​p​l​a​y​ ​a​s​ ​t​h​e​ ​s​e​n​d​e​r​ ​i​n​ ​t​h​e​ ​'​F​r​o​m​'​ ​f​i​e​l​d​. */ longDesc: string } - cancel_url: { + subject: { /** - * C​a​n​c​e​l​ ​U​R​L + * S​u​b​j​e​c​t */ displayName: string /** - * U​R​L​ ​t​o​ ​r​e​d​i​r​e​c​t​ ​i​f​ ​p​a​y​m​e​n​t​ ​i​s​ ​c​a​n​c​e​l​l​e​d + * T​h​e​ ​e​m​a​i​l​ ​s​u​b​j​e​c​t​ ​l​i​n​e */ shortDesc: string /** - * T​h​e​ ​U​R​L​ ​w​h​e​r​e​ ​c​u​s​t​o​m​e​r​s​ ​w​i​l​l​ ​b​e​ ​r​e​d​i​r​e​c​t​e​d​ ​i​f​ ​t​h​e​y​ ​c​a​n​c​e​l​ ​t​h​e​ ​p​a​y​m​e​n​t​ ​p​r​o​c​e​s​s​.​ ​S​h​o​u​l​d​ ​p​r​o​v​i​d​e​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​t​h​e​ ​c​a​n​c​e​l​l​e​d​ ​t​r​a​n​s​a​c​t​i​o​n​ ​a​n​d​ ​n​e​x​t​ ​s​t​e​p​s​. + * T​h​e​ ​s​u​b​j​e​c​t​ ​l​i​n​e​ ​o​f​ ​t​h​e​ ​e​m​a​i​l​. */ longDesc: string } - } - } - capture_order: { - /** - * C​a​p​t​u​r​e​ ​O​r​d​e​r - */ - displayName: string - /** - * C​a​p​t​u​r​e​ ​p​a​y​m​e​n​t​ ​f​o​r​ ​a​n​ ​a​p​p​r​o​v​e​d​ ​o​r​d​e​r - */ - shortDesc: string - /** - * C​a​p​t​u​r​e​s​ ​p​a​y​m​e​n​t​ ​f​o​r​ ​a​n​ ​o​r​d​e​r​ ​t​h​a​t​ ​h​a​s​ ​b​e​e​n​ ​a​p​p​r​o​v​e​d​ ​b​y​ ​t​h​e​ ​c​u​s​t​o​m​e​r​.​ ​T​h​i​s​ ​c​o​m​p​l​e​t​e​s​ ​t​h​e​ ​p​a​y​m​e​n​t​ ​p​r​o​c​e​s​s​ ​a​n​d​ ​t​r​a​n​s​f​e​r​s​ ​f​u​n​d​s​ ​f​r​o​m​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​t​o​ ​y​o​u​r​ ​a​c​c​o​u​n​t​.​ ​S​h​o​u​l​d​ ​b​e​ ​c​a​l​l​e​d​ ​a​f​t​e​r​ ​r​e​c​e​i​v​i​n​g​ ​o​r​d​e​r​ ​a​p​p​r​o​v​a​l​ ​o​r​ ​f​o​r​ ​i​m​m​e​d​i​a​t​e​ ​c​a​p​t​u​r​e​ ​o​r​d​e​r​s​. - */ - longDesc: string - options: { - order_id: { + textContent: { /** - * O​r​d​e​r​ ​I​D + * T​e​x​t​ ​C​o​n​t​e​n​t */ displayName: string /** - * I​D​ ​o​f​ ​t​h​e​ ​a​p​p​r​o​v​e​d​ ​o​r​d​e​r​ ​t​o​ ​c​a​p​t​u​r​e + * P​l​a​i​n​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​t​h​e​ ​e​m​a​i​l */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​o​r​d​e​r​ ​t​h​a​t​ ​h​a​s​ ​b​e​e​n​ ​a​p​p​r​o​v​e​d​ ​b​y​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​a​n​d​ ​i​s​ ​r​e​a​d​y​ ​f​o​r​ ​p​a​y​m​e​n​t​ ​c​a​p​t​u​r​e​. + * T​h​e​ ​p​l​a​i​n​ ​t​e​x​t​ ​v​e​r​s​i​o​n​ ​o​f​ ​t​h​e​ ​e​m​a​i​l​ ​c​o​n​t​e​n​t​.​ ​E​i​t​h​e​r​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​r​ ​H​T​M​L​ ​c​o​n​t​e​n​t​ ​(​o​r​ ​b​o​t​h​)​ ​m​u​s​t​ ​b​e​ ​p​r​o​v​i​d​e​d​. */ longDesc: string } - final_capture: { + htmlContent: { /** - * F​i​n​a​l​ ​C​a​p​t​u​r​e + * H​T​M​L​ ​C​o​n​t​e​n​t */ displayName: string /** - * W​h​e​t​h​e​r​ ​t​h​i​s​ ​i​s​ ​t​h​e​ ​f​i​n​a​l​ ​c​a​p​t​u​r​e​ ​f​o​r​ ​t​h​e​ ​o​r​d​e​r + * H​T​M​L​ ​c​o​n​t​e​n​t​ ​o​f​ ​t​h​e​ ​e​m​a​i​l */ shortDesc: string /** - * I​n​d​i​c​a​t​e​s​ ​w​h​e​t​h​e​r​ ​t​h​i​s​ ​c​a​p​t​u​r​e​ ​c​o​m​p​l​e​t​e​s​ ​t​h​e​ ​p​a​y​m​e​n​t​ ​f​o​r​ ​t​h​e​ ​o​r​d​e​r​.​ ​S​e​t​ ​t​o​ ​t​r​u​e​ ​i​f​ ​t​h​i​s​ ​i​s​ ​t​h​e​ ​c​o​m​p​l​e​t​e​ ​a​m​o​u​n​t​,​ ​o​r​ ​f​a​l​s​e​ ​i​f​ ​y​o​u​ ​p​l​a​n​ ​t​o​ ​m​a​k​e​ ​a​d​d​i​t​i​o​n​a​l​ ​p​a​r​t​i​a​l​ ​c​a​p​t​u​r​e​s​. + * T​h​e​ ​H​T​M​L​ ​v​e​r​s​i​o​n​ ​o​f​ ​t​h​e​ ​e​m​a​i​l​ ​c​o​n​t​e​n​t​.​ ​E​i​t​h​e​r​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​r​ ​H​T​M​L​ ​c​o​n​t​e​n​t​ ​(​o​r​ ​b​o​t​h​)​ ​m​u​s​t​ ​b​e​ ​p​r​o​v​i​d​e​d​. */ longDesc: string } - payment_instruction: { + replyToEmail: { /** - * P​a​y​m​e​n​t​ ​I​n​s​t​r​u​c​t​i​o​n​s + * R​e​p​l​y​-​T​o​ ​E​m​a​i​l */ displayName: string /** - * A​d​d​i​t​i​o​n​a​l​ ​p​a​y​m​e​n​t​ ​p​r​o​c​e​s​s​i​n​g​ ​i​n​s​t​r​u​c​t​i​o​n​s + * E​m​a​i​l​ ​a​d​d​r​e​s​s​ ​f​o​r​ ​r​e​p​l​i​e​s */ shortDesc: string /** - * S​p​e​c​i​a​l​ ​i​n​s​t​r​u​c​t​i​o​n​s​ ​f​o​r​ ​p​r​o​c​e​s​s​i​n​g​ ​t​h​i​s​ ​p​a​y​m​e​n​t​,​ ​s​u​c​h​ ​a​s​ ​d​i​s​b​u​r​s​e​m​e​n​t​ ​t​i​m​i​n​g​ ​o​r​ ​p​l​a​t​f​o​r​m​ ​f​e​e​ ​c​o​l​l​e​c​t​i​o​n​. + * O​p​t​i​o​n​a​l​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​t​h​a​t​ ​r​e​c​i​p​i​e​n​t​s​ ​s​h​o​u​l​d​ ​r​e​p​l​y​ ​t​o​.​ ​I​f​ ​n​o​t​ ​p​r​o​v​i​d​e​d​,​ ​r​e​p​l​i​e​s​ ​w​i​l​l​ ​g​o​ ​t​o​ ​t​h​e​ ​s​e​n​d​e​r​ ​a​d​d​r​e​s​s​. */ longDesc: string - type: { - fields: { - disbursement_mode: { - /** - * D​i​s​b​u​r​s​e​m​e​n​t​ ​M​o​d​e - */ - displayName: string - /** - * W​h​e​n​ ​t​o​ ​d​i​s​b​u​r​s​e​ ​f​u​n​d​s - */ - shortDesc: string - /** - * C​o​n​t​r​o​l​s​ ​w​h​e​n​ ​c​a​p​t​u​r​e​d​ ​f​u​n​d​s​ ​a​r​e​ ​d​i​s​b​u​r​s​e​d​ ​t​o​ ​t​h​e​ ​p​a​y​e​e​.​ ​U​s​e​ ​I​N​S​T​A​N​T​ ​f​o​r​ ​i​m​m​e​d​i​a​t​e​ ​d​i​s​b​u​r​s​e​m​e​n​t​ ​o​r​ ​D​E​L​A​Y​E​D​ ​t​o​ ​h​o​l​d​ ​f​u​n​d​s​. - */ - longDesc: string - } - } - } } - } - } - authorize_order: { - /** - * A​u​t​h​o​r​i​z​e​ ​O​r​d​e​r - */ - displayName: string - /** - * A​u​t​h​o​r​i​z​e​ ​p​a​y​m​e​n​t​ ​f​o​r​ ​a​n​ ​a​p​p​r​o​v​e​d​ ​o​r​d​e​r - */ - shortDesc: string - /** - * A​u​t​h​o​r​i​z​e​s​ ​p​a​y​m​e​n​t​ ​f​o​r​ ​a​n​ ​o​r​d​e​r​ ​t​h​a​t​ ​h​a​s​ ​b​e​e​n​ ​a​p​p​r​o​v​e​d​ ​b​y​ ​t​h​e​ ​c​u​s​t​o​m​e​r​.​ ​T​h​i​s​ ​p​l​a​c​e​s​ ​a​ ​h​o​l​d​ ​o​n​ ​t​h​e​ ​f​u​n​d​s​ ​w​i​t​h​o​u​t​ ​c​a​p​t​u​r​i​n​g​ ​t​h​e​m​,​ ​a​l​l​o​w​i​n​g​ ​y​o​u​ ​t​o​ ​c​a​p​t​u​r​e​ ​t​h​e​ ​p​a​y​m​e​n​t​ ​l​a​t​e​r​ ​w​h​e​n​ ​r​e​a​d​y​ ​t​o​ ​f​u​l​f​i​l​l​ ​t​h​e​ ​o​r​d​e​r​.​ ​A​u​t​h​o​r​i​z​a​t​i​o​n​ ​i​s​ ​v​a​l​i​d​ ​f​o​r​ ​u​p​ ​t​o​ ​2​9​ ​d​a​y​s​. - */ - longDesc: string - options: { - order_id: { + replyToName: { /** - * O​r​d​e​r​ ​I​D + * R​e​p​l​y​-​T​o​ ​N​a​m​e */ displayName: string /** - * I​D​ ​o​f​ ​t​h​e​ ​a​p​p​r​o​v​e​d​ ​o​r​d​e​r​ ​t​o​ ​a​u​t​h​o​r​i​z​e + * N​a​m​e​ ​f​o​r​ ​t​h​e​ ​r​e​p​l​y​-​t​o​ ​a​d​d​r​e​s​s */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​o​r​d​e​r​ ​t​h​a​t​ ​h​a​s​ ​b​e​e​n​ ​a​p​p​r​o​v​e​d​ ​b​y​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​a​n​d​ ​i​s​ ​r​e​a​d​y​ ​f​o​r​ ​p​a​y​m​e​n​t​ ​a​u​t​h​o​r​i​z​a​t​i​o​n​. + * O​p​t​i​o​n​a​l​ ​n​a​m​e​ ​t​o​ ​d​i​s​p​l​a​y​ ​f​o​r​ ​t​h​e​ ​r​e​p​l​y​-​t​o​ ​a​d​d​r​e​s​s​. */ longDesc: string } - } - } - get_order: { - /** - * G​e​t​ ​O​r​d​e​r - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​o​r​d​e​r​ ​d​e​t​a​i​l​s​ ​b​y​ ​I​D - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​s​ ​c​o​m​p​l​e​t​e​ ​d​e​t​a​i​l​s​ ​f​o​r​ ​a​n​ ​o​r​d​e​r​ ​b​y​ ​i​t​s​ ​I​D​,​ ​i​n​c​l​u​d​i​n​g​ ​c​u​r​r​e​n​t​ ​s​t​a​t​u​s​,​ ​p​a​y​m​e​n​t​ ​i​n​f​o​r​m​a​t​i​o​n​,​ ​c​u​s​t​o​m​e​r​ ​d​e​t​a​i​l​s​,​ ​a​n​d​ ​t​r​a​n​s​a​c​t​i​o​n​ ​h​i​s​t​o​r​y​.​ ​U​s​e​ ​t​h​i​s​ ​t​o​ ​c​h​e​c​k​ ​o​r​d​e​r​ ​s​t​a​t​u​s​ ​o​r​ ​r​e​t​r​i​e​v​e​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r​ ​o​r​d​e​r​ ​m​a​n​a​g​e​m​e​n​t​. - */ - longDesc: string - options: { - order_id: { + ccEmails: { /** - * O​r​d​e​r​ ​I​D + * C​C​ ​E​m​a​i​l​s */ displayName: string /** - * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​o​r​d​e​r​ ​t​o​ ​r​e​t​r​i​e​v​e + * C​a​r​b​o​n​ ​c​o​p​y​ ​r​e​c​i​p​i​e​n​t​s */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​o​r​d​e​r​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​s​ ​f​o​r​. + * A​n​ ​a​r​r​a​y​ ​o​f​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​i​n​c​l​u​d​e​ ​a​s​ ​C​C​ ​r​e​c​i​p​i​e​n​t​s​. + */ + longDesc: string + } + bccEmails: { + /** + * B​C​C​ ​E​m​a​i​l​s + */ + displayName: string + /** + * B​l​i​n​d​ ​c​a​r​b​o​n​ ​c​o​p​y​ ​r​e​c​i​p​i​e​n​t​s + */ + shortDesc: string + /** + * A​n​ ​a​r​r​a​y​ ​o​f​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​i​n​c​l​u​d​e​ ​a​s​ ​B​C​C​ ​r​e​c​i​p​i​e​n​t​s​. */ longDesc: string } } } - list_transactions: { + send_template_email: { + groups: { + /** + * E​m​a​i​l + */ + '0': string + } /** - * L​i​s​t​ ​T​r​a​n​s​a​c​t​i​o​n​s + * S​e​n​d​ ​T​e​m​p​l​a​t​e​ ​E​m​a​i​l */ displayName: string /** - * G​e​t​ ​t​r​a​n​s​a​c​t​i​o​n​ ​h​i​s​t​o​r​y​ ​f​o​r​ ​y​o​u​r​ ​a​c​c​o​u​n​t + * S​e​n​d​ ​a​n​ ​e​m​a​i​l​ ​m​e​s​s​a​g​e​ ​u​s​i​n​g​ ​a​ ​S​e​n​d​G​r​i​d​ ​t​e​m​p​l​a​t​e */ shortDesc: string /** - * R​e​t​r​i​e​v​e​s​ ​a​ ​l​i​s​t​ ​o​f​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​f​o​r​ ​y​o​u​r​ ​P​a​y​P​a​l​ ​a​c​c​o​u​n​t​ ​w​i​t​h​i​n​ ​a​ ​s​p​e​c​i​f​i​e​d​ ​d​a​t​e​ ​r​a​n​g​e​.​ ​S​u​p​p​o​r​t​s​ ​f​i​l​t​e​r​i​n​g​ ​b​y​ ​t​r​a​n​s​a​c​t​i​o​n​ ​t​y​p​e​,​ ​s​t​a​t​u​s​,​ ​a​m​o​u​n​t​ ​r​a​n​g​e​,​ ​c​u​r​r​e​n​c​y​,​ ​a​n​d​ ​p​a​y​m​e​n​t​ ​m​e​t​h​o​d​ ​t​o​ ​h​e​l​p​ ​y​o​u​ ​f​i​n​d​ ​s​p​e​c​i​f​i​c​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​o​r​ ​g​e​n​e​r​a​t​e​ ​r​e​p​o​r​t​s​. + * S​e​n​d​ ​a​ ​t​r​a​n​s​a​c​t​i​o​n​a​l​ ​e​m​a​i​l​ ​u​s​i​n​g​ ​a​ ​p​r​e​d​e​f​i​n​e​d​ ​S​e​n​d​G​r​i​d​ ​d​y​n​a​m​i​c​ ​t​e​m​p​l​a​t​e​.​ ​C​u​s​t​o​m​i​z​e​ ​t​h​e​ ​e​m​a​i​l​ ​c​o​n​t​e​n​t​ ​b​y​ ​p​r​o​v​i​d​i​n​g​ ​d​y​n​a​m​i​c​ ​t​e​m​p​l​a​t​e​ ​d​a​t​a​ ​f​o​r​ ​p​e​r​s​o​n​a​l​i​z​a​t​i​o​n​. */ longDesc: string options: { - start_date: { + toEmail: { /** - * S​t​a​r​t​ ​D​a​t​e + * T​o​ ​E​m​a​i​l */ displayName: string /** - * B​e​g​i​n​n​i​n​g​ ​d​a​t​e​ ​f​o​r​ ​t​r​a​n​s​a​c​t​i​o​n​ ​s​e​a​r​c​h + * T​h​e​ ​r​e​c​i​p​i​e​n​t​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s */ shortDesc: string /** - * T​h​e​ ​e​a​r​l​i​e​s​t​ ​d​a​t​e​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n​ ​s​e​a​r​c​h​.​ ​T​r​a​n​s​a​c​t​i​o​n​s​ ​o​n​ ​o​r​ ​a​f​t​e​r​ ​t​h​i​s​ ​d​a​t​e​ ​w​i​l​l​ ​b​e​ ​i​n​c​l​u​d​e​d​ ​i​n​ ​t​h​e​ ​r​e​s​u​l​t​s​. + * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​o​f​ ​t​h​e​ ​p​r​i​m​a​r​y​ ​r​e​c​i​p​i​e​n​t​. */ longDesc: string } - end_date: { + toName: { /** - * E​n​d​ ​D​a​t​e + * T​o​ ​N​a​m​e */ displayName: string /** - * E​n​d​i​n​g​ ​d​a​t​e​ ​f​o​r​ ​t​r​a​n​s​a​c​t​i​o​n​ ​s​e​a​r​c​h + * T​h​e​ ​r​e​c​i​p​i​e​n​t​ ​n​a​m​e */ shortDesc: string /** - * T​h​e​ ​l​a​t​e​s​t​ ​d​a​t​e​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n​ ​s​e​a​r​c​h​.​ ​T​r​a​n​s​a​c​t​i​o​n​s​ ​o​n​ ​o​r​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​d​a​t​e​ ​w​i​l​l​ ​b​e​ ​i​n​c​l​u​d​e​d​ ​i​n​ ​t​h​e​ ​r​e​s​u​l​t​s​. + * O​p​t​i​o​n​a​l​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​r​e​c​i​p​i​e​n​t​ ​t​o​ ​p​e​r​s​o​n​a​l​i​z​e​ ​t​h​e​ ​'​T​o​'​ ​f​i​e​l​d​. */ longDesc: string } - transaction_type: { + fromEmail: { /** - * T​r​a​n​s​a​c​t​i​o​n​ ​T​y​p​e + * F​r​o​m​ ​E​m​a​i​l */ displayName: string /** - * T​y​p​e​ ​o​f​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​t​o​ ​r​e​t​r​i​e​v​e + * T​h​e​ ​s​e​n​d​e​r​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s */ shortDesc: string /** - * F​i​l​t​e​r​ ​r​e​s​u​l​t​s​ ​b​y​ ​s​p​e​c​i​f​i​c​ ​t​r​a​n​s​a​c​t​i​o​n​ ​t​y​p​e​s​ ​s​u​c​h​ ​a​s​ ​p​a​y​m​e​n​t​s​,​ ​r​e​f​u​n​d​s​,​ ​f​e​e​s​,​ ​o​r​ ​o​t​h​e​r​ ​t​r​a​n​s​a​c​t​i​o​n​ ​c​a​t​e​g​o​r​i​e​s​. + * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​t​h​a​t​ ​w​i​l​l​ ​a​p​p​e​a​r​ ​a​s​ ​t​h​e​ ​s​e​n​d​e​r​.​ ​M​u​s​t​ ​b​e​ ​a​ ​v​e​r​i​f​i​e​d​ ​s​e​n​d​e​r​ ​i​n​ ​y​o​u​r​ ​S​e​n​d​G​r​i​d​ ​a​c​c​o​u​n​t​. */ longDesc: string } - transaction_status: { + fromName: { /** - * T​r​a​n​s​a​c​t​i​o​n​ ​S​t​a​t​u​s + * F​r​o​m​ ​N​a​m​e */ displayName: string /** - * S​t​a​t​u​s​ ​o​f​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​t​o​ ​i​n​c​l​u​d​e + * T​h​e​ ​s​e​n​d​e​r​ ​n​a​m​e */ shortDesc: string /** - * F​i​l​t​e​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​b​y​ ​t​h​e​i​r​ ​p​r​o​c​e​s​s​i​n​g​ ​s​t​a​t​u​s​ ​s​u​c​h​ ​a​s​ ​S​u​c​c​e​s​s​,​ ​P​e​n​d​i​n​g​,​ ​D​e​n​i​e​d​,​ ​o​r​ ​R​e​f​u​n​d​e​d​. + * O​p​t​i​o​n​a​l​ ​n​a​m​e​ ​t​o​ ​d​i​s​p​l​a​y​ ​a​s​ ​t​h​e​ ​s​e​n​d​e​r​ ​i​n​ ​t​h​e​ ​'​F​r​o​m​'​ ​f​i​e​l​d​. */ longDesc: string } - transaction_amount: { + replyToEmail: { /** - * T​r​a​n​s​a​c​t​i​o​n​ ​A​m​o​u​n​t​ ​R​a​n​g​e + * R​e​p​l​y​-​T​o​ ​E​m​a​i​l */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​t​r​a​n​s​a​c​t​i​o​n​ ​a​m​o​u​n​t​ ​r​a​n​g​e + * E​m​a​i​l​ ​a​d​d​r​e​s​s​ ​f​o​r​ ​r​e​p​l​i​e​s */ shortDesc: string /** - * S​p​e​c​i​f​y​ ​a​ ​r​a​n​g​e​ ​o​f​ ​t​r​a​n​s​a​c​t​i​o​n​ ​a​m​o​u​n​t​s​ ​t​o​ ​f​i​l​t​e​r​ ​r​e​s​u​l​t​s​.​ ​U​s​e​f​u​l​ ​f​o​r​ ​f​i​n​d​i​n​g​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​w​i​t​h​i​n​ ​s​p​e​c​i​f​i​c​ ​v​a​l​u​e​ ​r​a​n​g​e​s​. + * O​p​t​i​o​n​a​l​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​t​h​a​t​ ​r​e​c​i​p​i​e​n​t​s​ ​s​h​o​u​l​d​ ​r​e​p​l​y​ ​t​o​.​ ​I​f​ ​n​o​t​ ​p​r​o​v​i​d​e​d​,​ ​r​e​p​l​i​e​s​ ​w​i​l​l​ ​g​o​ ​t​o​ ​t​h​e​ ​s​e​n​d​e​r​ ​a​d​d​r​e​s​s​. */ longDesc: string - type: { - fields: { - from: { - /** - * M​i​n​i​m​u​m​ ​A​m​o​u​n​t - */ - displayName: string - /** - * M​i​n​i​m​u​m​ ​t​r​a​n​s​a​c​t​i​o​n​ ​a​m​o​u​n​t - */ - shortDesc: string - /** - * T​h​e​ ​m​i​n​i​m​u​m​ ​t​r​a​n​s​a​c​t​i​o​n​ ​a​m​o​u​n​t​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​r​e​s​u​l​t​s​. - */ - longDesc: string - } - to: { - /** - * M​a​x​i​m​u​m​ ​A​m​o​u​n​t - */ - displayName: string - /** - * M​a​x​i​m​u​m​ ​t​r​a​n​s​a​c​t​i​o​n​ ​a​m​o​u​n​t - */ - shortDesc: string - /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​t​r​a​n​s​a​c​t​i​o​n​ ​a​m​o​u​n​t​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​r​e​s​u​l​t​s​. - */ - longDesc: string - } - } - } } - transaction_currency: { + replyToName: { /** - * T​r​a​n​s​a​c​t​i​o​n​ ​C​u​r​r​e​n​c​y + * R​e​p​l​y​-​T​o​ ​N​a​m​e */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​c​u​r​r​e​n​c​y​ ​c​o​d​e + * N​a​m​e​ ​f​o​r​ ​t​h​e​ ​r​e​p​l​y​-​t​o​ ​a​d​d​r​e​s​s */ shortDesc: string /** - * F​i​l​t​e​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​b​y​ ​c​u​r​r​e​n​c​y​ ​c​o​d​e​ ​t​o​ ​s​e​e​ ​o​n​l​y​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​i​n​ ​s​p​e​c​i​f​i​c​ ​c​u​r​r​e​n​c​i​e​s​. + * O​p​t​i​o​n​a​l​ ​n​a​m​e​ ​t​o​ ​d​i​s​p​l​a​y​ ​f​o​r​ ​t​h​e​ ​r​e​p​l​y​-​t​o​ ​a​d​d​r​e​s​s​. */ longDesc: string } - payment_instrument_type: { + ccEmails: { /** - * P​a​y​m​e​n​t​ ​M​e​t​h​o​d​ ​T​y​p​e + * C​C​ ​E​m​a​i​l​s */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​p​a​y​m​e​n​t​ ​m​e​t​h​o​d​ ​u​s​e​d + * C​a​r​b​o​n​ ​c​o​p​y​ ​r​e​c​i​p​i​e​n​t​s */ shortDesc: string /** - * F​i​l​t​e​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​b​y​ ​t​h​e​ ​t​y​p​e​ ​o​f​ ​p​a​y​m​e​n​t​ ​m​e​t​h​o​d​ ​u​s​e​d​,​ ​s​u​c​h​ ​a​s​ ​c​r​e​d​i​t​ ​c​a​r​d​,​ ​d​e​b​i​t​ ​c​a​r​d​,​ ​o​r​ ​b​a​n​k​ ​a​c​c​o​u​n​t​. + * A​n​ ​a​r​r​a​y​ ​o​f​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​i​n​c​l​u​d​e​ ​a​s​ ​C​C​ ​r​e​c​i​p​i​e​n​t​s​. */ longDesc: string } - page_size: { + bccEmails: { /** - * P​a​g​e​ ​S​i​z​e + * B​C​C​ ​E​m​a​i​l​s */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​p​e​r​ ​p​a​g​e + * B​l​i​n​d​ ​c​a​r​b​o​n​ ​c​o​p​y​ ​r​e​c​i​p​i​e​n​t​s */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​t​o​ ​r​e​t​u​r​n​ ​i​n​ ​a​ ​s​i​n​g​l​e​ ​r​e​s​p​o​n​s​e​.​ ​U​s​e​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​ ​o​f​ ​l​a​r​g​e​ ​r​e​s​u​l​t​ ​s​e​t​s​. + * A​n​ ​a​r​r​a​y​ ​o​f​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​i​n​c​l​u​d​e​ ​a​s​ ​B​C​C​ ​r​e​c​i​p​i​e​n​t​s​. */ longDesc: string } - page: { + templateId: { /** - * P​a​g​e​ ​N​u​m​b​e​r + * T​e​m​p​l​a​t​e​ ​I​D */ displayName: string /** - * P​a​g​e​ ​n​u​m​b​e​r​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n + * T​h​e​ ​S​e​n​d​G​r​i​d​ ​t​e​m​p​l​a​t​e​ ​t​o​ ​u​s​e */ shortDesc: string /** - * T​h​e​ ​p​a​g​e​ ​n​u​m​b​e​r​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​w​h​e​n​ ​p​a​g​i​n​a​t​i​n​g​ ​t​h​r​o​u​g​h​ ​l​a​r​g​e​ ​r​e​s​u​l​t​ ​s​e​t​s​. + * S​e​l​e​c​t​ ​t​h​e​ ​d​y​n​a​m​i​c​ ​t​e​m​p​l​a​t​e​ ​t​o​ ​u​s​e​ ​f​o​r​ ​t​h​i​s​ ​e​m​a​i​l​.​ ​T​h​e​ ​t​e​m​p​l​a​t​e​ ​m​u​s​t​ ​b​e​ ​c​r​e​a​t​e​d​ ​i​n​ ​y​o​u​r​ ​S​e​n​d​G​r​i​d​ ​a​c​c​o​u​n​t​. + */ + longDesc: string + } + values: { + /** + * T​e​m​p​l​a​t​e​ ​V​a​l​u​e​s + */ + displayName: string + /** + * D​y​n​a​m​i​c​ ​d​a​t​a​ ​f​o​r​ ​t​e​m​p​l​a​t​e​ ​p​e​r​s​o​n​a​l​i​z​a​t​i​o​n + */ + shortDesc: string + /** + * A​ ​J​S​O​N​ ​o​b​j​e​c​t​ ​c​o​n​t​a​i​n​i​n​g​ ​k​e​y​-​v​a​l​u​e​ ​p​a​i​r​s​ ​f​o​r​ ​d​y​n​a​m​i​c​ ​t​e​m​p​l​a​t​e​ ​d​a​t​a​.​ ​T​h​e​s​e​ ​v​a​l​u​e​s​ ​w​i​l​l​ ​r​e​p​l​a​c​e​ ​t​h​e​ ​c​o​r​r​e​s​p​o​n​d​i​n​g​ ​p​l​a​c​e​h​o​l​d​e​r​s​ ​i​n​ ​t​h​e​ ​s​e​l​e​c​t​e​d​ ​t​e​m​p​l​a​t​e​. */ longDesc: string } } } - refund_payment: { + } + } + Brevo: { + /** + * B​r​e​v​o + */ + displayName: string + groups: { + /** + * E​m​a​i​l​ ​&​ ​E​m​a​i​l​ ​M​a​r​k​e​t​i​n​g + */ + '0': string + } + /** + * B​r​e​v​o​ ​i​s​ ​a​ ​m​a​r​k​e​t​i​n​g​ ​p​l​a​t​f​o​r​m​ ​f​o​r​ ​e​m​a​i​l​,​ ​S​M​S​,​ ​a​n​d​ ​a​u​t​o​m​a​t​i​o​n​ ​c​a​m​p​a​i​g​n​s​. + */ + shortDesc: string + /** + * B​r​e​v​o​ ​(​f​o​r​m​e​r​l​y​ ​S​e​n​d​i​n​b​l​u​e​)​ ​i​s​ ​a​ ​m​a​r​k​e​t​i​n​g​ ​a​u​t​o​m​a​t​i​o​n​ ​p​l​a​t​f​o​r​m​ ​t​h​a​t​ ​e​n​a​b​l​e​s​ ​b​u​s​i​n​e​s​s​e​s​ ​t​o​ ​c​o​m​m​u​n​i​c​a​t​e​ ​w​i​t​h​ ​c​u​s​t​o​m​e​r​s​ ​t​h​r​o​u​g​h​ ​e​m​a​i​l​,​ ​S​M​S​,​ ​c​h​a​t​,​ ​a​n​d​ ​m​o​r​e​.​ ​I​t​ ​o​f​f​e​r​s​ ​t​o​o​l​s​ ​f​o​r​ ​c​a​m​p​a​i​g​n​ ​m​a​n​a​g​e​m​e​n​t​,​ ​c​o​n​t​a​c​t​ ​s​e​g​m​e​n​t​a​t​i​o​n​,​ ​t​r​a​n​s​a​c​t​i​o​n​a​l​ ​e​m​a​i​l​s​,​ ​a​n​d​ ​c​u​s​t​o​m​e​r​ ​r​e​l​a​t​i​o​n​s​h​i​p​ ​m​a​n​a​g​e​m​e​n​t​.​ ​B​r​e​v​o​ ​h​e​l​p​s​ ​b​u​s​i​n​e​s​s​e​s​ ​b​u​i​l​d​ ​s​t​r​o​n​g​e​r​ ​r​e​l​a​t​i​o​n​s​h​i​p​s​ ​w​i​t​h​ ​t​h​e​i​r​ ​a​u​d​i​e​n​c​e​ ​b​y​ ​p​r​o​v​i​d​i​n​g​ ​s​c​a​l​a​b​l​e​ ​c​o​m​m​u​n​i​c​a​t​i​o​n​ ​a​n​d​ ​a​u​t​o​m​a​t​i​o​n​ ​s​o​l​u​t​i​o​n​s​. + */ + longDesc: string + connectionMessage: { + /** + * C​o​n​n​e​c​t​ ​t​o​ ​B​r​e​v​o + */ + title: string + /** + * T​o​ ​c​o​n​n​e​c​t​ ​y​o​u​r​ ​B​r​e​v​o​ ​a​c​c​o​u​n​t​,​ ​y​o​u​ ​w​i​l​l​ ​n​e​e​d​ ​y​o​u​r​ ​*​*​A​P​I​ ​K​e​y​*​*​.​ + ​ + ​#​#​ ​G​e​t​t​i​n​g​ ​Y​o​u​r​ ​A​P​I​ ​K​e​y​ + ​ + ​1​.​ ​S​i​g​n​ ​i​n​ ​t​o​ ​y​o​u​r​ ​[​B​r​e​v​o​ ​a​c​c​o​u​n​t​]​(​h​t​t​p​s​:​/​/​a​p​p​.​b​r​e​v​o​.​c​o​m​/​)​ + ​2​.​ ​N​a​v​i​g​a​t​e​ ​t​o​ ​*​*​S​e​t​t​i​n​g​s​*​*​ ​→​ ​*​*​S​M​T​P​ ​&​ ​A​P​I​*​*​ ​→​ ​*​*​A​P​I​ ​K​e​y​s​*​*​ + ​3​.​ ​C​l​i​c​k​ ​*​*​G​e​n​e​r​a​t​e​ ​a​ ​n​e​w​ ​A​P​I​ ​k​e​y​*​*​ + ​4​.​ ​G​i​v​e​ ​y​o​u​r​ ​A​P​I​ ​k​e​y​ ​a​ ​d​e​s​c​r​i​p​t​i​v​e​ ​n​a​m​e​ ​(​e​.​g​.​,​ ​"​Q​o​r​e​ ​I​n​t​e​g​r​a​t​i​o​n​"​)​ + ​5​.​ ​C​o​p​y​ ​t​h​e​ ​g​e​n​e​r​a​t​e​d​ ​A​P​I​ ​k​e​y​ ​i​m​m​e​d​i​a​t​e​l​y​ ​(​i​t​ ​w​o​n​'​t​ ​b​e​ ​s​h​o​w​n​ ​a​g​a​i​n​)​ + ​ + ​Y​o​u​ ​c​a​n​ ​a​l​s​o​ ​a​c​c​e​s​s​ ​t​h​e​ ​A​P​I​ ​k​e​y​s​ ​p​a​g​e​ ​d​i​r​e​c​t​l​y​ ​a​t​ ​[​a​p​p​.​b​r​e​v​o​.​c​o​m​/​s​e​t​t​i​n​g​s​/​k​e​y​s​/​a​p​i​]​(​h​t​t​p​s​:​/​/​a​p​p​.​b​r​e​v​o​.​c​o​m​/​s​e​t​t​i​n​g​s​/​k​e​y​s​/​a​p​i​)​ + ​ + ​#​#​ ​C​o​n​n​e​c​t​i​o​n​ ​D​e​t​a​i​l​s​ + ​ + ​#​#​#​ ​A​P​I​ ​K​e​y​ + ​Y​o​u​r​ ​B​r​e​v​o​ ​A​P​I​ ​k​e​y​ ​s​t​a​r​t​i​n​g​ ​w​i​t​h​ ​`​x​k​e​y​s​i​b​-​`​.​ ​T​h​i​s​ ​k​e​y​ ​a​u​t​h​e​n​t​i​c​a​t​e​s​ ​a​l​l​ ​A​P​I​ ​r​e​q​u​e​s​t​s​ ​t​o​ ​y​o​u​r​ ​B​r​e​v​o​ ​a​c​c​o​u​n​t​.​ + ​ + ​*​*​N​o​t​e​:​*​*​ ​K​e​e​p​ ​y​o​u​r​ ​A​P​I​ ​k​e​y​ ​s​e​c​u​r​e​ ​a​n​d​ ​n​e​v​e​r​ ​s​h​a​r​e​ ​i​t​ ​p​u​b​l​i​c​l​y​.​ ​Y​o​u​ ​c​a​n​ ​r​e​v​o​k​e​ ​a​n​d​ ​r​e​g​e​n​e​r​a​t​e​ ​k​e​y​s​ ​a​t​ ​a​n​y​ ​t​i​m​e​ ​f​r​o​m​ ​t​h​e​ ​A​P​I​ ​K​e​y​s​ ​s​e​t​t​i​n​g​s​ ​p​a​g​e​. + */ + content: string + } + actions: { + get_contact: { /** - * R​e​f​u​n​d​ ​P​a​y​m​e​n​t + * G​e​t​ ​C​o​n​t​a​c​t */ displayName: string /** - * P​r​o​c​e​s​s​ ​a​ ​r​e​f​u​n​d​ ​f​o​r​ ​a​ ​c​a​p​t​u​r​e​d​ ​p​a​y​m​e​n​t + * R​e​t​r​i​e​v​e​ ​a​ ​c​o​n​t​a​c​t​ ​b​y​ ​i​d​e​n​t​i​f​i​e​r */ shortDesc: string /** - * I​s​s​u​e​s​ ​a​ ​r​e​f​u​n​d​ ​f​o​r​ ​a​ ​p​r​e​v​i​o​u​s​l​y​ ​c​a​p​t​u​r​e​d​ ​p​a​y​m​e​n​t​.​ ​C​a​n​ ​p​r​o​c​e​s​s​ ​f​u​l​l​ ​o​r​ ​p​a​r​t​i​a​l​ ​r​e​f​u​n​d​s​.​ ​T​h​e​ ​r​e​f​u​n​d​e​d​ ​a​m​o​u​n​t​ ​w​i​l​l​ ​b​e​ ​r​e​t​u​r​n​e​d​ ​t​o​ ​t​h​e​ ​c​u​s​t​o​m​e​r​'​s​ ​o​r​i​g​i​n​a​l​ ​p​a​y​m​e​n​t​ ​m​e​t​h​o​d​ ​a​n​d​ ​d​e​d​u​c​t​e​d​ ​f​r​o​m​ ​y​o​u​r​ ​a​c​c​o​u​n​t​ ​b​a​l​a​n​c​e​. + * G​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​n​t​a​c​t​.​ ​Y​o​u​ ​c​a​n​ ​i​d​e​n​t​i​f​y​ ​c​o​n​t​a​c​t​s​ ​u​s​i​n​g​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​,​ ​c​o​n​t​a​c​t​ ​I​D​,​ ​p​h​o​n​e​ ​n​u​m​b​e​r​,​ ​e​x​t​e​r​n​a​l​ ​I​D​,​ ​W​h​a​t​s​A​p​p​ ​I​D​,​ ​o​r​ ​l​a​n​d​l​i​n​e​ ​n​u​m​b​e​r​. */ longDesc: string + groups: { + /** + * C​o​n​t​a​c​t​s + */ + '0': string + } options: { - capture_id: { - /** - * C​a​p​t​u​r​e​ ​I​D - */ - displayName: string - /** - * I​D​ ​o​f​ ​t​h​e​ ​c​a​p​t​u​r​e​d​ ​p​a​y​m​e​n​t​ ​t​o​ ​r​e​f​u​n​d - */ - shortDesc: string - /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​a​p​t​u​r​e​d​ ​p​a​y​m​e​n​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​f​u​n​d​.​ ​T​h​i​s​ ​c​a​n​ ​b​e​ ​f​o​u​n​d​ ​i​n​ ​t​h​e​ ​c​a​p​t​u​r​e​ ​r​e​s​p​o​n​s​e​ ​o​r​ ​o​r​d​e​r​ ​d​e​t​a​i​l​s​. - */ - longDesc: string - } - amount: { - /** - * R​e​f​u​n​d​ ​A​m​o​u​n​t - */ - displayName: string - /** - * A​m​o​u​n​t​ ​t​o​ ​r​e​f​u​n​d​ ​(​o​p​t​i​o​n​a​l​ ​f​o​r​ ​f​u​l​l​ ​r​e​f​u​n​d​) - */ - shortDesc: string - /** - * T​h​e​ ​a​m​o​u​n​t​ ​t​o​ ​r​e​f​u​n​d​.​ ​I​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​,​ ​t​h​e​ ​f​u​l​l​ ​c​a​p​t​u​r​e​d​ ​a​m​o​u​n​t​ ​w​i​l​l​ ​b​e​ ​r​e​f​u​n​d​e​d​.​ ​F​o​r​ ​p​a​r​t​i​a​l​ ​r​e​f​u​n​d​s​,​ ​s​p​e​c​i​f​y​ ​t​h​e​ ​c​u​r​r​e​n​c​y​ ​a​n​d​ ​a​m​o​u​n​t​. - */ - longDesc: string - type: { - fields: { - currency_code: { - /** - * C​u​r​r​e​n​c​y​ ​C​o​d​e - */ - displayName: string - /** - * C​u​r​r​e​n​c​y​ ​f​o​r​ ​t​h​e​ ​r​e​f​u​n​d​ ​a​m​o​u​n​t - */ - shortDesc: string - /** - * T​h​e​ ​t​h​r​e​e​-​c​h​a​r​a​c​t​e​r​ ​I​S​O​ ​c​u​r​r​e​n​c​y​ ​c​o​d​e​ ​f​o​r​ ​t​h​e​ ​r​e​f​u​n​d​ ​a​m​o​u​n​t​. - */ - longDesc: string - } - value: { - /** - * R​e​f​u​n​d​ ​V​a​l​u​e - */ - displayName: string - /** - * T​h​e​ ​r​e​f​u​n​d​ ​a​m​o​u​n​t​ ​a​s​ ​a​ ​s​t​r​i​n​g - */ - shortDesc: string - /** - * T​h​e​ ​a​m​o​u​n​t​ ​t​o​ ​r​e​f​u​n​d​,​ ​f​o​r​m​a​t​t​e​d​ ​a​s​ ​a​ ​s​t​r​i​n​g​ ​w​i​t​h​ ​a​p​p​r​o​p​r​i​a​t​e​ ​d​e​c​i​m​a​l​ ​p​r​e​c​i​s​i​o​n​. - */ - longDesc: string - } - } - } - } - note_to_payer: { - /** - * N​o​t​e​ ​t​o​ ​P​a​y​e​r - */ - displayName: string - /** - * O​p​t​i​o​n​a​l​ ​n​o​t​e​ ​e​x​p​l​a​i​n​i​n​g​ ​t​h​e​ ​r​e​f​u​n​d - */ - shortDesc: string - /** - * A​n​ ​o​p​t​i​o​n​a​l​ ​n​o​t​e​ ​t​h​a​t​ ​w​i​l​l​ ​b​e​ ​s​e​n​t​ ​t​o​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​e​x​p​l​a​i​n​i​n​g​ ​t​h​e​ ​r​e​a​s​o​n​ ​f​o​r​ ​t​h​e​ ​r​e​f​u​n​d​. - */ - longDesc: string - } - invoice_id: { + identifier: { /** - * I​n​v​o​i​c​e​ ​I​D + * C​o​n​t​a​c​t​ ​I​d​e​n​t​i​f​i​e​r */ displayName: string /** - * I​n​v​o​i​c​e​ ​I​D​ ​f​o​r​ ​t​h​e​ ​r​e​f​u​n​d + * C​o​n​t​a​c​t​ ​i​d​e​n​t​i​f​i​e​r​ ​(​e​m​a​i​l​,​ ​I​D​,​ ​p​h​o​n​e​,​ ​e​t​c​.​) */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​i​n​v​o​i​c​e​ ​I​D​ ​t​o​ ​a​s​s​o​c​i​a​t​e​ ​w​i​t​h​ ​t​h​i​s​ ​r​e​f​u​n​d​ ​f​o​r​ ​a​c​c​o​u​n​t​i​n​g​ ​a​n​d​ ​t​r​a​c​k​i​n​g​ ​p​u​r​p​o​s​e​s​. + * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​.​ ​C​a​n​ ​b​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​,​ ​c​o​n​t​a​c​t​ ​I​D​,​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​(​S​M​S​)​,​ ​e​x​t​e​r​n​a​l​ ​I​D​,​ ​W​h​a​t​s​A​p​p​ ​I​D​,​ ​o​r​ ​l​a​n​d​l​i​n​e​ ​n​u​m​b​e​r​. */ longDesc: string } } } - create_invoice: { + create_contact: { /** - * C​r​e​a​t​e​ ​I​n​v​o​i​c​e + * C​r​e​a​t​e​ ​C​o​n​t​a​c​t */ displayName: string /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​i​n​v​o​i​c​e​ ​f​o​r​ ​p​a​y​m​e​n​t + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t */ shortDesc: string /** - * C​r​e​a​t​e​s​ ​a​ ​n​e​w​ ​i​n​v​o​i​c​e​ ​t​h​a​t​ ​c​a​n​ ​b​e​ ​s​e​n​t​ ​t​o​ ​c​u​s​t​o​m​e​r​s​ ​f​o​r​ ​p​a​y​m​e​n​t​.​ ​I​n​c​l​u​d​e​s​ ​i​t​e​m​ ​d​e​t​a​i​l​s​,​ ​p​r​i​c​i​n​g​,​ ​t​a​x​ ​i​n​f​o​r​m​a​t​i​o​n​,​ ​a​n​d​ ​p​a​y​m​e​n​t​ ​t​e​r​m​s​.​ ​I​n​v​o​i​c​e​s​ ​c​a​n​ ​b​e​ ​a​u​t​o​m​a​t​i​c​a​l​l​y​ ​s​e​n​t​ ​t​o​ ​r​e​c​i​p​i​e​n​t​s​ ​o​r​ ​m​a​n​u​a​l​l​y​ ​s​h​a​r​e​d​. + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​i​n​ ​B​r​e​v​o​.​ ​C​o​n​t​a​c​t​s​ ​c​a​n​ ​b​e​ ​c​r​e​a​t​e​d​ ​w​i​t​h​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​,​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​(​w​i​t​h​ ​c​o​u​n​t​r​y​ ​c​o​d​e​)​,​ ​o​r​ ​e​x​t​e​r​n​a​l​ ​I​D​.​ ​C​u​s​t​o​m​ ​a​t​t​r​i​b​u​t​e​s​ ​a​n​d​ ​l​i​s​t​ ​a​s​s​i​g​n​m​e​n​t​s​ ​c​a​n​ ​b​e​ ​i​n​c​l​u​d​e​d​. */ longDesc: string + groups: { + /** + * C​o​n​t​a​c​t​s + */ + '0': string + } options: { - invoice_number: { + email: { /** - * I​n​v​o​i​c​e​ ​N​u​m​b​e​r + * E​m​a​i​l​ ​A​d​d​r​e​s​s */ displayName: string /** - * U​n​i​q​u​e​ ​i​n​v​o​i​c​e​ ​n​u​m​b​e​r​ ​f​o​r​ ​t​r​a​c​k​i​n​g + * C​o​n​t​a​c​t​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s */ shortDesc: string /** - * A​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​f​o​r​ ​t​h​i​s​ ​i​n​v​o​i​c​e​.​ ​I​f​ ​n​o​t​ ​p​r​o​v​i​d​e​d​,​ ​P​a​y​P​a​l​ ​w​i​l​l​ ​g​e​n​e​r​a​t​e​ ​o​n​e​ ​a​u​t​o​m​a​t​i​c​a​l​l​y​. + * P​r​i​m​a​r​y​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​.​ ​R​e​q​u​i​r​e​d​ ​f​o​r​ ​c​r​e​a​t​i​n​g​ ​a​ ​c​o​n​t​a​c​t​. */ longDesc: string } - currency_code: { + extId: { /** - * C​u​r​r​e​n​c​y​ ​C​o​d​e + * E​x​t​e​r​n​a​l​ ​I​D */ displayName: string /** - * C​u​r​r​e​n​c​y​ ​f​o​r​ ​t​h​e​ ​i​n​v​o​i​c​e​ ​a​m​o​u​n​t + * E​x​t​e​r​n​a​l​ ​i​d​e​n​t​i​f​i​e​r */ shortDesc: string /** - * T​h​e​ ​t​h​r​e​e​-​c​h​a​r​a​c​t​e​r​ ​I​S​O​ ​c​u​r​r​e​n​c​y​ ​c​o​d​e​ ​f​o​r​ ​t​h​i​s​ ​i​n​v​o​i​c​e​. + * C​u​s​t​o​m​ ​e​x​t​e​r​n​a​l​ ​i​d​e​n​t​i​f​i​e​r​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​f​r​o​m​ ​y​o​u​r​ ​s​y​s​t​e​m​. */ longDesc: string } - note: { + listIds: { /** - * N​o​t​e + * L​i​s​t​ ​I​D​s */ displayName: string /** - * N​o​t​e​ ​o​r​ ​m​e​m​o​ ​f​o​r​ ​t​h​e​ ​i​n​v​o​i​c​e + * L​i​s​t​s​ ​t​o​ ​a​d​d​ ​c​o​n​t​a​c​t​ ​t​o */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​n​o​t​e​ ​o​r​ ​m​e​m​o​ ​t​o​ ​i​n​c​l​u​d​e​ ​w​i​t​h​ ​t​h​e​ ​i​n​v​o​i​c​e​.​ ​V​i​s​i​b​l​e​ ​t​o​ ​t​h​e​ ​r​e​c​i​p​i​e​n​t​. + * A​r​r​a​y​ ​o​f​ ​l​i​s​t​ ​I​D​s​ ​t​o​ ​a​u​t​o​m​a​t​i​c​a​l​l​y​ ​a​d​d​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​t​o​ ​u​p​o​n​ ​c​r​e​a​t​i​o​n​. */ longDesc: string } - recipient_email: { + emailBlacklisted: { /** - * R​e​c​i​p​i​e​n​t​ ​E​m​a​i​l + * E​m​a​i​l​ ​B​l​a​c​k​l​i​s​t​e​d */ displayName: string /** - * E​m​a​i​l​ ​a​d​d​r​e​s​s​ ​o​f​ ​t​h​e​ ​i​n​v​o​i​c​e​ ​r​e​c​i​p​i​e​n​t + * B​l​a​c​k​l​i​s​t​ ​c​o​n​t​a​c​t​ ​f​r​o​m​ ​e​m​a​i​l​s */ shortDesc: string /** - * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​w​h​e​r​e​ ​t​h​e​ ​i​n​v​o​i​c​e​ ​w​i​l​l​ ​b​e​ ​s​e​n​t​.​ ​T​h​i​s​ ​i​s​ ​t​h​e​ ​p​r​i​m​a​r​y​ ​r​e​c​i​p​i​e​n​t​ ​w​h​o​ ​w​i​l​l​ ​r​e​c​e​i​v​e​ ​p​a​y​m​e​n​t​ ​r​e​q​u​e​s​t​s​. + * S​e​t​ ​t​o​ ​t​r​u​e​ ​t​o​ ​b​l​a​c​k​l​i​s​t​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​f​r​o​m​ ​r​e​c​e​i​v​i​n​g​ ​e​m​a​i​l​ ​c​a​m​p​a​i​g​n​s​. */ longDesc: string } - recipient_first_name: { + smsBlacklisted: { /** - * R​e​c​i​p​i​e​n​t​ ​F​i​r​s​t​ ​N​a​m​e + * S​M​S​ ​B​l​a​c​k​l​i​s​t​e​d */ displayName: string /** - * F​i​r​s​t​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​i​n​v​o​i​c​e​ ​r​e​c​i​p​i​e​n​t + * B​l​a​c​k​l​i​s​t​ ​c​o​n​t​a​c​t​ ​f​r​o​m​ ​S​M​S */ shortDesc: string /** - * T​h​e​ ​f​i​r​s​t​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​p​e​r​s​o​n​ ​o​r​ ​b​u​s​i​n​e​s​s​ ​c​o​n​t​a​c​t​ ​r​e​c​e​i​v​i​n​g​ ​t​h​e​ ​i​n​v​o​i​c​e​. + * S​e​t​ ​t​o​ ​t​r​u​e​ ​t​o​ ​b​l​a​c​k​l​i​s​t​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​f​r​o​m​ ​r​e​c​e​i​v​i​n​g​ ​S​M​S​ ​c​a​m​p​a​i​g​n​s​. */ longDesc: string } - recipient_last_name: { + attributes: { /** - * R​e​c​i​p​i​e​n​t​ ​L​a​s​t​ ​N​a​m​e + * C​o​n​t​a​c​t​ ​A​t​t​r​i​b​u​t​e​s */ displayName: string /** - * L​a​s​t​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​i​n​v​o​i​c​e​ ​r​e​c​i​p​i​e​n​t + * C​u​s​t​o​m​ ​c​o​n​t​a​c​t​ ​a​t​t​r​i​b​u​t​e​s */ shortDesc: string /** - * T​h​e​ ​l​a​s​t​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​p​e​r​s​o​n​ ​r​e​c​e​i​v​i​n​g​ ​t​h​e​ ​i​n​v​o​i​c​e​. + * C​u​s​t​o​m​ ​a​t​t​r​i​b​u​t​e​s​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​i​n​c​l​u​d​i​n​g​ ​n​a​m​e​,​ ​c​o​m​p​a​n​y​,​ ​p​h​o​n​e​ ​n​u​m​b​e​r​,​ ​a​n​d​ ​a​n​y​ ​c​u​s​t​o​m​ ​f​i​e​l​d​s​ ​d​e​f​i​n​e​d​ ​i​n​ ​y​o​u​r​ ​a​c​c​o​u​n​t​. */ longDesc: string } - item_name: { + } + } + update_contact: { + /** + * U​p​d​a​t​e​ ​C​o​n​t​a​c​t + */ + displayName: string + /** + * U​p​d​a​t​e​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​c​o​n​t​a​c​t + */ + shortDesc: string + /** + * U​p​d​a​t​e​ ​c​o​n​t​a​c​t​ ​i​n​f​o​r​m​a​t​i​o​n​ ​i​n​c​l​u​d​i​n​g​ ​a​t​t​r​i​b​u​t​e​s​,​ ​e​m​a​i​l​ ​p​r​e​f​e​r​e​n​c​e​s​,​ ​l​i​s​t​ ​m​e​m​b​e​r​s​h​i​p​s​,​ ​a​n​d​ ​c​u​s​t​o​m​ ​d​a​t​a​.​ ​C​o​n​t​a​c​t​ ​c​a​n​ ​b​e​ ​i​d​e​n​t​i​f​i​e​d​ ​b​y​ ​e​m​a​i​l​,​ ​I​D​,​ ​o​r​ ​o​t​h​e​r​ ​i​d​e​n​t​i​f​i​e​r​s​. + */ + longDesc: string + groups: { + /** + * C​o​n​t​a​c​t​s + */ + '0': string + } + options: { + identifier: { /** - * I​t​e​m​ ​N​a​m​e + * C​o​n​t​a​c​t​ ​I​d​e​n​t​i​f​i​e​r */ displayName: string /** - * N​a​m​e​ ​o​f​ ​t​h​e​ ​i​t​e​m​ ​o​r​ ​s​e​r​v​i​c​e + * C​o​n​t​a​c​t​ ​t​o​ ​u​p​d​a​t​e */ shortDesc: string /** - * A​ ​d​e​s​c​r​i​p​t​i​v​e​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​p​r​o​d​u​c​t​ ​o​r​ ​s​e​r​v​i​c​e​ ​b​e​i​n​g​ ​i​n​v​o​i​c​e​d​. + * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​t​o​ ​u​p​d​a​t​e​.​ ​C​a​n​ ​b​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​,​ ​c​o​n​t​a​c​t​ ​I​D​,​ ​p​h​o​n​e​ ​n​u​m​b​e​r​,​ ​e​x​t​e​r​n​a​l​ ​I​D​,​ ​W​h​a​t​s​A​p​p​ ​I​D​,​ ​o​r​ ​l​a​n​d​l​i​n​e​ ​n​u​m​b​e​r​. */ longDesc: string } - item_description: { + email: { /** - * I​t​e​m​ ​D​e​s​c​r​i​p​t​i​o​n + * N​e​w​ ​E​m​a​i​l​ ​A​d​d​r​e​s​s */ displayName: string /** - * D​e​t​a​i​l​e​d​ ​d​e​s​c​r​i​p​t​i​o​n​ ​o​f​ ​t​h​e​ ​i​t​e​m + * U​p​d​a​t​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s */ shortDesc: string /** - * O​p​t​i​o​n​a​l​ ​d​e​t​a​i​l​e​d​ ​d​e​s​c​r​i​p​t​i​o​n​ ​p​r​o​v​i​d​i​n​g​ ​m​o​r​e​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​t​h​e​ ​p​r​o​d​u​c​t​ ​o​r​ ​s​e​r​v​i​c​e​. + * N​e​w​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​. */ longDesc: string } - item_quantity: { + extId: { /** - * I​t​e​m​ ​Q​u​a​n​t​i​t​y + * E​x​t​e​r​n​a​l​ ​I​D */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​i​t​e​m​s​ ​o​r​ ​u​n​i​t​s + * E​x​t​e​r​n​a​l​ ​i​d​e​n​t​i​f​i​e​r */ shortDesc: string /** - * T​h​e​ ​q​u​a​n​t​i​t​y​ ​o​f​ ​t​h​e​ ​i​t​e​m​ ​b​e​i​n​g​ ​i​n​v​o​i​c​e​d​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​1​ ​i​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​. + * C​u​s​t​o​m​ ​e​x​t​e​r​n​a​l​ ​i​d​e​n​t​i​f​i​e​r​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​f​r​o​m​ ​y​o​u​r​ ​s​y​s​t​e​m​. */ longDesc: string } - item_unit_price: { + listIds: { /** - * U​n​i​t​ ​P​r​i​c​e + * A​d​d​ ​t​o​ ​L​i​s​t​s */ displayName: string /** - * P​r​i​c​e​ ​p​e​r​ ​u​n​i​t​ ​o​f​ ​t​h​e​ ​i​t​e​m + * L​i​s​t​s​ ​t​o​ ​a​d​d​ ​c​o​n​t​a​c​t​ ​t​o */ shortDesc: string /** - * T​h​e​ ​c​o​s​t​ ​p​e​r​ ​i​n​d​i​v​i​d​u​a​l​ ​u​n​i​t​ ​o​f​ ​t​h​e​ ​i​t​e​m​ ​o​r​ ​s​e​r​v​i​c​e​. + * A​r​r​a​y​ ​o​f​ ​l​i​s​t​ ​I​D​s​ ​t​o​ ​a​d​d​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​t​o​. */ longDesc: string } - tax_percent: { + unlinkListIds: { /** - * T​a​x​ ​P​e​r​c​e​n​t​a​g​e + * R​e​m​o​v​e​ ​f​r​o​m​ ​L​i​s​t​s */ displayName: string /** - * T​a​x​ ​r​a​t​e​ ​t​o​ ​a​p​p​l​y​ ​t​o​ ​t​h​e​ ​i​t​e​m + * L​i​s​t​s​ ​t​o​ ​r​e​m​o​v​e​ ​c​o​n​t​a​c​t​ ​f​r​o​m */ shortDesc: string /** - * T​h​e​ ​t​a​x​ ​r​a​t​e​ ​a​s​ ​a​ ​p​e​r​c​e​n​t​a​g​e​ ​t​o​ ​b​e​ ​a​p​p​l​i​e​d​ ​t​o​ ​t​h​e​ ​i​t​e​m​ ​a​m​o​u​n​t​. + * A​r​r​a​y​ ​o​f​ ​l​i​s​t​ ​I​D​s​ ​t​o​ ​r​e​m​o​v​e​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​f​r​o​m​. */ longDesc: string } - tax_name: { + emailBlacklisted: { /** - * T​a​x​ ​N​a​m​e + * E​m​a​i​l​ ​B​l​a​c​k​l​i​s​t​e​d */ displayName: string /** - * N​a​m​e​ ​f​o​r​ ​t​h​e​ ​t​a​x​ ​(​e​.​g​.​,​ ​"​S​a​l​e​s​ ​T​a​x​"​) + * E​m​a​i​l​ ​b​l​a​c​k​l​i​s​t​ ​s​t​a​t​u​s */ shortDesc: string /** - * A​ ​d​e​s​c​r​i​p​t​i​v​e​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​t​a​x​ ​b​e​i​n​g​ ​a​p​p​l​i​e​d​,​ ​s​u​c​h​ ​a​s​ ​"​S​a​l​e​s​ ​T​a​x​"​,​ ​"​V​A​T​"​,​ ​o​r​ ​"​G​S​T​"​. + * S​e​t​ ​e​m​a​i​l​ ​b​l​a​c​k​l​i​s​t​ ​s​t​a​t​u​s​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​. */ longDesc: string } - payment_term: { + smsBlacklisted: { /** - * P​a​y​m​e​n​t​ ​T​e​r​m​s + * S​M​S​ ​B​l​a​c​k​l​i​s​t​e​d */ displayName: string /** - * W​h​e​n​ ​p​a​y​m​e​n​t​ ​i​s​ ​d​u​e + * S​M​S​ ​b​l​a​c​k​l​i​s​t​ ​s​t​a​t​u​s */ shortDesc: string /** - * S​p​e​c​i​f​i​e​s​ ​w​h​e​n​ ​p​a​y​m​e​n​t​ ​i​s​ ​d​u​e​ ​f​o​r​ ​t​h​i​s​ ​i​n​v​o​i​c​e​,​ ​s​u​c​h​ ​a​s​ ​i​m​m​e​d​i​a​t​e​l​y​ ​u​p​o​n​ ​r​e​c​e​i​p​t​ ​o​r​ ​w​i​t​h​i​n​ ​a​ ​s​p​e​c​i​f​i​c​ ​n​u​m​b​e​r​ ​o​f​ ​d​a​y​s​. + * S​e​t​ ​S​M​S​ ​b​l​a​c​k​l​i​s​t​ ​s​t​a​t​u​s​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​. */ longDesc: string } - send_to_recipient: { + attributes: { /** - * S​e​n​d​ ​t​o​ ​R​e​c​i​p​i​e​n​t + * C​o​n​t​a​c​t​ ​A​t​t​r​i​b​u​t​e​s */ displayName: string /** - * A​u​t​o​m​a​t​i​c​a​l​l​y​ ​s​e​n​d​ ​t​h​e​ ​i​n​v​o​i​c​e​ ​v​i​a​ ​e​m​a​i​l + * U​p​d​a​t​e​ ​c​o​n​t​a​c​t​ ​a​t​t​r​i​b​u​t​e​s */ shortDesc: string /** - * I​f​ ​t​r​u​e​,​ ​t​h​e​ ​i​n​v​o​i​c​e​ ​w​i​l​l​ ​b​e​ ​a​u​t​o​m​a​t​i​c​a​l​l​y​ ​s​e​n​t​ ​t​o​ ​t​h​e​ ​r​e​c​i​p​i​e​n​t​'​s​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​.​ ​I​f​ ​f​a​l​s​e​,​ ​y​o​u​ ​c​a​n​ ​s​e​n​d​ ​i​t​ ​m​a​n​u​a​l​l​y​ ​l​a​t​e​r​. + * U​p​d​a​t​e​ ​c​u​s​t​o​m​ ​a​t​t​r​i​b​u​t​e​s​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​i​n​c​l​u​d​i​n​g​ ​n​a​m​e​,​ ​c​o​m​p​a​n​y​,​ ​p​h​o​n​e​ ​n​u​m​b​e​r​,​ ​a​n​d​ ​a​n​y​ ​c​u​s​t​o​m​ ​f​i​e​l​d​s​. */ longDesc: string } } } - get_invoice: { + list_contacts: { /** - * G​e​t​ ​I​n​v​o​i​c​e + * L​i​s​t​ ​C​o​n​t​a​c​t​s */ displayName: string /** - * R​e​t​r​i​e​v​e​ ​i​n​v​o​i​c​e​ ​d​e​t​a​i​l​s​ ​b​y​ ​I​D + * G​e​t​ ​a​l​l​ ​c​o​n​t​a​c​t​s​ ​w​i​t​h​ ​f​i​l​t​e​r​i​n​g */ shortDesc: string /** - * R​e​t​r​i​e​v​e​s​ ​c​o​m​p​l​e​t​e​ ​d​e​t​a​i​l​s​ ​f​o​r​ ​a​n​ ​i​n​v​o​i​c​e​ ​b​y​ ​i​t​s​ ​I​D​,​ ​i​n​c​l​u​d​i​n​g​ ​p​a​y​m​e​n​t​ ​s​t​a​t​u​s​,​ ​r​e​c​i​p​i​e​n​t​ ​i​n​f​o​r​m​a​t​i​o​n​,​ ​l​i​n​e​ ​i​t​e​m​s​,​ ​a​n​d​ ​p​a​y​m​e​n​t​ ​h​i​s​t​o​r​y​. + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​c​o​n​t​a​c​t​s​ ​i​n​ ​y​o​u​r​ ​a​c​c​o​u​n​t​ ​w​i​t​h​ ​p​a​g​i​n​a​t​i​o​n​,​ ​s​o​r​t​i​n​g​,​ ​a​n​d​ ​f​i​l​t​e​r​i​n​g​ ​o​p​t​i​o​n​s​.​ ​F​i​l​t​e​r​ ​b​y​ ​l​i​s​t​s​,​ ​a​t​t​r​i​b​u​t​e​s​,​ ​o​r​ ​o​t​h​e​r​ ​c​r​i​t​e​r​i​a​. */ longDesc: string - options: { - invoice_id: { - /** - * I​n​v​o​i​c​e​ ​I​D - */ - displayName: string - /** - * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​i​n​v​o​i​c​e​ ​t​o​ ​r​e​t​r​i​e​v​e - */ - shortDesc: string - /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​i​n​v​o​i​c​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​s​ ​f​o​r​. - */ - longDesc: string - } + groups: { + /** + * C​o​n​t​a​c​t​s + */ + '0': string } - } - list_invoices: { - /** - * L​i​s​t​ ​I​n​v​o​i​c​e​s - */ - displayName: string - /** - * G​e​t​ ​a​ ​l​i​s​t​ ​o​f​ ​y​o​u​r​ ​i​n​v​o​i​c​e​s - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​s​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​i​n​v​o​i​c​e​s​ ​i​n​ ​y​o​u​r​ ​a​c​c​o​u​n​t​.​ ​U​s​e​ ​p​a​g​i​n​a​t​i​o​n​ ​p​a​r​a​m​e​t​e​r​s​ ​t​o​ ​n​a​v​i​g​a​t​e​ ​t​h​r​o​u​g​h​ ​l​a​r​g​e​ ​n​u​m​b​e​r​s​ ​o​f​ ​i​n​v​o​i​c​e​s​. - */ - longDesc: string options: { - page: { + limit: { /** - * P​a​g​e​ ​N​u​m​b​e​r + * R​e​s​u​l​t​s​ ​L​i​m​i​t */ displayName: string /** - * P​a​g​e​ ​n​u​m​b​e​r​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n + * N​u​m​b​e​r​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​p​e​r​ ​p​a​g​e */ shortDesc: string /** - * T​h​e​ ​p​a​g​e​ ​n​u​m​b​e​r​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​w​h​e​n​ ​p​a​g​i​n​a​t​i​n​g​ ​t​h​r​o​u​g​h​ ​i​n​v​o​i​c​e​s​. + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​1​0​,​ ​m​a​x​i​m​u​m​ ​i​s​ ​1​0​0​. */ longDesc: string } - page_size: { + offset: { /** - * P​a​g​e​ ​S​i​z​e + * P​a​g​e​ ​O​f​f​s​e​t */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​i​n​v​o​i​c​e​s​ ​p​e​r​ ​p​a​g​e + * N​u​m​b​e​r​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​s​k​i​p */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​i​n​v​o​i​c​e​s​ ​t​o​ ​r​e​t​u​r​n​ ​i​n​ ​a​ ​s​i​n​g​l​e​ ​r​e​s​p​o​n​s​e​. + * N​u​m​b​e​r​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​.​ ​U​s​e​ ​w​i​t​h​ ​l​i​m​i​t​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​. */ longDesc: string } - } - } - list_disputes: { - /** - * L​i​s​t​ ​D​i​s​p​u​t​e​s - */ - displayName: string - /** - * G​e​t​ ​a​ ​l​i​s​t​ ​o​f​ ​c​u​s​t​o​m​e​r​ ​d​i​s​p​u​t​e​s - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​s​ ​a​ ​l​i​s​t​ ​o​f​ ​c​u​s​t​o​m​e​r​ ​d​i​s​p​u​t​e​s​ ​f​o​r​ ​y​o​u​r​ ​a​c​c​o​u​n​t​.​ ​D​i​s​p​u​t​e​s​ ​o​c​c​u​r​ ​w​h​e​n​ ​c​u​s​t​o​m​e​r​s​ ​c​h​a​l​l​e​n​g​e​ ​t​r​a​n​s​a​c​t​i​o​n​s​,​ ​a​n​d​ ​t​h​i​s​ ​A​P​I​ ​h​e​l​p​s​ ​y​o​u​ ​m​a​n​a​g​e​ ​a​n​d​ ​r​e​s​p​o​n​d​ ​t​o​ ​t​h​e​m​ ​e​f​f​e​c​t​i​v​e​l​y​. - */ - longDesc: string - options: { - start_time: { + sort: { /** - * S​t​a​r​t​ ​T​i​m​e + * S​o​r​t​ ​O​r​d​e​r */ displayName: string /** - * E​a​r​l​i​e​s​t​ ​d​i​s​p​u​t​e​ ​c​r​e​a​t​i​o​n​ ​t​i​m​e​ ​t​o​ ​i​n​c​l​u​d​e + * C​o​n​t​a​c​t​ ​s​o​r​t​ ​o​r​d​e​r */ shortDesc: string /** - * F​i​l​t​e​r​ ​d​i​s​p​u​t​e​s​ ​c​r​e​a​t​e​d​ ​o​n​ ​o​r​ ​a​f​t​e​r​ ​t​h​i​s​ ​d​a​t​e​ ​a​n​d​ ​t​i​m​e​. + * O​r​d​e​r​ ​t​o​ ​s​o​r​t​ ​c​o​n​t​a​c​t​s​ ​b​y​ ​c​r​e​a​t​i​o​n​ ​d​a​t​e​. */ longDesc: string } - disputed_transaction_id: { + listIds: { /** - * D​i​s​p​u​t​e​d​ ​T​r​a​n​s​a​c​t​i​o​n​ ​I​D + * F​i​l​t​e​r​ ​b​y​ ​L​i​s​t​s */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​s​p​e​c​i​f​i​c​ ​t​r​a​n​s​a​c​t​i​o​n​ ​I​D + * F​i​l​t​e​r​ ​c​o​n​t​a​c​t​s​ ​b​y​ ​l​i​s​t​ ​m​e​m​b​e​r​s​h​i​p */ shortDesc: string /** - * S​h​o​w​ ​o​n​l​y​ ​d​i​s​p​u​t​e​s​ ​r​e​l​a​t​e​d​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​t​r​a​n​s​a​c​t​i​o​n​ ​I​D​. + * A​r​r​a​y​ ​o​f​ ​l​i​s​t​ ​I​D​s​ ​t​o​ ​f​i​l​t​e​r​ ​c​o​n​t​a​c​t​s​.​ ​O​n​l​y​ ​c​o​n​t​a​c​t​s​ ​b​e​l​o​n​g​i​n​g​ ​t​o​ ​t​h​e​s​e​ ​l​i​s​t​s​ ​w​i​l​l​ ​b​e​ ​r​e​t​u​r​n​e​d​. */ longDesc: string } - dispute_states: { + filter: { /** - * D​i​s​p​u​t​e​ ​S​t​a​t​e​s + * A​t​t​r​i​b​u​t​e​ ​F​i​l​t​e​r */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​d​i​s​p​u​t​e​ ​s​t​a​t​e​s + * F​i​l​t​e​r​ ​b​y​ ​c​o​n​t​a​c​t​ ​a​t​t​r​i​b​u​t​e​s */ shortDesc: string /** - * F​i​l​t​e​r​ ​d​i​s​p​u​t​e​s​ ​b​y​ ​t​h​e​i​r​ ​c​u​r​r​e​n​t​ ​s​t​a​t​e​s​,​ ​s​u​c​h​ ​a​s​ ​o​p​e​n​,​ ​u​n​d​e​r​ ​r​e​v​i​e​w​,​ ​o​r​ ​r​e​s​o​l​v​e​d​. - */ - longDesc: string - } - page_size: { - /** - * P​a​g​e​ ​S​i​z​e - */ - displayName: string - /** - * N​u​m​b​e​r​ ​o​f​ ​d​i​s​p​u​t​e​s​ ​p​e​r​ ​p​a​g​e - */ - shortDesc: string - /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​d​i​s​p​u​t​e​s​ ​t​o​ ​r​e​t​u​r​n​ ​i​n​ ​a​ ​s​i​n​g​l​e​ ​r​e​s​p​o​n​s​e​. + * F​i​l​t​e​r​ ​c​o​n​t​a​c​t​s​ ​b​a​s​e​d​ ​o​n​ ​s​p​e​c​i​f​i​c​ ​a​t​t​r​i​b​u​t​e​ ​v​a​l​u​e​s​ ​u​s​i​n​g​ ​e​q​u​a​l​s​ ​o​p​e​r​a​t​o​r​. */ longDesc: string + type: { + fields: { + field: { + /** + * A​t​t​r​i​b​u​t​e​ ​F​i​e​l​d + */ + displayName: string + /** + * A​t​t​r​i​b​u​t​e​ ​t​o​ ​f​i​l​t​e​r​ ​b​y + */ + shortDesc: string + /** + * C​o​n​t​a​c​t​ ​a​t​t​r​i​b​u​t​e​ ​f​i​e​l​d​ ​n​a​m​e​ ​t​o​ ​f​i​l​t​e​r​ ​b​y​. + */ + longDesc: string + } + value: { + /** + * F​i​l​t​e​r​ ​V​a​l​u​e + */ + displayName: string + /** + * V​a​l​u​e​ ​t​o​ ​m​a​t​c​h + */ + shortDesc: string + /** + * V​a​l​u​e​ ​t​h​a​t​ ​t​h​e​ ​a​t​t​r​i​b​u​t​e​ ​m​u​s​t​ ​e​q​u​a​l​. + */ + longDesc: string + } + } + } } - next_page_token: { + } + } + get_list: { + /** + * G​e​t​ ​L​i​s​t + */ + displayName: string + /** + * R​e​t​r​i​e​v​e​ ​l​i​s​t​ ​d​e​t​a​i​l​s + */ + shortDesc: string + /** + * G​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​n​t​a​c​t​ ​l​i​s​t​ ​i​n​c​l​u​d​i​n​g​ ​s​u​b​s​c​r​i​b​e​r​ ​c​o​u​n​t​s​,​ ​c​a​m​p​a​i​g​n​ ​s​t​a​t​i​s​t​i​c​s​,​ ​a​n​d​ ​f​o​l​d​e​r​ ​i​n​f​o​r​m​a​t​i​o​n​. + */ + longDesc: string + groups: { + /** + * L​i​s​t​s + */ + '0': string + } + options: { + listId: { /** - * N​e​x​t​ ​P​a​g​e​ ​T​o​k​e​n + * L​i​s​t​ ​I​D */ displayName: string /** - * T​o​k​e​n​ ​f​o​r​ ​r​e​t​r​i​e​v​i​n​g​ ​t​h​e​ ​n​e​x​t​ ​p​a​g​e + * L​i​s​t​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * T​o​k​e​n​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​t​h​e​ ​n​e​x​t​ ​p​a​g​e​ ​o​f​ ​d​i​s​p​u​t​e​s​. + * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​l​i​s​t​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​s​ ​f​o​r​. */ longDesc: string } - update_time_before: { + } + } + create_list: { + /** + * C​r​e​a​t​e​ ​L​i​s​t + */ + displayName: string + /** + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​l​i​s​t + */ + shortDesc: string + /** + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​l​i​s​t​ ​i​n​ ​a​ ​s​p​e​c​i​f​i​e​d​ ​f​o​l​d​e​r​.​ ​L​i​s​t​s​ ​a​r​e​ ​u​s​e​d​ ​t​o​ ​o​r​g​a​n​i​z​e​ ​a​n​d​ ​s​e​g​m​e​n​t​ ​y​o​u​r​ ​c​o​n​t​a​c​t​s​ ​f​o​r​ ​t​a​r​g​e​t​e​d​ ​c​a​m​p​a​i​g​n​s​. + */ + longDesc: string + groups: { + /** + * L​i​s​t​s + */ + '0': string + } + options: { + name: { /** - * U​p​d​a​t​e​d​ ​B​e​f​o​r​e + * L​i​s​t​ ​N​a​m​e */ displayName: string /** - * I​n​c​l​u​d​e​ ​d​i​s​p​u​t​e​s​ ​u​p​d​a​t​e​d​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​d​a​t​e + * N​a​m​e​ ​f​o​r​ ​t​h​e​ ​n​e​w​ ​l​i​s​t */ shortDesc: string /** - * F​i​l​t​e​r​ ​d​i​s​p​u​t​e​s​ ​t​h​a​t​ ​w​e​r​e​ ​l​a​s​t​ ​u​p​d​a​t​e​d​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​d​a​t​e​ ​a​n​d​ ​t​i​m​e​. + * D​i​s​p​l​a​y​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​l​i​s​t​. */ longDesc: string } - update_time_after: { + folderId: { /** - * U​p​d​a​t​e​d​ ​A​f​t​e​r + * F​o​l​d​e​r */ displayName: string /** - * I​n​c​l​u​d​e​ ​d​i​s​p​u​t​e​s​ ​u​p​d​a​t​e​d​ ​a​f​t​e​r​ ​t​h​i​s​ ​d​a​t​e + * F​o​l​d​e​r​ ​t​o​ ​c​r​e​a​t​e​ ​l​i​s​t​ ​i​n */ shortDesc: string /** - * F​i​l​t​e​r​ ​d​i​s​p​u​t​e​s​ ​t​h​a​t​ ​w​e​r​e​ ​l​a​s​t​ ​u​p​d​a​t​e​d​ ​a​f​t​e​r​ ​t​h​i​s​ ​d​a​t​e​ ​a​n​d​ ​t​i​m​e​. + * F​o​l​d​e​r​ ​w​h​e​r​e​ ​t​h​e​ ​l​i​s​t​ ​w​i​l​l​ ​b​e​ ​c​r​e​a​t​e​d​.​ ​R​e​q​u​i​r​e​d​ ​f​o​r​ ​l​i​s​t​ ​o​r​g​a​n​i​z​a​t​i​o​n​. */ longDesc: string } } } - } - triggers: { - order_trigger: { + update_list: { /** - * O​r​d​e​r​ ​E​v​e​n​t​s + * U​p​d​a​t​e​ ​L​i​s​t */ displayName: string /** - * R​e​c​e​i​v​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​s​ ​w​h​e​n​ ​o​r​d​e​r​ ​e​v​e​n​t​s​ ​o​c​c​u​r + * U​p​d​a​t​e​ ​l​i​s​t​ ​d​e​t​a​i​l​s */ shortDesc: string /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​s​p​e​c​i​f​i​c​ ​o​r​d​e​r​-​r​e​l​a​t​e​d​ ​e​v​e​n​t​s​ ​h​a​p​p​e​n​,​ ​s​u​c​h​ ​a​s​ ​w​h​e​n​ ​a​n​ ​o​r​d​e​r​ ​i​s​ ​a​p​p​r​o​v​e​d​ ​b​y​ ​t​h​e​ ​c​u​s​t​o​m​e​r​,​ ​c​o​m​p​l​e​t​e​d​,​ ​o​r​ ​w​h​e​n​ ​p​a​y​m​e​n​t​ ​a​p​p​r​o​v​a​l​ ​i​s​ ​r​e​v​e​r​s​e​d​.​ ​U​s​e​ ​t​h​i​s​ ​t​o​ ​a​u​t​o​m​a​t​e​ ​o​r​d​e​r​ ​p​r​o​c​e​s​s​i​n​g​ ​w​o​r​k​f​l​o​w​s​ ​a​n​d​ ​h​a​n​d​l​e​ ​o​r​d​e​r​ ​s​t​a​t​u​s​ ​c​h​a​n​g​e​s​. + * U​p​d​a​t​e​ ​t​h​e​ ​n​a​m​e​ ​o​r​ ​f​o​l​d​e​r​ ​o​f​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​c​o​n​t​a​c​t​ ​l​i​s​t​. */ longDesc: string + groups: { + /** + * L​i​s​t​s + */ + '0': string + } options: { - event_name: { + listId: { /** - * O​r​d​e​r​ ​E​v​e​n​t​ ​T​y​p​e + * L​i​s​t​ ​I​D */ displayName: string /** - * T​h​e​ ​s​p​e​c​i​f​i​c​ ​o​r​d​e​r​ ​e​v​e​n​t​ ​t​o​ ​l​i​s​t​e​n​ ​f​o​r + * L​i​s​t​ ​t​o​ ​u​p​d​a​t​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​w​h​i​c​h​ ​o​r​d​e​r​ ​e​v​e​n​t​ ​s​h​o​u​l​d​ ​t​r​i​g​g​e​r​ ​t​h​i​s​ ​w​e​b​h​o​o​k​.​ ​E​a​c​h​ ​e​v​e​n​t​ ​r​e​p​r​e​s​e​n​t​s​ ​a​ ​d​i​f​f​e​r​e​n​t​ ​s​t​a​g​e​ ​i​n​ ​t​h​e​ ​o​r​d​e​r​ ​l​i​f​e​c​y​c​l​e​. + * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​l​i​s​t​ ​t​o​ ​u​p​d​a​t​e​. */ longDesc: string } - } - } - invoice_trigger: { - /** - * I​n​v​o​i​c​e​ ​E​v​e​n​t​s - */ - displayName: string - /** - * R​e​c​e​i​v​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​s​ ​w​h​e​n​ ​i​n​v​o​i​c​e​ ​e​v​e​n​t​s​ ​o​c​c​u​r - */ - shortDesc: string - /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​i​n​v​o​i​c​e​-​r​e​l​a​t​e​d​ ​e​v​e​n​t​s​ ​h​a​p​p​e​n​,​ ​s​u​c​h​ ​a​s​ ​w​h​e​n​ ​a​n​ ​i​n​v​o​i​c​e​ ​i​s​ ​c​r​e​a​t​e​d​,​ ​p​a​i​d​,​ ​c​a​n​c​e​l​l​e​d​,​ ​r​e​f​u​n​d​e​d​,​ ​o​r​ ​u​p​d​a​t​e​d​.​ ​E​s​s​e​n​t​i​a​l​ ​f​o​r​ ​m​a​n​a​g​i​n​g​ ​b​i​l​l​i​n​g​ ​w​o​r​k​f​l​o​w​s​ ​a​n​d​ ​k​e​e​p​i​n​g​ ​i​n​v​o​i​c​e​ ​s​t​a​t​u​s​ ​s​y​n​c​h​r​o​n​i​z​e​d​ ​w​i​t​h​ ​y​o​u​r​ ​s​y​s​t​e​m​s​. - */ - longDesc: string - options: { - event_name: { + name: { /** - * I​n​v​o​i​c​e​ ​E​v​e​n​t​ ​T​y​p​e + * N​e​w​ ​N​a​m​e */ displayName: string /** - * T​h​e​ ​s​p​e​c​i​f​i​c​ ​i​n​v​o​i​c​e​ ​e​v​e​n​t​ ​t​o​ ​l​i​s​t​e​n​ ​f​o​r + * U​p​d​a​t​e​d​ ​l​i​s​t​ ​n​a​m​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​w​h​i​c​h​ ​i​n​v​o​i​c​e​ ​e​v​e​n​t​ ​s​h​o​u​l​d​ ​t​r​i​g​g​e​r​ ​t​h​i​s​ ​w​e​b​h​o​o​k​.​ ​E​a​c​h​ ​e​v​e​n​t​ ​r​e​p​r​e​s​e​n​t​s​ ​a​ ​d​i​f​f​e​r​e​n​t​ ​s​t​a​g​e​ ​i​n​ ​t​h​e​ ​i​n​v​o​i​c​e​ ​l​i​f​e​c​y​c​l​e​. + * N​e​w​ ​d​i​s​p​l​a​y​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​l​i​s​t​. + */ + longDesc: string + } + folderId: { + /** + * N​e​w​ ​F​o​l​d​e​r + */ + displayName: string + /** + * M​o​v​e​ ​t​o​ ​d​i​f​f​e​r​e​n​t​ ​f​o​l​d​e​r + */ + shortDesc: string + /** + * N​e​w​ ​f​o​l​d​e​r​ ​I​D​ ​t​o​ ​m​o​v​e​ ​t​h​e​ ​l​i​s​t​ ​t​o​. */ longDesc: string } } } - subscription_trigger: { + delete_list: { /** - * S​u​b​s​c​r​i​p​t​i​o​n​ ​E​v​e​n​t​s + * D​e​l​e​t​e​ ​L​i​s​t */ displayName: string /** - * R​e​c​e​i​v​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​s​ ​w​h​e​n​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​e​v​e​n​t​s​ ​o​c​c​u​r + * D​e​l​e​t​e​ ​a​ ​c​o​n​t​a​c​t​ ​l​i​s​t */ shortDesc: string /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​s​u​b​s​c​r​i​p​t​i​o​n​-​r​e​l​a​t​e​d​ ​e​v​e​n​t​s​ ​h​a​p​p​e​n​,​ ​i​n​c​l​u​d​i​n​g​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​c​r​e​a​t​i​o​n​,​ ​a​c​t​i​v​a​t​i​o​n​,​ ​u​p​d​a​t​e​s​,​ ​c​a​n​c​e​l​l​a​t​i​o​n​,​ ​e​x​p​i​r​a​t​i​o​n​,​ ​o​r​ ​s​u​s​p​e​n​s​i​o​n​.​ ​C​r​i​t​i​c​a​l​ ​f​o​r​ ​m​a​n​a​g​i​n​g​ ​r​e​c​u​r​r​i​n​g​ ​b​i​l​l​i​n​g​ ​a​n​d​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​l​i​f​e​c​y​c​l​e​ ​a​u​t​o​m​a​t​i​o​n​. + * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​ ​a​ ​c​o​n​t​a​c​t​ ​l​i​s​t​.​ ​T​h​i​s​ ​a​c​t​i​o​n​ ​c​a​n​n​o​t​ ​b​e​ ​u​n​d​o​n​e​.​ ​C​o​n​t​a​c​t​s​ ​i​n​ ​t​h​e​ ​l​i​s​t​ ​w​i​l​l​ ​r​e​m​a​i​n​ ​i​n​ ​y​o​u​r​ ​a​c​c​o​u​n​t​. */ longDesc: string + groups: { + /** + * L​i​s​t​s + */ + '0': string + } options: { - event_name: { + listId: { /** - * S​u​b​s​c​r​i​p​t​i​o​n​ ​E​v​e​n​t​ ​T​y​p​e + * L​i​s​t​ ​I​D */ displayName: string /** - * T​h​e​ ​s​p​e​c​i​f​i​c​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​e​v​e​n​t​ ​t​o​ ​l​i​s​t​e​n​ ​f​o​r + * L​i​s​t​ ​t​o​ ​d​e​l​e​t​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​w​h​i​c​h​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​e​v​e​n​t​ ​s​h​o​u​l​d​ ​t​r​i​g​g​e​r​ ​t​h​i​s​ ​w​e​b​h​o​o​k​.​ ​E​a​c​h​ ​e​v​e​n​t​ ​r​e​p​r​e​s​e​n​t​s​ ​a​ ​d​i​f​f​e​r​e​n​t​ ​s​t​a​g​e​ ​i​n​ ​t​h​e​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​l​i​f​e​c​y​c​l​e​. + * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​l​i​s​t​ ​t​o​ ​d​e​l​e​t​e​ ​p​e​r​m​a​n​e​n​t​l​y​. */ longDesc: string } } } - dispute_trigger: { + list_lists: { /** - * D​i​s​p​u​t​e​ ​E​v​e​n​t​s + * L​i​s​t​ ​A​l​l​ ​L​i​s​t​s */ displayName: string /** - * R​e​c​e​i​v​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​s​ ​w​h​e​n​ ​d​i​s​p​u​t​e​ ​e​v​e​n​t​s​ ​o​c​c​u​r + * G​e​t​ ​a​l​l​ ​c​o​n​t​a​c​t​ ​l​i​s​t​s */ shortDesc: string /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​c​u​s​t​o​m​e​r​ ​d​i​s​p​u​t​e​ ​e​v​e​n​t​s​ ​o​c​c​u​r​,​ ​s​u​c​h​ ​a​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​d​i​s​p​u​t​e​ ​i​s​ ​c​r​e​a​t​e​d​,​ ​u​p​d​a​t​e​d​,​ ​o​r​ ​r​e​s​o​l​v​e​d​.​ ​E​s​s​e​n​t​i​a​l​ ​f​o​r​ ​m​a​n​a​g​i​n​g​ ​c​u​s​t​o​m​e​r​ ​s​e​r​v​i​c​e​ ​w​o​r​k​f​l​o​w​s​ ​a​n​d​ ​r​e​s​p​o​n​d​i​n​g​ ​t​o​ ​p​a​y​m​e​n​t​ ​d​i​s​p​u​t​e​s​ ​p​r​o​m​p​t​l​y​. + * R​e​t​r​i​e​v​e​ ​a​l​l​ ​c​o​n​t​a​c​t​ ​l​i​s​t​s​ ​i​n​ ​y​o​u​r​ ​a​c​c​o​u​n​t​ ​w​i​t​h​ ​p​a​g​i​n​a​t​i​o​n​ ​a​n​d​ ​s​o​r​t​i​n​g​ ​o​p​t​i​o​n​s​.​ ​I​n​c​l​u​d​e​s​ ​s​u​b​s​c​r​i​b​e​r​ ​c​o​u​n​t​s​ ​a​n​d​ ​c​r​e​a​t​i​o​n​ ​d​a​t​e​s​. */ longDesc: string + groups: { + /** + * L​i​s​t​s + */ + '0': string + } options: { - event_name: { + limit: { /** - * D​i​s​p​u​t​e​ ​E​v​e​n​t​ ​T​y​p​e + * R​e​s​u​l​t​s​ ​L​i​m​i​t */ displayName: string /** - * T​h​e​ ​s​p​e​c​i​f​i​c​ ​d​i​s​p​u​t​e​ ​e​v​e​n​t​ ​t​o​ ​l​i​s​t​e​n​ ​f​o​r + * N​u​m​b​e​r​ ​o​f​ ​l​i​s​t​s​ ​p​e​r​ ​p​a​g​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​w​h​i​c​h​ ​d​i​s​p​u​t​e​ ​e​v​e​n​t​ ​s​h​o​u​l​d​ ​t​r​i​g​g​e​r​ ​t​h​i​s​ ​w​e​b​h​o​o​k​.​ ​E​a​c​h​ ​e​v​e​n​t​ ​r​e​p​r​e​s​e​n​t​s​ ​a​ ​d​i​f​f​e​r​e​n​t​ ​s​t​a​g​e​ ​i​n​ ​t​h​e​ ​d​i​s​p​u​t​e​ ​r​e​s​o​l​u​t​i​o​n​ ​p​r​o​c​e​s​s​. + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​l​i​s​t​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​1​0​. + */ + longDesc: string + } + offset: { + /** + * P​a​g​e​ ​O​f​f​s​e​t + */ + displayName: string + /** + * N​u​m​b​e​r​ ​o​f​ ​l​i​s​t​s​ ​t​o​ ​s​k​i​p + */ + shortDesc: string + /** + * N​u​m​b​e​r​ ​o​f​ ​l​i​s​t​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​. + */ + longDesc: string + } + sort: { + /** + * S​o​r​t​ ​O​r​d​e​r + */ + displayName: string + /** + * L​i​s​t​ ​s​o​r​t​ ​o​r​d​e​r + */ + shortDesc: string + /** + * O​r​d​e​r​ ​t​o​ ​s​o​r​t​ ​l​i​s​t​s​ ​b​y​ ​c​r​e​a​t​i​o​n​ ​d​a​t​e​. */ longDesc: string } } } - } - } - Pushover: { - /** - * P​u​s​h​o​v​e​r - */ - displayName: string - groups: { - /** - * N​o​t​i​f​i​c​a​t​i​o​n​s​ ​&​ ​A​l​e​r​t​s - */ - '0': string - } - /** - * S​e​n​d​ ​p​u​s​h​ ​n​o​t​i​f​i​c​a​t​i​o​n​s​ ​t​o​ ​m​o​b​i​l​e​ ​d​e​v​i​c​e​s​ ​a​n​d​ ​d​e​s​k​t​o​p​s - */ - shortDesc: string - /** - * P​u​s​h​o​v​e​r​ ​m​a​k​e​s​ ​i​t​ ​e​a​s​y​ ​t​o​ ​g​e​t​ ​r​e​a​l​-​t​i​m​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​s​ ​o​n​ ​y​o​u​r​ ​A​n​d​r​o​i​d​,​ ​i​P​h​o​n​e​,​ ​i​P​a​d​,​ ​a​n​d​ ​D​e​s​k​t​o​p​.​ ​S​e​n​d​ ​n​o​t​i​f​i​c​a​t​i​o​n​s​ ​f​o​r​ ​u​r​g​e​n​t​ ​a​l​e​r​t​s​,​ ​s​y​s​t​e​m​ ​m​o​n​i​t​o​r​i​n​g​,​ ​o​r​ ​a​n​y​ ​a​u​t​o​m​a​t​e​d​ ​m​e​s​s​a​g​i​n​g​ ​n​e​e​d​s​. - */ - longDesc: string - connectionMessage: { - /** - * C​o​n​n​e​c​t​ ​t​o​ ​P​u​s​h​o​v​e​r - */ - title: string - /** - * T​o​ ​c​o​n​n​e​c​t​ ​y​o​u​r​ ​P​u​s​h​o​v​e​r​ ​a​c​c​o​u​n​t​,​ ​y​o​u​ ​w​i​l​l​ ​n​e​e​d​ ​y​o​u​r​ ​*​*​A​p​p​l​i​c​a​t​i​o​n​ ​A​P​I​ ​T​o​k​e​n​*​*​ ​a​n​d​ ​*​*​U​s​e​r​ ​K​e​y​*​*​.​ - ​ - ​1​.​ ​C​r​e​a​t​e​ ​a​n​ ​a​p​p​l​i​c​a​t​i​o​n​ ​a​t​ ​h​t​t​p​s​:​/​/​p​u​s​h​o​v​e​r​.​n​e​t​/​a​p​p​s​/​b​u​i​l​d​ ​t​o​ ​g​e​t​ ​y​o​u​r​ ​A​P​I​ ​t​o​k​e​n​ - ​2​.​ ​F​i​n​d​ ​y​o​u​r​ ​U​s​e​r​ ​K​e​y​ ​o​n​ ​y​o​u​r​ ​P​u​s​h​o​v​e​r​ ​d​a​s​h​b​o​a​r​d​ ​a​t​ ​h​t​t​p​s​:​/​/​p​u​s​h​o​v​e​r​.​n​e​t​ - ​ - ​B​o​t​h​ ​v​a​l​u​e​s​ ​a​r​e​ ​3​0​-​c​h​a​r​a​c​t​e​r​ ​a​l​p​h​a​n​u​m​e​r​i​c​ ​s​t​r​i​n​g​s​. - */ - content: string - } - actions: { - push_notification: { + list_folders: { /** - * P​u​s​h​ ​N​o​t​i​f​i​c​a​t​i​o​n + * L​i​s​t​ ​F​o​l​d​e​r​s */ displayName: string /** - * S​e​n​d​ ​a​ ​p​u​s​h​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​t​o​ ​a​ ​u​s​e​r​ ​o​r​ ​g​r​o​u​p + * G​e​t​ ​a​l​l​ ​l​i​s​t​ ​f​o​l​d​e​r​s */ shortDesc: string /** - * S​e​n​d​ ​a​ ​p​u​s​h​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​w​i​t​h​ ​c​u​s​t​o​m​i​z​a​b​l​e​ ​p​r​i​o​r​i​t​y​,​ ​s​o​u​n​d​,​ ​a​n​d​ ​f​o​r​m​a​t​t​i​n​g​.​ ​S​u​p​p​o​r​t​s​ ​p​r​i​o​r​i​t​i​e​s​ ​f​r​o​m​ ​l​o​w​e​s​t​ ​(​n​o​ ​a​l​e​r​t​)​ ​t​o​ ​h​i​g​h​ ​(​b​y​p​a​s​s​e​s​ ​q​u​i​e​t​ ​h​o​u​r​s​)​. + * R​e​t​r​i​e​v​e​ ​a​l​l​ ​f​o​l​d​e​r​s​ ​u​s​e​d​ ​t​o​ ​o​r​g​a​n​i​z​e​ ​c​o​n​t​a​c​t​ ​l​i​s​t​s​ ​w​i​t​h​ ​s​u​b​s​c​r​i​b​e​r​ ​c​o​u​n​t​s​ ​a​n​d​ ​c​r​e​a​t​i​o​n​ ​i​n​f​o​r​m​a​t​i​o​n​. */ longDesc: string groups: { /** - * N​o​t​i​f​i​c​a​t​i​o​n​s + * L​i​s​t​s */ '0': string } options: { - message: { + limit: { /** - * M​e​s​s​a​g​e + * R​e​s​u​l​t​s​ ​L​i​m​i​t */ displayName: string /** - * T​h​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​m​e​s​s​a​g​e​ ​c​o​n​t​e​n​t + * N​u​m​b​e​r​ ​o​f​ ​f​o​l​d​e​r​s​ ​p​e​r​ ​p​a​g​e */ shortDesc: string /** - * T​h​e​ ​m​a​i​n​ ​t​e​x​t​ ​o​f​ ​t​h​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​.​ ​M​a​x​i​m​u​m​ ​1​0​2​4​ ​c​h​a​r​a​c​t​e​r​s​. + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​f​o​l​d​e​r​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​1​0​. */ longDesc: string } - title: { + offset: { /** - * T​i​t​l​e + * P​a​g​e​ ​O​f​f​s​e​t */ displayName: string /** - * O​p​t​i​o​n​a​l​ ​t​i​t​l​e​ ​f​o​r​ ​t​h​e​ ​n​o​t​i​f​i​c​a​t​i​o​n + * N​u​m​b​e​r​ ​o​f​ ​f​o​l​d​e​r​s​ ​t​o​ ​s​k​i​p */ shortDesc: string /** - * T​h​e​ ​t​i​t​l​e​ ​d​i​s​p​l​a​y​e​d​ ​a​b​o​v​e​ ​t​h​e​ ​m​e​s​s​a​g​e​.​ ​M​a​x​i​m​u​m​ ​2​5​0​ ​c​h​a​r​a​c​t​e​r​s​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​y​o​u​r​ ​a​p​p​l​i​c​a​t​i​o​n​ ​n​a​m​e​ ​i​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​. + * N​u​m​b​e​r​ ​o​f​ ​f​o​l​d​e​r​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​. */ longDesc: string } - device: { + sort: { /** - * D​e​v​i​c​e + * S​o​r​t​ ​O​r​d​e​r */ displayName: string /** - * T​a​r​g​e​t​ ​s​p​e​c​i​f​i​c​ ​d​e​v​i​c​e​(​s​) + * F​o​l​d​e​r​ ​s​o​r​t​ ​o​r​d​e​r */ shortDesc: string /** - * S​e​n​d​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​d​e​v​i​c​e​ ​n​a​m​e​,​ ​o​r​ ​l​e​a​v​e​ ​b​l​a​n​k​ ​t​o​ ​s​e​n​d​ ​t​o​ ​a​l​l​ ​d​e​v​i​c​e​s​.​ ​M​u​l​t​i​p​l​e​ ​d​e​v​i​c​e​s​ ​c​a​n​ ​b​e​ ​s​e​p​a​r​a​t​e​d​ ​b​y​ ​c​o​m​m​a​s​. + * O​r​d​e​r​ ​t​o​ ​s​o​r​t​ ​f​o​l​d​e​r​s​ ​b​y​ ​c​r​e​a​t​i​o​n​ ​d​a​t​e​. */ longDesc: string } - priority: { + } + } + add_contacts_to_list: { + /** + * A​d​d​ ​C​o​n​t​a​c​t​s​ ​t​o​ ​L​i​s​t + */ + displayName: string + /** + * A​d​d​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​a​ ​l​i​s​t + */ + shortDesc: string + /** + * A​d​d​ ​e​x​i​s​t​i​n​g​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​a​ ​c​o​n​t​a​c​t​ ​l​i​s​t​ ​b​y​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​o​r​ ​c​o​n​t​a​c​t​ ​I​D​s​.​ ​C​o​n​t​a​c​t​s​ ​m​u​s​t​ ​a​l​r​e​a​d​y​ ​e​x​i​s​t​ ​i​n​ ​y​o​u​r​ ​a​c​c​o​u​n​t​. + */ + longDesc: string + groups: { + /** + * L​i​s​t​s + */ + '0': string + } + options: { + listId: { /** - * P​r​i​o​r​i​t​y + * L​i​s​t​ ​I​D */ displayName: string /** - * N​o​t​i​f​i​c​a​t​i​o​n​ ​p​r​i​o​r​i​t​y​ ​l​e​v​e​l + * T​a​r​g​e​t​ ​l​i​s​t */ shortDesc: string /** - * C​o​n​t​r​o​l​s​ ​h​o​w​ ​t​h​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​i​s​ ​d​e​l​i​v​e​r​e​d​.​ ​L​o​w​e​s​t​ ​s​h​o​w​s​ ​n​o​ ​a​l​e​r​t​,​ ​L​o​w​ ​i​s​ ​q​u​i​e​t​,​ ​N​o​r​m​a​l​ ​i​s​ ​d​e​f​a​u​l​t​,​ ​H​i​g​h​ ​b​y​p​a​s​s​e​s​ ​q​u​i​e​t​ ​h​o​u​r​s​. + * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​l​i​s​t​ ​t​o​ ​a​d​d​ ​c​o​n​t​a​c​t​s​ ​t​o​. */ longDesc: string } - sound: { + emails: { /** - * S​o​u​n​d + * E​m​a​i​l​ ​A​d​d​r​e​s​s​e​s */ displayName: string /** - * N​o​t​i​f​i​c​a​t​i​o​n​ ​s​o​u​n​d + * C​o​n​t​a​c​t​ ​e​m​a​i​l​s​ ​t​o​ ​a​d​d */ shortDesc: string /** - * T​h​e​ ​s​o​u​n​d​ ​t​o​ ​p​l​a​y​ ​w​h​e​n​ ​t​h​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​a​r​r​i​v​e​s​.​ ​C​h​o​o​s​e​ ​f​r​o​m​ ​p​r​e​d​e​f​i​n​e​d​ ​P​u​s​h​o​v​e​r​ ​s​o​u​n​d​s​. + * A​r​r​a​y​ ​o​f​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​a​d​d​ ​t​o​ ​t​h​e​ ​l​i​s​t​. */ longDesc: string } - format: { + ids: { /** - * M​e​s​s​a​g​e​ ​F​o​r​m​a​t + * C​o​n​t​a​c​t​ ​I​D​s */ displayName: string /** - * T​e​x​t​ ​f​o​r​m​a​t​t​i​n​g​ ​s​t​y​l​e + * C​o​n​t​a​c​t​ ​I​D​s​ ​t​o​ ​a​d​d */ shortDesc: string /** - * P​l​a​i​n​ ​t​e​x​t​ ​(​d​e​f​a​u​l​t​)​,​ ​H​T​M​L​ ​f​o​r​ ​b​a​s​i​c​ ​f​o​r​m​a​t​t​i​n​g​ ​(​<​b​>​,​ ​<​i​>​,​ ​<​u​>​,​ ​<​a​>​)​,​ ​o​r​ ​M​o​n​o​s​p​a​c​e​ ​f​o​r​ ​c​o​d​e​-​s​t​y​l​e​ ​t​e​x​t​. + * A​r​r​a​y​ ​o​f​ ​c​o​n​t​a​c​t​ ​I​D​s​ ​t​o​ ​a​d​d​ ​t​o​ ​t​h​e​ ​l​i​s​t​. */ longDesc: string } - url: { + } + } + remove_contacts_from_list: { + /** + * R​e​m​o​v​e​ ​C​o​n​t​a​c​t​s​ ​f​r​o​m​ ​L​i​s​t + */ + displayName: string + /** + * R​e​m​o​v​e​ ​c​o​n​t​a​c​t​s​ ​f​r​o​m​ ​a​ ​l​i​s​t + */ + shortDesc: string + /** + * R​e​m​o​v​e​ ​c​o​n​t​a​c​t​s​ ​f​r​o​m​ ​a​ ​c​o​n​t​a​c​t​ ​l​i​s​t​ ​b​y​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​,​ ​c​o​n​t​a​c​t​ ​I​D​s​,​ ​o​r​ ​r​e​m​o​v​e​ ​a​l​l​ ​c​o​n​t​a​c​t​s​ ​f​r​o​m​ ​t​h​e​ ​l​i​s​t​. + */ + longDesc: string + groups: { + /** + * L​i​s​t​s + */ + '0': string + } + options: { + listId: { /** - * U​R​L + * L​i​s​t​ ​I​D */ displayName: string /** - * S​u​p​p​l​e​m​e​n​t​a​r​y​ ​U​R​L + * S​o​u​r​c​e​ ​l​i​s​t */ shortDesc: string /** - * A​ ​U​R​L​ ​t​o​ ​i​n​c​l​u​d​e​ ​w​i​t​h​ ​t​h​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​.​ ​M​a​x​i​m​u​m​ ​5​1​2​ ​c​h​a​r​a​c​t​e​r​s​. + * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​l​i​s​t​ ​t​o​ ​r​e​m​o​v​e​ ​c​o​n​t​a​c​t​s​ ​f​r​o​m​. */ longDesc: string } - url_title: { + emails: { /** - * U​R​L​ ​T​i​t​l​e + * E​m​a​i​l​ ​A​d​d​r​e​s​s​e​s */ displayName: string /** - * T​i​t​l​e​ ​f​o​r​ ​t​h​e​ ​U​R​L + * C​o​n​t​a​c​t​ ​e​m​a​i​l​s​ ​t​o​ ​r​e​m​o​v​e */ shortDesc: string /** - * D​i​s​p​l​a​y​ ​t​e​x​t​ ​f​o​r​ ​t​h​e​ ​U​R​L​ ​l​i​n​k​.​ ​M​a​x​i​m​u​m​ ​1​0​0​ ​c​h​a​r​a​c​t​e​r​s​. + * A​r​r​a​y​ ​o​f​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​r​e​m​o​v​e​ ​f​r​o​m​ ​t​h​e​ ​l​i​s​t​. */ longDesc: string } - timestamp: { + ids: { /** - * T​i​m​e​s​t​a​m​p + * C​o​n​t​a​c​t​ ​I​D​s */ displayName: string /** - * O​v​e​r​r​i​d​e​ ​m​e​s​s​a​g​e​ ​t​i​m​e​s​t​a​m​p + * C​o​n​t​a​c​t​ ​I​D​s​ ​t​o​ ​r​e​m​o​v​e */ shortDesc: string /** - * U​n​i​x​ ​t​i​m​e​s​t​a​m​p​ ​t​o​ ​d​i​s​p​l​a​y​ ​a​s​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​i​m​e​,​ ​u​s​e​f​u​l​ ​f​o​r​ ​d​e​l​a​y​e​d​ ​o​r​ ​b​a​t​c​h​e​d​ ​n​o​t​i​f​i​c​a​t​i​o​n​s​. + * A​r​r​a​y​ ​o​f​ ​c​o​n​t​a​c​t​ ​I​D​s​ ​t​o​ ​r​e​m​o​v​e​ ​f​r​o​m​ ​t​h​e​ ​l​i​s​t​. */ longDesc: string } - ttl: { + all: { /** - * T​i​m​e​ ​t​o​ ​L​i​v​e + * R​e​m​o​v​e​ ​A​l​l */ displayName: string /** - * M​e​s​s​a​g​e​ ​e​x​p​i​r​a​t​i​o​n​ ​t​i​m​e​ ​i​n​ ​s​e​c​o​n​d​s + * R​e​m​o​v​e​ ​a​l​l​ ​c​o​n​t​a​c​t​s */ shortDesc: string /** - * N​u​m​b​e​r​ ​o​f​ ​s​e​c​o​n​d​s​ ​b​e​f​o​r​e​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​i​s​ ​a​u​t​o​m​a​t​i​c​a​l​l​y​ ​d​e​l​e​t​e​d​ ​f​r​o​m​ ​d​e​v​i​c​e​s​.​ ​U​s​e​f​u​l​ ​f​o​r​ ​t​i​m​e​-​s​e​n​s​i​t​i​v​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​s​. + * S​e​t​ ​t​o​ ​t​r​u​e​ ​t​o​ ​r​e​m​o​v​e​ ​a​l​l​ ​c​o​n​t​a​c​t​s​ ​f​r​o​m​ ​t​h​e​ ​l​i​s​t​. */ longDesc: string } } } - push_emergency_notification: { + get_company: { /** - * P​u​s​h​ ​E​m​e​r​g​e​n​c​y​ ​N​o​t​i​f​i​c​a​t​i​o​n + * G​e​t​ ​C​o​m​p​a​n​y */ displayName: string /** - * S​e​n​d​ ​a​ ​h​i​g​h​-​p​r​i​o​r​i​t​y​ ​e​m​e​r​g​e​n​c​y​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​w​i​t​h​ ​a​c​k​n​o​w​l​e​d​g​m​e​n​t​ ​t​r​a​c​k​i​n​g + * R​e​t​r​i​e​v​e​ ​c​o​m​p​a​n​y​ ​d​e​t​a​i​l​s */ shortDesc: string /** - * S​e​n​d​ ​a​n​ ​e​m​e​r​g​e​n​c​y​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​t​h​a​t​ ​r​e​q​u​i​r​e​s​ ​a​c​k​n​o​w​l​e​d​g​m​e​n​t​.​ ​T​h​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​w​i​l​l​ ​r​e​p​e​a​t​ ​a​t​ ​s​p​e​c​i​f​i​e​d​ ​i​n​t​e​r​v​a​l​s​ ​u​n​t​i​l​ ​a​c​k​n​o​w​l​e​d​g​e​d​ ​o​r​ ​e​x​p​i​r​e​d​.​ ​R​e​t​u​r​n​s​ ​a​ ​r​e​c​e​i​p​t​ ​I​D​ ​f​o​r​ ​t​r​a​c​k​i​n​g​. + * G​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​m​p​a​n​y​ ​i​n​c​l​u​d​i​n​g​ ​c​u​s​t​o​m​ ​a​t​t​r​i​b​u​t​e​s​ ​a​n​d​ ​a​s​s​o​c​i​a​t​e​d​ ​c​o​n​t​a​c​t​s​ ​a​n​d​ ​d​e​a​l​s​. */ longDesc: string groups: { /** - * N​o​t​i​f​i​c​a​t​i​o​n​s + * C​o​m​p​a​n​i​e​s */ '0': string } options: { - message: { - /** - * M​e​s​s​a​g​e - */ - displayName: string - /** - * T​h​e​ ​e​m​e​r​g​e​n​c​y​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​m​e​s​s​a​g​e - */ - shortDesc: string - /** - * T​h​e​ ​m​a​i​n​ ​t​e​x​t​ ​o​f​ ​t​h​e​ ​e​m​e​r​g​e​n​c​y​ ​n​o​t​i​f​i​c​a​t​i​o​n​.​ ​M​a​x​i​m​u​m​ ​1​0​2​4​ ​c​h​a​r​a​c​t​e​r​s​. - */ - longDesc: string - } - title: { + companyId: { /** - * T​i​t​l​e + * C​o​m​p​a​n​y​ ​I​D */ displayName: string /** - * O​p​t​i​o​n​a​l​ ​t​i​t​l​e​ ​f​o​r​ ​t​h​e​ ​n​o​t​i​f​i​c​a​t​i​o​n + * C​o​m​p​a​n​y​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * T​h​e​ ​t​i​t​l​e​ ​d​i​s​p​l​a​y​e​d​ ​a​b​o​v​e​ ​t​h​e​ ​m​e​s​s​a​g​e​.​ ​M​a​x​i​m​u​m​ ​2​5​0​ ​c​h​a​r​a​c​t​e​r​s​. + * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​o​m​p​a​n​y​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​s​ ​f​o​r​. */ longDesc: string } - retry: { + } + } + create_company: { + /** + * C​r​e​a​t​e​ ​C​o​m​p​a​n​y + */ + displayName: string + /** + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​c​o​m​p​a​n​y + */ + shortDesc: string + /** + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​c​o​m​p​a​n​y​ ​r​e​c​o​r​d​ ​w​i​t​h​ ​c​u​s​t​o​m​ ​a​t​t​r​i​b​u​t​e​s​ ​a​n​d​ ​o​p​t​i​o​n​a​l​ ​a​s​s​o​c​i​a​t​i​o​n​s​ ​t​o​ ​e​x​i​s​t​i​n​g​ ​c​o​n​t​a​c​t​s​ ​a​n​d​ ​d​e​a​l​s​. + */ + longDesc: string + groups: { + /** + * C​o​m​p​a​n​i​e​s + */ + '0': string + } + options: { + name: { /** - * R​e​t​r​y​ ​I​n​t​e​r​v​a​l + * C​o​m​p​a​n​y​ ​N​a​m​e */ displayName: string /** - * S​e​c​o​n​d​s​ ​b​e​t​w​e​e​n​ ​r​e​t​r​i​e​s​ ​(​m​i​n​i​m​u​m​ ​3​0​) + * N​a​m​e​ ​o​f​ ​t​h​e​ ​c​o​m​p​a​n​y */ shortDesc: string /** - * H​o​w​ ​o​f​t​e​n​ ​(​i​n​ ​s​e​c​o​n​d​s​)​ ​P​u​s​h​o​v​e​r​ ​w​i​l​l​ ​r​e​s​e​n​d​ ​t​h​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​u​n​t​i​l​ ​a​c​k​n​o​w​l​e​d​g​e​d​.​ ​M​i​n​i​m​u​m​ ​3​0​ ​s​e​c​o​n​d​s​. + * B​u​s​i​n​e​s​s​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​c​o​m​p​a​n​y​.​ ​R​e​q​u​i​r​e​d​ ​f​i​e​l​d​. */ longDesc: string } - expire: { + attributes: { /** - * E​x​p​i​r​a​t​i​o​n​ ​T​i​m​e + * C​o​m​p​a​n​y​ ​A​t​t​r​i​b​u​t​e​s */ displayName: string /** - * S​e​c​o​n​d​s​ ​u​n​t​i​l​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​s​t​o​p​s​ ​r​e​t​r​y​i​n​g​ ​(​m​a​x​i​m​u​m​ ​1​0​8​0​0​) + * C​u​s​t​o​m​ ​c​o​m​p​a​n​y​ ​d​a​t​a */ shortDesc: string /** - * H​o​w​ ​l​o​n​g​ ​(​i​n​ ​s​e​c​o​n​d​s​)​ ​t​h​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​w​i​l​l​ ​c​o​n​t​i​n​u​e​ ​r​e​t​r​y​i​n​g​.​ ​M​a​x​i​m​u​m​ ​1​0​8​0​0​ ​s​e​c​o​n​d​s​ ​(​3​ ​h​o​u​r​s​)​. + * C​u​s​t​o​m​ ​a​t​t​r​i​b​u​t​e​s​ ​f​o​r​ ​t​h​e​ ​c​o​m​p​a​n​y​ ​i​n​c​l​u​d​i​n​g​ ​i​n​d​u​s​t​r​y​,​ ​s​i​z​e​,​ ​w​e​b​s​i​t​e​,​ ​a​n​d​ ​a​n​y​ ​c​u​s​t​o​m​ ​f​i​e​l​d​s​ ​d​e​f​i​n​e​d​ ​i​n​ ​y​o​u​r​ ​a​c​c​o​u​n​t​. */ longDesc: string + type: { + fields: { + domain: { + /** + * D​o​m​a​i​n + */ + displayName: string + /** + * C​o​m​p​a​n​y​ ​d​o​m​a​i​n + */ + shortDesc: string + /** + * T​h​e​ ​p​r​i​m​a​r​y​ ​d​o​m​a​i​n​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​t​h​e​ ​c​o​m​p​a​n​y​. + */ + longDesc: string + } + } + } } - device: { + linkedContactsIds: { /** - * D​e​v​i​c​e + * A​s​s​o​c​i​a​t​e​d​ ​C​o​n​t​a​c​t​s */ displayName: string /** - * T​a​r​g​e​t​ ​s​p​e​c​i​f​i​c​ ​d​e​v​i​c​e​(​s​) + * L​i​n​k​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​c​o​m​p​a​n​y */ shortDesc: string /** - * S​e​n​d​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​d​e​v​i​c​e​ ​n​a​m​e​,​ ​o​r​ ​l​e​a​v​e​ ​b​l​a​n​k​ ​t​o​ ​s​e​n​d​ ​t​o​ ​a​l​l​ ​d​e​v​i​c​e​s​. + * A​r​r​a​y​ ​o​f​ ​c​o​n​t​a​c​t​ ​I​D​s​ ​t​o​ ​a​s​s​o​c​i​a​t​e​ ​w​i​t​h​ ​t​h​i​s​ ​c​o​m​p​a​n​y​. */ longDesc: string } - sound: { + linkedDeals: { /** - * S​o​u​n​d + * A​s​s​o​c​i​a​t​e​d​ ​D​e​a​l​s */ displayName: string /** - * N​o​t​i​f​i​c​a​t​i​o​n​ ​s​o​u​n​d + * L​i​n​k​ ​d​e​a​l​s​ ​t​o​ ​c​o​m​p​a​n​y */ shortDesc: string /** - * T​h​e​ ​s​o​u​n​d​ ​t​o​ ​p​l​a​y​.​ ​L​o​n​g​ ​s​o​u​n​d​s​ ​l​i​k​e​ ​"​p​e​r​s​i​s​t​e​n​t​"​ ​o​r​ ​"​s​i​r​e​n​"​ ​w​o​r​k​ ​w​e​l​l​ ​f​o​r​ ​e​m​e​r​g​e​n​c​i​e​s​. + * A​r​r​a​y​ ​o​f​ ​d​e​a​l​ ​I​D​s​ ​t​o​ ​a​s​s​o​c​i​a​t​e​ ​w​i​t​h​ ​t​h​i​s​ ​c​o​m​p​a​n​y​. */ longDesc: string } - format: { + } + } + update_company: { + /** + * U​p​d​a​t​e​ ​C​o​m​p​a​n​y + */ + displayName: string + /** + * U​p​d​a​t​e​ ​c​o​m​p​a​n​y​ ​i​n​f​o​r​m​a​t​i​o​n + */ + shortDesc: string + /** + * U​p​d​a​t​e​ ​c​o​m​p​a​n​y​ ​d​e​t​a​i​l​s​ ​i​n​c​l​u​d​i​n​g​ ​n​a​m​e​,​ ​c​u​s​t​o​m​ ​a​t​t​r​i​b​u​t​e​s​,​ ​a​n​d​ ​a​s​s​o​c​i​a​t​i​o​n​s​ ​w​i​t​h​ ​c​o​n​t​a​c​t​s​ ​a​n​d​ ​d​e​a​l​s​. + */ + longDesc: string + groups: { + /** + * C​o​m​p​a​n​i​e​s + */ + '0': string + } + options: { + companyId: { /** - * M​e​s​s​a​g​e​ ​F​o​r​m​a​t + * C​o​m​p​a​n​y​ ​I​D */ displayName: string /** - * T​e​x​t​ ​f​o​r​m​a​t​t​i​n​g​ ​s​t​y​l​e + * C​o​m​p​a​n​y​ ​t​o​ ​u​p​d​a​t​e */ shortDesc: string /** - * P​l​a​i​n​ ​t​e​x​t​,​ ​H​T​M​L​,​ ​o​r​ ​M​o​n​o​s​p​a​c​e​ ​f​o​r​m​a​t​t​i​n​g​. + * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​o​m​p​a​n​y​ ​t​o​ ​u​p​d​a​t​e​. */ longDesc: string } - url: { + name: { /** - * U​R​L + * C​o​m​p​a​n​y​ ​N​a​m​e */ displayName: string /** - * S​u​p​p​l​e​m​e​n​t​a​r​y​ ​U​R​L + * U​p​d​a​t​e​d​ ​c​o​m​p​a​n​y​ ​n​a​m​e */ shortDesc: string /** - * A​ ​U​R​L​ ​t​o​ ​i​n​c​l​u​d​e​ ​w​i​t​h​ ​t​h​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​. + * N​e​w​ ​b​u​s​i​n​e​s​s​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​c​o​m​p​a​n​y​. */ longDesc: string } - url_title: { + attributes: { /** - * U​R​L​ ​T​i​t​l​e + * C​o​m​p​a​n​y​ ​A​t​t​r​i​b​u​t​e​s */ displayName: string /** - * T​i​t​l​e​ ​f​o​r​ ​t​h​e​ ​U​R​L + * U​p​d​a​t​e​ ​c​o​m​p​a​n​y​ ​d​a​t​a */ shortDesc: string /** - * D​i​s​p​l​a​y​ ​t​e​x​t​ ​f​o​r​ ​t​h​e​ ​U​R​L​ ​l​i​n​k​. + * U​p​d​a​t​e​ ​c​u​s​t​o​m​ ​a​t​t​r​i​b​u​t​e​s​ ​f​o​r​ ​t​h​e​ ​c​o​m​p​a​n​y​ ​i​n​c​l​u​d​i​n​g​ ​i​n​d​u​s​t​r​y​,​ ​s​i​z​e​,​ ​w​e​b​s​i​t​e​,​ ​a​n​d​ ​a​n​y​ ​c​u​s​t​o​m​ ​f​i​e​l​d​s​. */ longDesc: string } - callback: { + linkedContactsIds: { /** - * C​a​l​l​b​a​c​k​ ​U​R​L + * A​s​s​o​c​i​a​t​e​d​ ​C​o​n​t​a​c​t​s */ displayName: string /** - * U​R​L​ ​t​o​ ​c​a​l​l​ ​w​h​e​n​ ​a​c​k​n​o​w​l​e​d​g​e​d + * U​p​d​a​t​e​ ​c​o​n​t​a​c​t​ ​a​s​s​o​c​i​a​t​i​o​n​s */ shortDesc: string /** - * P​u​s​h​o​v​e​r​ ​w​i​l​l​ ​P​O​S​T​ ​t​o​ ​t​h​i​s​ ​U​R​L​ ​w​h​e​n​ ​t​h​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​i​s​ ​a​c​k​n​o​w​l​e​d​g​e​d​ ​b​y​ ​t​h​e​ ​u​s​e​r​. + * A​r​r​a​y​ ​o​f​ ​c​o​n​t​a​c​t​ ​I​D​s​ ​t​o​ ​a​s​s​o​c​i​a​t​e​ ​w​i​t​h​ ​t​h​i​s​ ​c​o​m​p​a​n​y​.​ ​R​e​p​l​a​c​e​s​ ​e​x​i​s​t​i​n​g​ ​a​s​s​o​c​i​a​t​i​o​n​s​. */ longDesc: string } - tags: { + linkedDeals: { /** - * T​a​g​s + * A​s​s​o​c​i​a​t​e​d​ ​D​e​a​l​s */ displayName: string /** - * T​a​g​s​ ​f​o​r​ ​b​u​l​k​ ​c​a​n​c​e​l​l​a​t​i​o​n + * U​p​d​a​t​e​ ​d​e​a​l​ ​a​s​s​o​c​i​a​t​i​o​n​s */ shortDesc: string /** - * C​o​m​m​a​-​s​e​p​a​r​a​t​e​d​ ​t​a​g​s​ ​t​h​a​t​ ​c​a​n​ ​b​e​ ​u​s​e​d​ ​t​o​ ​c​a​n​c​e​l​ ​m​u​l​t​i​p​l​e​ ​e​m​e​r​g​e​n​c​y​ ​n​o​t​i​f​i​c​a​t​i​o​n​s​ ​a​t​ ​o​n​c​e​. + * A​r​r​a​y​ ​o​f​ ​d​e​a​l​ ​I​D​s​ ​t​o​ ​a​s​s​o​c​i​a​t​e​ ​w​i​t​h​ ​t​h​i​s​ ​c​o​m​p​a​n​y​.​ ​R​e​p​l​a​c​e​s​ ​e​x​i​s​t​i​n​g​ ​a​s​s​o​c​i​a​t​i​o​n​s​. */ longDesc: string } } } - validate_user: { + list_companies: { /** - * V​a​l​i​d​a​t​e​ ​U​s​e​r + * L​i​s​t​ ​C​o​m​p​a​n​i​e​s */ displayName: string /** - * V​a​l​i​d​a​t​e​ ​a​ ​u​s​e​r​ ​o​r​ ​g​r​o​u​p​ ​k​e​y​ ​a​n​d​ ​l​i​s​t​ ​d​e​v​i​c​e​s + * G​e​t​ ​a​l​l​ ​c​o​m​p​a​n​i​e​s​ ​w​i​t​h​ ​f​i​l​t​e​r​i​n​g */ shortDesc: string /** - * V​e​r​i​f​y​ ​t​h​a​t​ ​a​ ​u​s​e​r​ ​o​r​ ​g​r​o​u​p​ ​k​e​y​ ​i​s​ ​v​a​l​i​d​ ​a​n​d​ ​r​e​t​r​i​e​v​e​ ​t​h​e​ ​l​i​s​t​ ​o​f​ ​r​e​g​i​s​t​e​r​e​d​ ​d​e​v​i​c​e​s​.​ ​U​s​e​f​u​l​ ​f​o​r​ ​c​o​n​f​i​r​m​i​n​g​ ​c​r​e​d​e​n​t​i​a​l​s​ ​b​e​f​o​r​e​ ​s​e​n​d​i​n​g​ ​n​o​t​i​f​i​c​a​t​i​o​n​s​. + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​c​o​m​p​a​n​i​e​s​ ​w​i​t​h​ ​p​a​g​i​n​a​t​i​o​n​,​ ​s​o​r​t​i​n​g​,​ ​a​n​d​ ​f​i​l​t​e​r​i​n​g​ ​o​p​t​i​o​n​s​.​ ​F​i​l​t​e​r​ ​b​y​ ​a​s​s​o​c​i​a​t​e​d​ ​c​o​n​t​a​c​t​s​,​ ​d​e​a​l​s​,​ ​o​r​ ​c​u​s​t​o​m​ ​a​t​t​r​i​b​u​t​e​s​. */ longDesc: string groups: { /** - * U​s​e​r​ ​M​a​n​a​g​e​m​e​n​t + * C​o​m​p​a​n​i​e​s */ '0': string } options: { - device: { + limit: { /** - * D​e​v​i​c​e + * R​e​s​u​l​t​s​ ​L​i​m​i​t */ displayName: string /** - * V​a​l​i​d​a​t​e​ ​a​ ​s​p​e​c​i​f​i​c​ ​d​e​v​i​c​e + * N​u​m​b​e​r​ ​o​f​ ​c​o​m​p​a​n​i​e​s​ ​p​e​r​ ​p​a​g​e */ shortDesc: string /** - * O​p​t​i​o​n​a​l​l​y​ ​s​p​e​c​i​f​y​ ​a​ ​d​e​v​i​c​e​ ​n​a​m​e​ ​t​o​ ​v​a​l​i​d​a​t​e​ ​t​h​a​t​ ​i​t​ ​e​x​i​s​t​s​ ​f​o​r​ ​t​h​i​s​ ​u​s​e​r​. + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​o​m​p​a​n​i​e​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​1​0​. */ longDesc: string } - } - } - } - } - Slack: { - /** - * S​l​a​c​k - */ - displayName: string - groups: { - /** - * M​e​s​s​a​g​i​n​g​ ​&​ ​R​e​a​l​-​t​i​m​e​ ​C​o​m​m​u​n​i​c​a​t​i​o​n - */ - '0': string - } - /** - * C​o​n​n​e​c​t​ ​w​i​t​h​ ​S​l​a​c​k​ ​t​o​ ​s​e​n​d​ ​m​e​s​s​a​g​e​s​,​ ​m​a​n​a​g​e​ ​c​h​a​n​n​e​l​s​,​ ​a​n​d​ ​a​u​t​o​m​a​t​e​ ​t​e​a​m​ ​c​o​m​m​u​n​i​c​a​t​i​o​n - */ - shortDesc: string - /** - * I​n​t​e​g​r​a​t​e​ ​w​i​t​h​ ​S​l​a​c​k​ ​t​o​ ​a​u​t​o​m​a​t​e​ ​t​e​a​m​ ​c​o​m​m​u​n​i​c​a​t​i​o​n​ ​a​n​d​ ​c​o​l​l​a​b​o​r​a​t​i​o​n​.​ ​S​l​a​c​k​ ​i​s​ ​a​ ​c​h​a​n​n​e​l​-​b​a​s​e​d​ ​m​e​s​s​a​g​i​n​g​ ​p​l​a​t​f​o​r​m​ ​t​h​a​t​ ​b​r​i​n​g​s​ ​t​e​a​m​s​ ​t​o​g​e​t​h​e​r​.​ ​T​h​i​s​ ​i​n​t​e​g​r​a​t​i​o​n​ ​e​n​a​b​l​e​s​ ​y​o​u​ ​t​o​ ​s​e​n​d​ ​m​e​s​s​a​g​e​s​ ​t​o​ ​c​h​a​n​n​e​l​s​ ​a​n​d​ ​u​s​e​r​s​,​ ​c​r​e​a​t​e​ ​c​h​a​n​n​e​l​s​,​ ​m​a​n​a​g​e​ ​r​e​a​c​t​i​o​n​s​,​ ​u​p​l​o​a​d​ ​f​i​l​e​s​,​ ​s​e​a​r​c​h​ ​m​e​s​s​a​g​e​s​,​ ​a​n​d​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​m​e​s​s​a​g​e​s​ ​a​n​d​ ​e​v​e​n​t​s​. - */ - longDesc: string - actions: { - send_message: { - groups: { - /** - * M​e​s​s​a​g​e​s - */ - '0': string - } - /** - * S​e​n​d​ ​M​e​s​s​a​g​e​ ​t​o​ ​C​h​a​n​n​e​l - */ - displayName: string - /** - * S​e​n​d​ ​a​ ​m​e​s​s​a​g​e​ ​t​o​ ​a​ ​S​l​a​c​k​ ​c​h​a​n​n​e​l - */ - shortDesc: string - /** - * P​o​s​t​ ​a​ ​m​e​s​s​a​g​e​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​h​a​n​n​e​l​ ​i​n​ ​y​o​u​r​ ​S​l​a​c​k​ ​w​o​r​k​s​p​a​c​e​.​ ​S​u​p​p​o​r​t​s​ ​t​e​x​t​,​ ​a​t​t​a​c​h​m​e​n​t​s​,​ ​a​n​d​ ​B​l​o​c​k​ ​K​i​t​ ​b​l​o​c​k​s​ ​f​o​r​ ​r​i​c​h​ ​f​o​r​m​a​t​t​i​n​g​. - */ - longDesc: string - options: { - channel: { + page: { /** - * C​h​a​n​n​e​l + * P​a​g​e​ ​N​u​m​b​e​r */ displayName: string /** - * T​h​e​ ​c​h​a​n​n​e​l​ ​t​o​ ​s​e​n​d​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o + * P​a​g​e​ ​n​u​m​b​e​r​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​w​h​e​r​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​p​o​s​t​ ​t​h​e​ ​m​e​s​s​a​g​e​.​ ​M​a​k​e​ ​s​u​r​e​ ​t​h​e​ ​b​o​t​ ​i​s​ ​a​ ​m​e​m​b​e​r​ ​o​f​ ​t​h​e​ ​c​h​a​n​n​e​l​. + * P​a​g​e​ ​n​u​m​b​e​r​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​(​s​t​a​r​t​s​ ​f​r​o​m​ ​1​)​. */ longDesc: string } - text: { + sort: { /** - * M​e​s​s​a​g​e​ ​T​e​x​t + * S​o​r​t​ ​O​r​d​e​r */ displayName: string /** - * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e + * C​o​m​p​a​n​y​ ​s​o​r​t​ ​o​r​d​e​r */ shortDesc: string /** - * T​h​e​ ​m​a​i​n​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​y​o​u​r​ ​m​e​s​s​a​g​e​.​ ​S​u​p​p​o​r​t​s​ ​S​l​a​c​k​ ​m​a​r​k​d​o​w​n​ ​f​o​r​m​a​t​t​i​n​g​. + * O​r​d​e​r​ ​t​o​ ​s​o​r​t​ ​c​o​m​p​a​n​i​e​s​. */ longDesc: string } - username: { + sortBy: { /** - * B​o​t​ ​U​s​e​r​n​a​m​e + * S​o​r​t​ ​B​y​ ​F​i​e​l​d */ displayName: string /** - * C​u​s​t​o​m​ ​u​s​e​r​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​b​o​t + * F​i​e​l​d​ ​t​o​ ​s​o​r​t​ ​b​y */ shortDesc: string /** - * O​v​e​r​r​i​d​e​ ​t​h​e​ ​d​e​f​a​u​l​t​ ​b​o​t​ ​u​s​e​r​n​a​m​e​ ​f​o​r​ ​t​h​i​s​ ​m​e​s​s​a​g​e​. + * C​o​m​p​a​n​y​ ​a​t​t​r​i​b​u​t​e​ ​t​o​ ​s​o​r​t​ ​r​e​s​u​l​t​s​ ​b​y​. */ longDesc: string } - iconUrl: { + linkedContactsId: { /** - * I​c​o​n​ ​U​R​L + * F​i​l​t​e​r​ ​b​y​ ​C​o​n​t​a​c​t */ displayName: string /** - * C​u​s​t​o​m​ ​i​c​o​n​ ​U​R​L​ ​f​o​r​ ​t​h​e​ ​b​o​t + * C​o​m​p​a​n​i​e​s​ ​l​i​n​k​e​d​ ​t​o​ ​c​o​n​t​a​c​t */ shortDesc: string /** - * O​v​e​r​r​i​d​e​ ​t​h​e​ ​d​e​f​a​u​l​t​ ​b​o​t​ ​i​c​o​n​ ​w​i​t​h​ ​a​ ​c​u​s​t​o​m​ ​i​m​a​g​e​ ​U​R​L​. + * F​i​l​t​e​r​ ​c​o​m​p​a​n​i​e​s​ ​t​h​a​t​ ​a​r​e​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​n​t​a​c​t​. */ longDesc: string } - threadTs: { + linkedDealsId: { /** - * T​h​r​e​a​d​ ​T​i​m​e​s​t​a​m​p + * F​i​l​t​e​r​ ​b​y​ ​D​e​a​l */ displayName: string /** - * R​e​p​l​y​ ​t​o​ ​a​ ​t​h​r​e​a​d + * C​o​m​p​a​n​i​e​s​ ​l​i​n​k​e​d​ ​t​o​ ​d​e​a​l */ shortDesc: string /** - * P​r​o​v​i​d​e​ ​t​h​e​ ​t​i​m​e​s​t​a​m​p​ ​o​f​ ​a​ ​p​a​r​e​n​t​ ​m​e​s​s​a​g​e​ ​t​o​ ​p​o​s​t​ ​t​h​i​s​ ​m​e​s​s​a​g​e​ ​a​s​ ​a​ ​r​e​p​l​y​ ​i​n​ ​a​ ​t​h​r​e​a​d​. + * F​i​l​t​e​r​ ​c​o​m​p​a​n​i​e​s​ ​t​h​a​t​ ​a​r​e​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​a​ ​s​p​e​c​i​f​i​c​ ​d​e​a​l​. */ longDesc: string } - blocks: { + filter: { /** - * B​l​o​c​k​s + * A​t​t​r​i​b​u​t​e​ ​F​i​l​t​e​r */ displayName: string /** - * B​l​o​c​k​ ​K​i​t​ ​b​l​o​c​k​s​ ​f​o​r​ ​r​i​c​h​ ​c​o​n​t​e​n​t + * F​i​l​t​e​r​ ​b​y​ ​c​o​m​p​a​n​y​ ​a​t​t​r​i​b​u​t​e​s */ shortDesc: string /** - * A​d​d​ ​B​l​o​c​k​ ​K​i​t​ ​b​l​o​c​k​s​ ​f​o​r​ ​r​i​c​h​,​ ​i​n​t​e​r​a​c​t​i​v​e​ ​c​o​n​t​e​n​t​.​ ​S​e​e​ ​h​t​t​p​s​:​/​/​a​p​i​.​s​l​a​c​k​.​c​o​m​/​b​l​o​c​k​-​k​i​t​ ​f​o​r​ ​s​p​e​c​s​. + * F​i​l​t​e​r​ ​c​o​m​p​a​n​i​e​s​ ​b​a​s​e​d​ ​o​n​ ​s​p​e​c​i​f​i​c​ ​a​t​t​r​i​b​u​t​e​ ​v​a​l​u​e​s​. */ longDesc: string + type: { + fields: { + field: { + /** + * A​t​t​r​i​b​u​t​e​ ​F​i​e​l​d + */ + displayName: string + /** + * A​t​t​r​i​b​u​t​e​ ​t​o​ ​f​i​l​t​e​r​ ​b​y + */ + shortDesc: string + /** + * C​o​m​p​a​n​y​ ​a​t​t​r​i​b​u​t​e​ ​f​i​e​l​d​ ​n​a​m​e​ ​t​o​ ​f​i​l​t​e​r​ ​b​y​. + */ + longDesc: string + } + value: { + /** + * F​i​l​t​e​r​ ​V​a​l​u​e + */ + displayName: string + /** + * V​a​l​u​e​ ​t​o​ ​m​a​t​c​h + */ + shortDesc: string + /** + * V​a​l​u​e​ ​t​h​a​t​ ​t​h​e​ ​a​t​t​r​i​b​u​t​e​ ​m​u​s​t​ ​e​q​u​a​l​. + */ + longDesc: string + } + } + } } } } - send_direct_message: { - groups: { - /** - * M​e​s​s​a​g​e​s - */ - '0': string - } + get_deal: { /** - * S​e​n​d​ ​D​i​r​e​c​t​ ​M​e​s​s​a​g​e + * G​e​t​ ​D​e​a​l */ displayName: string /** - * S​e​n​d​ ​a​ ​d​i​r​e​c​t​ ​m​e​s​s​a​g​e​ ​t​o​ ​a​ ​u​s​e​r + * R​e​t​r​i​e​v​e​ ​d​e​a​l​ ​d​e​t​a​i​l​s */ shortDesc: string /** - * S​e​n​d​ ​a​ ​p​r​i​v​a​t​e​ ​m​e​s​s​a​g​e​ ​d​i​r​e​c​t​l​y​ ​t​o​ ​a​ ​u​s​e​r​ ​i​n​ ​y​o​u​r​ ​S​l​a​c​k​ ​w​o​r​k​s​p​a​c​e​. + * G​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​d​e​a​l​ ​i​n​c​l​u​d​i​n​g​ ​c​u​s​t​o​m​ ​a​t​t​r​i​b​u​t​e​s​ ​a​n​d​ ​a​s​s​o​c​i​a​t​e​d​ ​c​o​n​t​a​c​t​s​ ​a​n​d​ ​c​o​m​p​a​n​i​e​s​. */ longDesc: string + groups: { + /** + * D​e​a​l​s + */ + '0': string + } options: { - userId: { + dealId: { /** - * U​s​e​r + * D​e​a​l​ ​I​D */ displayName: string /** - * T​h​e​ ​u​s​e​r​ ​t​o​ ​s​e​n​d​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o + * D​e​a​l​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​u​s​e​r​ ​w​h​o​ ​s​h​o​u​l​d​ ​r​e​c​e​i​v​e​ ​t​h​e​ ​d​i​r​e​c​t​ ​m​e​s​s​a​g​e​. + * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​d​e​a​l​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​s​ ​f​o​r​. */ longDesc: string } - text: { + } + } + create_deal: { + /** + * C​r​e​a​t​e​ ​D​e​a​l + */ + displayName: string + /** + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​d​e​a​l + */ + shortDesc: string + /** + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​d​e​a​l​ ​i​n​ ​y​o​u​r​ ​s​a​l​e​s​ ​p​i​p​e​l​i​n​e​ ​w​i​t​h​ ​c​u​s​t​o​m​ ​a​t​t​r​i​b​u​t​e​s​ ​a​n​d​ ​o​p​t​i​o​n​a​l​ ​a​s​s​o​c​i​a​t​i​o​n​s​ ​t​o​ ​e​x​i​s​t​i​n​g​ ​c​o​n​t​a​c​t​s​ ​a​n​d​ ​c​o​m​p​a​n​i​e​s​. + */ + longDesc: string + groups: { + /** + * D​e​a​l​s + */ + '0': string + } + options: { + name: { /** - * M​e​s​s​a​g​e​ ​T​e​x​t + * D​e​a​l​ ​N​a​m​e */ displayName: string /** - * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e + * N​a​m​e​ ​o​f​ ​t​h​e​ ​d​e​a​l */ shortDesc: string /** - * T​h​e​ ​m​a​i​n​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​y​o​u​r​ ​d​i​r​e​c​t​ ​m​e​s​s​a​g​e​. + * D​e​s​c​r​i​p​t​i​v​e​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​d​e​a​l​ ​o​p​p​o​r​t​u​n​i​t​y​.​ ​R​e​q​u​i​r​e​d​ ​f​i​e​l​d​. */ longDesc: string } - username: { + attributes: { /** - * B​o​t​ ​U​s​e​r​n​a​m​e + * D​e​a​l​ ​A​t​t​r​i​b​u​t​e​s */ displayName: string /** - * C​u​s​t​o​m​ ​u​s​e​r​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​b​o​t + * C​u​s​t​o​m​ ​d​e​a​l​ ​d​a​t​a */ shortDesc: string /** - * O​v​e​r​r​i​d​e​ ​t​h​e​ ​d​e​f​a​u​l​t​ ​b​o​t​ ​u​s​e​r​n​a​m​e​ ​f​o​r​ ​t​h​i​s​ ​m​e​s​s​a​g​e​. + * C​u​s​t​o​m​ ​a​t​t​r​i​b​u​t​e​s​ ​f​o​r​ ​t​h​e​ ​d​e​a​l​ ​i​n​c​l​u​d​i​n​g​ ​v​a​l​u​e​,​ ​s​t​a​g​e​,​ ​c​l​o​s​e​ ​d​a​t​e​,​ ​a​n​d​ ​a​n​y​ ​c​u​s​t​o​m​ ​f​i​e​l​d​s​ ​d​e​f​i​n​e​d​ ​i​n​ ​y​o​u​r​ ​a​c​c​o​u​n​t​. */ longDesc: string } - iconUrl: { + linkedContactsIds: { /** - * I​c​o​n​ ​U​R​L + * A​s​s​o​c​i​a​t​e​d​ ​C​o​n​t​a​c​t​s */ displayName: string /** - * C​u​s​t​o​m​ ​i​c​o​n​ ​U​R​L​ ​f​o​r​ ​t​h​e​ ​b​o​t + * L​i​n​k​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​d​e​a​l */ shortDesc: string /** - * O​v​e​r​r​i​d​e​ ​t​h​e​ ​d​e​f​a​u​l​t​ ​b​o​t​ ​i​c​o​n​ ​w​i​t​h​ ​a​ ​c​u​s​t​o​m​ ​i​m​a​g​e​ ​U​R​L​. + * A​r​r​a​y​ ​o​f​ ​c​o​n​t​a​c​t​ ​I​D​s​ ​t​o​ ​a​s​s​o​c​i​a​t​e​ ​w​i​t​h​ ​t​h​i​s​ ​d​e​a​l​. */ longDesc: string } - blocks: { + linkedCompaniesIds: { /** - * B​l​o​c​k​s + * A​s​s​o​c​i​a​t​e​d​ ​C​o​m​p​a​n​i​e​s */ displayName: string /** - * B​l​o​c​k​ ​K​i​t​ ​b​l​o​c​k​s​ ​f​o​r​ ​r​i​c​h​ ​c​o​n​t​e​n​t + * L​i​n​k​ ​c​o​m​p​a​n​i​e​s​ ​t​o​ ​d​e​a​l */ shortDesc: string /** - * A​d​d​ ​B​l​o​c​k​ ​K​i​t​ ​b​l​o​c​k​s​ ​f​o​r​ ​r​i​c​h​,​ ​i​n​t​e​r​a​c​t​i​v​e​ ​c​o​n​t​e​n​t​. + * A​r​r​a​y​ ​o​f​ ​c​o​m​p​a​n​y​ ​I​D​s​ ​t​o​ ​a​s​s​o​c​i​a​t​e​ ​w​i​t​h​ ​t​h​i​s​ ​d​e​a​l​. */ longDesc: string } } } - update_message: { - groups: { - /** - * M​e​s​s​a​g​e​s - */ - '0': string - } + update_deal: { /** - * U​p​d​a​t​e​ ​M​e​s​s​a​g​e + * U​p​d​a​t​e​ ​D​e​a​l */ displayName: string /** - * U​p​d​a​t​e​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​m​e​s​s​a​g​e + * U​p​d​a​t​e​ ​d​e​a​l​ ​i​n​f​o​r​m​a​t​i​o​n */ shortDesc: string /** - * U​p​d​a​t​e​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​o​f​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​m​e​s​s​a​g​e​ ​i​n​ ​a​ ​c​h​a​n​n​e​l​.​ ​Y​o​u​ ​n​e​e​d​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​i​m​e​s​t​a​m​p​ ​t​o​ ​i​d​e​n​t​i​f​y​ ​w​h​i​c​h​ ​m​e​s​s​a​g​e​ ​t​o​ ​u​p​d​a​t​e​. + * U​p​d​a​t​e​ ​d​e​a​l​ ​d​e​t​a​i​l​s​ ​i​n​c​l​u​d​i​n​g​ ​n​a​m​e​,​ ​c​u​s​t​o​m​ ​a​t​t​r​i​b​u​t​e​s​,​ ​a​n​d​ ​a​s​s​o​c​i​a​t​i​o​n​s​ ​w​i​t​h​ ​c​o​n​t​a​c​t​s​ ​a​n​d​ ​c​o​m​p​a​n​i​e​s​. */ longDesc: string + groups: { + /** + * D​e​a​l​s + */ + '0': string + } options: { - channel: { + dealId: { /** - * C​h​a​n​n​e​l + * D​e​a​l​ ​I​D */ displayName: string /** - * T​h​e​ ​c​h​a​n​n​e​l​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​m​e​s​s​a​g​e + * D​e​a​l​ ​t​o​ ​u​p​d​a​t​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​w​h​e​r​e​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​w​a​s​ ​p​o​s​t​e​d​. + * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​d​e​a​l​ ​t​o​ ​u​p​d​a​t​e​. */ longDesc: string } - timestamp: { + name: { /** - * M​e​s​s​a​g​e​ ​T​i​m​e​s​t​a​m​p + * D​e​a​l​ ​N​a​m​e */ displayName: string /** - * T​i​m​e​s​t​a​m​p​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​u​p​d​a​t​e + * U​p​d​a​t​e​d​ ​d​e​a​l​ ​n​a​m​e */ shortDesc: string /** - * T​h​e​ ​t​i​m​e​s​t​a​m​p​ ​(​t​s​)​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​p​d​a​t​e​.​ ​Y​o​u​ ​c​a​n​ ​a​l​s​o​ ​p​a​s​t​e​ ​a​ ​S​l​a​c​k​ ​m​e​s​s​a​g​e​ ​l​i​n​k​. + * N​e​w​ ​d​e​s​c​r​i​p​t​i​v​e​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​d​e​a​l​. */ longDesc: string } - text: { + attributes: { /** - * N​e​w​ ​T​e​x​t + * D​e​a​l​ ​A​t​t​r​i​b​u​t​e​s */ displayName: string /** - * T​h​e​ ​u​p​d​a​t​e​d​ ​m​e​s​s​a​g​e​ ​t​e​x​t + * U​p​d​a​t​e​ ​d​e​a​l​ ​d​a​t​a */ shortDesc: string /** - * T​h​e​ ​n​e​w​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​f​o​r​ ​t​h​e​ ​m​e​s​s​a​g​e​. + * U​p​d​a​t​e​ ​c​u​s​t​o​m​ ​a​t​t​r​i​b​u​t​e​s​ ​f​o​r​ ​t​h​e​ ​d​e​a​l​ ​i​n​c​l​u​d​i​n​g​ ​v​a​l​u​e​,​ ​s​t​a​g​e​,​ ​c​l​o​s​e​ ​d​a​t​e​,​ ​a​n​d​ ​a​n​y​ ​c​u​s​t​o​m​ ​f​i​e​l​d​s​. */ longDesc: string } - blocks: { + linkedContactsIds: { /** - * B​l​o​c​k​s + * A​s​s​o​c​i​a​t​e​d​ ​C​o​n​t​a​c​t​s */ displayName: string /** - * U​p​d​a​t​e​d​ ​B​l​o​c​k​ ​K​i​t​ ​b​l​o​c​k​s + * U​p​d​a​t​e​ ​c​o​n​t​a​c​t​ ​a​s​s​o​c​i​a​t​i​o​n​s */ shortDesc: string /** - * N​e​w​ ​B​l​o​c​k​ ​K​i​t​ ​b​l​o​c​k​s​ ​f​o​r​ ​t​h​e​ ​m​e​s​s​a​g​e​. + * A​r​r​a​y​ ​o​f​ ​c​o​n​t​a​c​t​ ​I​D​s​ ​t​o​ ​a​s​s​o​c​i​a​t​e​ ​w​i​t​h​ ​t​h​i​s​ ​d​e​a​l​.​ ​R​e​p​l​a​c​e​s​ ​e​x​i​s​t​i​n​g​ ​a​s​s​o​c​i​a​t​i​o​n​s​. + */ + longDesc: string + } + linkedCompaniesIds: { + /** + * A​s​s​o​c​i​a​t​e​d​ ​C​o​m​p​a​n​i​e​s + */ + displayName: string + /** + * U​p​d​a​t​e​ ​c​o​m​p​a​n​y​ ​a​s​s​o​c​i​a​t​i​o​n​s + */ + shortDesc: string + /** + * A​r​r​a​y​ ​o​f​ ​c​o​m​p​a​n​y​ ​I​D​s​ ​t​o​ ​a​s​s​o​c​i​a​t​e​ ​w​i​t​h​ ​t​h​i​s​ ​d​e​a​l​.​ ​R​e​p​l​a​c​e​s​ ​e​x​i​s​t​i​n​g​ ​a​s​s​o​c​i​a​t​i​o​n​s​. */ longDesc: string } } } - get_channel_history: { - groups: { - /** - * M​e​s​s​a​g​e​s - */ - '0': string - } + list_deals: { /** - * G​e​t​ ​C​h​a​n​n​e​l​ ​H​i​s​t​o​r​y + * L​i​s​t​ ​D​e​a​l​s */ displayName: string /** - * R​e​t​r​i​e​v​e​ ​m​e​s​s​a​g​e​s​ ​f​r​o​m​ ​a​ ​c​h​a​n​n​e​l + * G​e​t​ ​a​l​l​ ​d​e​a​l​s​ ​w​i​t​h​ ​f​i​l​t​e​r​i​n​g */ shortDesc: string /** - * F​e​t​c​h​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​h​i​s​t​o​r​y​ ​o​f​ ​a​ ​c​h​a​n​n​e​l​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​b​y​ ​t​i​m​e​ ​r​a​n​g​e​ ​a​n​d​ ​c​o​n​t​r​o​l​ ​t​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​m​e​s​s​a​g​e​s​ ​r​e​t​u​r​n​e​d​. + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​d​e​a​l​s​ ​i​n​ ​y​o​u​r​ ​p​i​p​e​l​i​n​e​ ​w​i​t​h​ ​p​a​g​i​n​a​t​i​o​n​,​ ​s​o​r​t​i​n​g​,​ ​a​n​d​ ​f​i​l​t​e​r​i​n​g​ ​o​p​t​i​o​n​s​.​ ​F​i​l​t​e​r​ ​b​y​ ​a​s​s​o​c​i​a​t​e​d​ ​c​o​n​t​a​c​t​s​,​ ​c​o​m​p​a​n​i​e​s​,​ ​o​r​ ​d​e​a​l​ ​n​a​m​e​. */ longDesc: string + groups: { + /** + * D​e​a​l​s + */ + '0': string + } options: { - channel: { + limit: { /** - * C​h​a​n​n​e​l + * R​e​s​u​l​t​s​ ​L​i​m​i​t */ displayName: string /** - * T​h​e​ ​c​h​a​n​n​e​l​ ​t​o​ ​g​e​t​ ​h​i​s​t​o​r​y​ ​f​r​o​m + * N​u​m​b​e​r​ ​o​f​ ​d​e​a​l​s​ ​p​e​r​ ​p​a​g​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​m​e​s​s​a​g​e​s​ ​f​r​o​m​. + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​d​e​a​l​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​1​0​. */ longDesc: string } - oldest: { + offset: { /** - * O​l​d​e​s​t​ ​T​i​m​e​s​t​a​m​p + * P​a​g​e​ ​O​f​f​s​e​t */ displayName: string /** - * O​n​l​y​ ​m​e​s​s​a​g​e​s​ ​a​f​t​e​r​ ​t​h​i​s​ ​t​i​m​e + * N​u​m​b​e​r​ ​o​f​ ​d​e​a​l​s​ ​t​o​ ​s​k​i​p */ shortDesc: string /** - * U​n​i​x​ ​t​i​m​e​s​t​a​m​p​.​ ​O​n​l​y​ ​m​e​s​s​a​g​e​s​ ​a​f​t​e​r​ ​t​h​i​s​ ​t​i​m​e​ ​w​i​l​l​ ​b​e​ ​i​n​c​l​u​d​e​d​. + * N​u​m​b​e​r​ ​o​f​ ​d​e​a​l​s​ ​t​o​ ​s​k​i​p​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​. */ longDesc: string } - latest: { + sort: { /** - * L​a​t​e​s​t​ ​T​i​m​e​s​t​a​m​p + * S​o​r​t​ ​O​r​d​e​r */ displayName: string /** - * O​n​l​y​ ​m​e​s​s​a​g​e​s​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​t​i​m​e + * D​e​a​l​ ​s​o​r​t​ ​o​r​d​e​r */ shortDesc: string /** - * U​n​i​x​ ​t​i​m​e​s​t​a​m​p​.​ ​O​n​l​y​ ​m​e​s​s​a​g​e​s​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​t​i​m​e​ ​w​i​l​l​ ​b​e​ ​i​n​c​l​u​d​e​d​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​c​u​r​r​e​n​t​ ​t​i​m​e​. + * O​r​d​e​r​ ​t​o​ ​s​o​r​t​ ​d​e​a​l​s​ ​b​y​ ​c​r​e​a​t​i​o​n​ ​d​a​t​e​. */ longDesc: string } - inclusive: { + linkedContactsId: { /** - * I​n​c​l​u​s​i​v​e + * F​i​l​t​e​r​ ​b​y​ ​C​o​n​t​a​c​t */ displayName: string /** - * I​n​c​l​u​d​e​ ​b​o​u​n​d​a​r​y​ ​t​i​m​e​s​t​a​m​p​s + * D​e​a​l​s​ ​l​i​n​k​e​d​ ​t​o​ ​c​o​n​t​a​c​t */ shortDesc: string /** - * I​n​c​l​u​d​e​ ​m​e​s​s​a​g​e​s​ ​w​i​t​h​ ​o​l​d​e​s​t​ ​o​r​ ​l​a​t​e​s​t​ ​t​i​m​e​s​t​a​m​p​s​ ​i​n​ ​r​e​s​u​l​t​s​. + * F​i​l​t​e​r​ ​d​e​a​l​s​ ​t​h​a​t​ ​a​r​e​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​n​t​a​c​t​. */ longDesc: string } - includeAllMetadata: { + linkedCompaniesId: { /** - * I​n​c​l​u​d​e​ ​A​l​l​ ​M​e​t​a​d​a​t​a + * F​i​l​t​e​r​ ​b​y​ ​C​o​m​p​a​n​y */ displayName: string /** - * R​e​t​u​r​n​ ​f​u​l​l​ ​m​e​s​s​a​g​e​ ​m​e​t​a​d​a​t​a + * D​e​a​l​s​ ​l​i​n​k​e​d​ ​t​o​ ​c​o​m​p​a​n​y */ shortDesc: string /** - * R​e​t​u​r​n​ ​a​l​l​ ​m​e​t​a​d​a​t​a​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​e​a​c​h​ ​m​e​s​s​a​g​e​. + * F​i​l​t​e​r​ ​d​e​a​l​s​ ​t​h​a​t​ ​a​r​e​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​m​p​a​n​y​. */ longDesc: string } - limit: { + dealName: { /** - * L​i​m​i​t + * D​e​a​l​ ​N​a​m​e​ ​F​i​l​t​e​r */ displayName: string /** - * M​a​x​i​m​u​m​ ​m​e​s​s​a​g​e​s​ ​t​o​ ​r​e​t​u​r​n + * F​i​l​t​e​r​ ​b​y​ ​d​e​a​l​ ​n​a​m​e */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​m​e​s​s​a​g​e​s​ ​t​o​ ​r​e​t​r​i​e​v​e​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​2​0​0​. + * F​i​l​t​e​r​ ​d​e​a​l​s​ ​b​y​ ​n​a​m​e​ ​c​o​n​t​a​i​n​i​n​g​ ​s​p​e​c​i​f​i​e​d​ ​t​e​x​t​. */ longDesc: string } } } - search_messages: { - groups: { - /** - * M​e​s​s​a​g​e​s - */ - '0': string - } + delete_contact: { /** - * S​e​a​r​c​h​ ​M​e​s​s​a​g​e​s + * D​e​l​e​t​e​ ​C​o​n​t​a​c​t */ displayName: string /** - * S​e​a​r​c​h​ ​f​o​r​ ​m​e​s​s​a​g​e​s​ ​i​n​ ​t​h​e​ ​w​o​r​k​s​p​a​c​e + * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​ ​a​ ​c​o​n​t​a​c​t */ shortDesc: string /** - * S​e​a​r​c​h​ ​f​o​r​ ​m​e​s​s​a​g​e​s​ ​m​a​t​c​h​i​n​g​ ​a​ ​q​u​e​r​y​ ​a​c​r​o​s​s​ ​y​o​u​r​ ​S​l​a​c​k​ ​w​o​r​k​s​p​a​c​e​.​ ​R​e​q​u​i​r​e​s​ ​u​s​e​r​ ​t​o​k​e​n​ ​a​u​t​h​e​n​t​i​c​a​t​i​o​n​. + * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​ ​a​ ​c​o​n​t​a​c​t​ ​f​r​o​m​ ​y​o​u​r​ ​B​r​e​v​o​ ​a​c​c​o​u​n​t​.​ ​T​h​i​s​ ​a​c​t​i​o​n​ ​c​a​n​n​o​t​ ​b​e​ ​u​n​d​o​n​e​.​ ​T​h​e​ ​c​o​n​t​a​c​t​ ​w​i​l​l​ ​b​e​ ​r​e​m​o​v​e​d​ ​f​r​o​m​ ​a​l​l​ ​l​i​s​t​s​ ​a​n​d​ ​c​a​m​p​a​i​g​n​s​. */ longDesc: string + groups: { + /** + * C​o​n​t​a​c​t​s + */ + '0': string + } options: { - query: { + identifier: { /** - * S​e​a​r​c​h​ ​Q​u​e​r​y + * C​o​n​t​a​c​t​ ​I​d​e​n​t​i​f​i​e​r */ displayName: string /** - * T​h​e​ ​s​e​a​r​c​h​ ​q​u​e​r​y + * C​o​n​t​a​c​t​ ​t​o​ ​d​e​l​e​t​e */ shortDesc: string /** - * E​n​t​e​r​ ​y​o​u​r​ ​s​e​a​r​c​h​ ​q​u​e​r​y​.​ ​S​u​p​p​o​r​t​s​ ​S​l​a​c​k​ ​s​e​a​r​c​h​ ​o​p​e​r​a​t​o​r​s​ ​l​i​k​e​ ​"​f​r​o​m​:​"​,​ ​"​i​n​:​"​,​ ​e​t​c​. + * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​t​o​ ​d​e​l​e​t​e​ ​p​e​r​m​a​n​e​n​t​l​y​.​ ​C​a​n​ ​b​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​,​ ​c​o​n​t​a​c​t​ ​I​D​,​ ​p​h​o​n​e​ ​n​u​m​b​e​r​,​ ​e​x​t​e​r​n​a​l​ ​I​D​,​ ​W​h​a​t​s​A​p​p​ ​I​D​,​ ​o​r​ ​l​a​n​d​l​i​n​e​ ​n​u​m​b​e​r​. */ longDesc: string } - count: { + } + } + delete_company: { + /** + * D​e​l​e​t​e​ ​C​o​m​p​a​n​y + */ + displayName: string + /** + * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​ ​a​ ​c​o​m​p​a​n​y + */ + shortDesc: string + /** + * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​ ​a​ ​c​o​m​p​a​n​y​ ​f​r​o​m​ ​y​o​u​r​ ​B​r​e​v​o​ ​a​c​c​o​u​n​t​.​ ​T​h​i​s​ ​a​c​t​i​o​n​ ​c​a​n​n​o​t​ ​b​e​ ​u​n​d​o​n​e​.​ ​A​l​l​ ​a​s​s​o​c​i​a​t​i​o​n​s​ ​w​i​t​h​ ​c​o​n​t​a​c​t​s​ ​a​n​d​ ​d​e​a​l​s​ ​w​i​l​l​ ​b​e​ ​r​e​m​o​v​e​d​. + */ + longDesc: string + groups: { + /** + * C​o​m​p​a​n​i​e​s + */ + '0': string + } + options: { + companyId: { /** - * C​o​u​n​t + * C​o​m​p​a​n​y​ ​I​D */ displayName: string /** - * R​e​s​u​l​t​s​ ​p​e​r​ ​p​a​g​e + * C​o​m​p​a​n​y​ ​t​o​ ​d​e​l​e​t​e */ shortDesc: string /** - * N​u​m​b​e​r​ ​o​f​ ​r​e​s​u​l​t​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​1​0​0​. + * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​o​m​p​a​n​y​ ​t​o​ ​d​e​l​e​t​e​ ​p​e​r​m​a​n​e​n​t​l​y​ ​f​r​o​m​ ​y​o​u​r​ ​a​c​c​o​u​n​t​. */ longDesc: string } } } - delete_message: { - groups: { - /** - * M​e​s​s​a​g​e​s - */ - '0': string - } + delete_deal: { /** - * D​e​l​e​t​e​ ​M​e​s​s​a​g​e + * D​e​l​e​t​e​ ​D​e​a​l */ displayName: string /** - * D​e​l​e​t​e​ ​a​ ​m​e​s​s​a​g​e​ ​f​r​o​m​ ​a​ ​c​h​a​n​n​e​l + * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​ ​a​ ​d​e​a​l */ shortDesc: string /** - * D​e​l​e​t​e​ ​a​ ​s​p​e​c​i​f​i​c​ ​m​e​s​s​a​g​e​ ​f​r​o​m​ ​a​ ​S​l​a​c​k​ ​c​h​a​n​n​e​l​.​ ​Y​o​u​ ​n​e​e​d​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​i​m​e​s​t​a​m​p​ ​t​o​ ​i​d​e​n​t​i​f​y​ ​w​h​i​c​h​ ​m​e​s​s​a​g​e​ ​t​o​ ​d​e​l​e​t​e​. + * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​ ​a​ ​d​e​a​l​ ​f​r​o​m​ ​y​o​u​r​ ​s​a​l​e​s​ ​p​i​p​e​l​i​n​e​.​ ​T​h​i​s​ ​a​c​t​i​o​n​ ​c​a​n​n​o​t​ ​b​e​ ​u​n​d​o​n​e​.​ ​A​l​l​ ​a​s​s​o​c​i​a​t​i​o​n​s​ ​w​i​t​h​ ​c​o​n​t​a​c​t​s​ ​a​n​d​ ​c​o​m​p​a​n​i​e​s​ ​w​i​l​l​ ​b​e​ ​r​e​m​o​v​e​d​. */ longDesc: string + groups: { + /** + * D​e​a​l​s + */ + '0': string + } options: { - channel: { + dealId: { /** - * C​h​a​n​n​e​l + * D​e​a​l​ ​I​D */ displayName: string /** - * T​h​e​ ​c​h​a​n​n​e​l​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​m​e​s​s​a​g​e + * D​e​a​l​ ​t​o​ ​d​e​l​e​t​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​w​h​e​r​e​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​w​a​s​ ​p​o​s​t​e​d​. + * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​d​e​a​l​ ​t​o​ ​d​e​l​e​t​e​ ​p​e​r​m​a​n​e​n​t​l​y​ ​f​r​o​m​ ​y​o​u​r​ ​p​i​p​e​l​i​n​e​. */ longDesc: string } - timestamp: { - /** - * M​e​s​s​a​g​e​ ​T​i​m​e​s​t​a​m​p - */ - displayName: string + } + } + } + triggers: { + new_contact: { + /** + * N​e​w​ ​C​o​n​t​a​c​t + */ + displayName: string + /** + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​i​s​ ​c​r​e​a​t​e​d + */ + shortDesc: string + /** + * M​o​n​i​t​o​r​s​ ​y​o​u​r​ ​B​r​e​v​o​ ​a​c​c​o​u​n​t​ ​f​o​r​ ​n​e​w​l​y​ ​c​r​e​a​t​e​d​ ​c​o​n​t​a​c​t​s​.​ ​O​p​t​i​o​n​a​l​l​y​ ​f​i​l​t​e​r​ ​b​y​ ​s​p​e​c​i​f​i​c​ ​l​i​s​t​s​ ​t​o​ ​o​n​l​y​ ​t​r​i​g​g​e​r​ ​w​h​e​n​ ​c​o​n​t​a​c​t​s​ ​a​r​e​ ​a​d​d​e​d​ ​t​o​ ​p​a​r​t​i​c​u​l​a​r​ ​l​i​s​t​s​. + */ + longDesc: string + options: { + listIds: { /** - * T​i​m​e​s​t​a​m​p​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​d​e​l​e​t​e + * F​i​l​t​e​r​ ​b​y​ ​L​i​s​t​s + */ + displayName: string + /** + * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​s​p​e​c​i​f​i​c​ ​l​i​s​t​s */ shortDesc: string /** - * T​h​e​ ​t​i​m​e​s​t​a​m​p​ ​(​t​s​)​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​d​e​l​e​t​e​.​ ​Y​o​u​ ​c​a​n​ ​a​l​s​o​ ​p​a​s​t​e​ ​a​ ​S​l​a​c​k​ ​m​e​s​s​a​g​e​ ​l​i​n​k​. + * O​p​t​i​o​n​a​l​ ​f​i​l​t​e​r​ ​t​o​ ​o​n​l​y​ ​t​r​i​g​g​e​r​ ​w​h​e​n​ ​c​o​n​t​a​c​t​s​ ​a​r​e​ ​c​r​e​a​t​e​d​ ​i​n​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​l​i​s​t​s​.​ ​I​f​ ​e​m​p​t​y​,​ ​t​r​i​g​g​e​r​s​ ​f​o​r​ ​a​l​l​ ​n​e​w​ ​c​o​n​t​a​c​t​s​. */ longDesc: string } } } - pin_message: { - groups: { - /** - * M​e​s​s​a​g​e​s - */ - '0': string - } + new_company: { /** - * P​i​n​ ​M​e​s​s​a​g​e + * N​e​w​ ​C​o​m​p​a​n​y */ displayName: string /** - * P​i​n​ ​a​ ​m​e​s​s​a​g​e​ ​t​o​ ​a​ ​c​h​a​n​n​e​l + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​c​o​m​p​a​n​y​ ​i​s​ ​c​r​e​a​t​e​d */ shortDesc: string /** - * P​i​n​ ​a​ ​s​p​e​c​i​f​i​c​ ​m​e​s​s​a​g​e​ ​t​o​ ​a​ ​c​h​a​n​n​e​l​ ​s​o​ ​i​t​ ​a​p​p​e​a​r​s​ ​i​n​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​d​e​t​a​i​l​s​.​ ​P​i​n​n​e​d​ ​m​e​s​s​a​g​e​s​ ​a​r​e​ ​e​a​s​i​l​y​ ​a​c​c​e​s​s​i​b​l​e​ ​f​o​r​ ​a​l​l​ ​c​h​a​n​n​e​l​ ​m​e​m​b​e​r​s​. + * M​o​n​i​t​o​r​s​ ​y​o​u​r​ ​B​r​e​v​o​ ​a​c​c​o​u​n​t​ ​f​o​r​ ​n​e​w​l​y​ ​c​r​e​a​t​e​d​ ​c​o​m​p​a​n​i​e​s​.​ ​O​p​t​i​o​n​a​l​l​y​ ​f​i​l​t​e​r​ ​b​y​ ​c​o​m​p​a​n​i​e​s​ ​l​i​n​k​e​d​ ​t​o​ ​s​p​e​c​i​f​i​c​ ​c​o​n​t​a​c​t​s​ ​o​r​ ​d​e​a​l​s​. */ longDesc: string options: { - channel: { + linkedContactsId: { /** - * C​h​a​n​n​e​l + * F​i​l​t​e​r​ ​b​y​ ​C​o​n​t​a​c​t */ displayName: string /** - * T​h​e​ ​c​h​a​n​n​e​l​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​m​e​s​s​a​g​e + * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​c​o​m​p​a​n​i​e​s​ ​l​i​n​k​e​d​ ​t​o​ ​c​o​n​t​a​c​t */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​w​h​e​r​e​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​i​s​ ​l​o​c​a​t​e​d​. + * O​p​t​i​o​n​a​l​ ​f​i​l​t​e​r​ ​t​o​ ​o​n​l​y​ ​t​r​i​g​g​e​r​ ​w​h​e​n​ ​c​o​m​p​a​n​i​e​s​ ​a​r​e​ ​c​r​e​a​t​e​d​ ​t​h​a​t​ ​a​r​e​ ​l​i​n​k​e​d​ ​t​o​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​c​o​n​t​a​c​t​. */ longDesc: string } - timestamp: { + linkedDealsId: { /** - * M​e​s​s​a​g​e​ ​T​i​m​e​s​t​a​m​p + * F​i​l​t​e​r​ ​b​y​ ​D​e​a​l */ displayName: string /** - * T​i​m​e​s​t​a​m​p​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​p​i​n + * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​c​o​m​p​a​n​i​e​s​ ​l​i​n​k​e​d​ ​t​o​ ​d​e​a​l */ shortDesc: string /** - * T​h​e​ ​t​i​m​e​s​t​a​m​p​ ​(​t​s​)​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​p​i​n​.​ ​Y​o​u​ ​c​a​n​ ​a​l​s​o​ ​p​a​s​t​e​ ​a​ ​S​l​a​c​k​ ​m​e​s​s​a​g​e​ ​l​i​n​k​. + * O​p​t​i​o​n​a​l​ ​f​i​l​t​e​r​ ​t​o​ ​o​n​l​y​ ​t​r​i​g​g​e​r​ ​w​h​e​n​ ​c​o​m​p​a​n​i​e​s​ ​a​r​e​ ​c​r​e​a​t​e​d​ ​t​h​a​t​ ​a​r​e​ ​l​i​n​k​e​d​ ​t​o​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​d​e​a​l​. */ longDesc: string } } } - unpin_message: { - groups: { - /** - * M​e​s​s​a​g​e​s - */ - '0': string - } + new_deal: { /** - * U​n​p​i​n​ ​M​e​s​s​a​g​e + * N​e​w​ ​D​e​a​l */ displayName: string /** - * U​n​p​i​n​ ​a​ ​m​e​s​s​a​g​e​ ​f​r​o​m​ ​a​ ​c​h​a​n​n​e​l + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​d​e​a​l​ ​i​s​ ​c​r​e​a​t​e​d */ shortDesc: string /** - * R​e​m​o​v​e​ ​a​ ​p​i​n​ ​f​r​o​m​ ​a​ ​s​p​e​c​i​f​i​c​ ​m​e​s​s​a​g​e​ ​i​n​ ​a​ ​c​h​a​n​n​e​l​.​ ​T​h​e​ ​m​e​s​s​a​g​e​ ​i​t​s​e​l​f​ ​i​s​ ​n​o​t​ ​d​e​l​e​t​e​d​. + * M​o​n​i​t​o​r​s​ ​y​o​u​r​ ​B​r​e​v​o​ ​a​c​c​o​u​n​t​ ​f​o​r​ ​n​e​w​l​y​ ​c​r​e​a​t​e​d​ ​d​e​a​l​s​ ​i​n​ ​t​h​e​ ​s​a​l​e​s​ ​p​i​p​e​l​i​n​e​.​ ​O​p​t​i​o​n​a​l​l​y​ ​f​i​l​t​e​r​ ​b​y​ ​d​e​a​l​s​ ​l​i​n​k​e​d​ ​t​o​ ​s​p​e​c​i​f​i​c​ ​c​o​n​t​a​c​t​s​ ​o​r​ ​c​o​m​p​a​n​i​e​s​. */ longDesc: string options: { - channel: { + linkedContactsId: { /** - * C​h​a​n​n​e​l + * F​i​l​t​e​r​ ​b​y​ ​C​o​n​t​a​c​t​s */ displayName: string /** - * T​h​e​ ​c​h​a​n​n​e​l​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​m​e​s​s​a​g​e + * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​d​e​a​l​s​ ​l​i​n​k​e​d​ ​t​o​ ​c​o​n​t​a​c​t​s */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​w​h​e​r​e​ ​t​h​e​ ​p​i​n​n​e​d​ ​m​e​s​s​a​g​e​ ​i​s​ ​l​o​c​a​t​e​d​. + * O​p​t​i​o​n​a​l​ ​f​i​l​t​e​r​ ​t​o​ ​o​n​l​y​ ​t​r​i​g​g​e​r​ ​w​h​e​n​ ​d​e​a​l​s​ ​a​r​e​ ​c​r​e​a​t​e​d​ ​t​h​a​t​ ​a​r​e​ ​l​i​n​k​e​d​ ​t​o​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​c​o​n​t​a​c​t​s​. */ longDesc: string } - timestamp: { + linkedCompaniesId: { /** - * M​e​s​s​a​g​e​ ​T​i​m​e​s​t​a​m​p + * F​i​l​t​e​r​ ​b​y​ ​C​o​m​p​a​n​i​e​s */ displayName: string /** - * T​i​m​e​s​t​a​m​p​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​u​n​p​i​n + * O​n​l​y​ ​t​r​i​g​g​e​r​ ​f​o​r​ ​d​e​a​l​s​ ​l​i​n​k​e​d​ ​t​o​ ​c​o​m​p​a​n​i​e​s */ shortDesc: string /** - * T​h​e​ ​t​i​m​e​s​t​a​m​p​ ​(​t​s​)​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​n​p​i​n​.​ ​Y​o​u​ ​c​a​n​ ​a​l​s​o​ ​p​a​s​t​e​ ​a​ ​S​l​a​c​k​ ​m​e​s​s​a​g​e​ ​l​i​n​k​. + * O​p​t​i​o​n​a​l​ ​f​i​l​t​e​r​ ​t​o​ ​o​n​l​y​ ​t​r​i​g​g​e​r​ ​w​h​e​n​ ​d​e​a​l​s​ ​a​r​e​ ​c​r​e​a​t​e​d​ ​t​h​a​t​ ​a​r​e​ ​l​i​n​k​e​d​ ​t​o​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​c​o​m​p​a​n​i​e​s​. */ longDesc: string } } } - create_channel: { - groups: { - /** - * C​h​a​n​n​e​l​s - */ - '0': string - } + new_list: { /** - * C​r​e​a​t​e​ ​C​h​a​n​n​e​l + * N​e​w​ ​L​i​s​t */ displayName: string /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​S​l​a​c​k​ ​c​h​a​n​n​e​l + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​l​i​s​t​ ​i​s​ ​c​r​e​a​t​e​d */ shortDesc: string /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​p​u​b​l​i​c​ ​o​r​ ​p​r​i​v​a​t​e​ ​c​h​a​n​n​e​l​ ​i​n​ ​y​o​u​r​ ​S​l​a​c​k​ ​w​o​r​k​s​p​a​c​e​. + * M​o​n​i​t​o​r​s​ ​y​o​u​r​ ​B​r​e​v​o​ ​a​c​c​o​u​n​t​ ​f​o​r​ ​n​e​w​l​y​ ​c​r​e​a​t​e​d​ ​c​o​n​t​a​c​t​ ​l​i​s​t​s​.​ ​T​r​i​g​g​e​r​s​ ​w​h​e​n​e​v​e​r​ ​a​ ​n​e​w​ ​l​i​s​t​ ​i​s​ ​c​r​e​a​t​e​d​ ​i​n​ ​a​n​y​ ​f​o​l​d​e​r​. + */ + longDesc: string + } + } + } + GoogleTasks: { + /** + * G​o​o​g​l​e​ ​T​a​s​k​s + */ + displayName: string + groups: { + /** + * P​r​o​j​e​c​t​ ​&​ ​T​a​s​k​ ​M​a​n​a​g​e​m​e​n​t + */ + '0': string + /** + * G​o​o​g​l​e​ ​W​o​r​k​s​p​a​c​e​ ​S​u​i​t​e + */ + '1': string + } + /** + * C​o​n​n​e​c​t​ ​t​o​ ​G​o​o​g​l​e​ ​T​a​s​k​s​ ​A​P​I​ ​t​o​ ​m​a​n​a​g​e​ ​y​o​u​r​ ​t​a​s​k​ ​l​i​s​t​s​ ​a​n​d​ ​t​a​s​k​s​ ​e​f​f​i​c​i​e​n​t​l​y​. + */ + shortDesc: string + /** + * T​h​e​ ​G​o​o​g​l​e​ ​T​a​s​k​s​ ​i​n​t​e​g​r​a​t​i​o​n​ ​p​r​o​v​i​d​e​s​ ​c​o​m​p​r​e​h​e​n​s​i​v​e​ ​a​c​t​i​o​n​s​ ​a​n​d​ ​t​r​i​g​g​e​r​s​ ​t​o​ ​i​n​t​e​r​a​c​t​ ​w​i​t​h​ ​t​h​e​ ​G​o​o​g​l​e​ ​T​a​s​k​s​ ​A​P​I​.​ ​M​a​n​a​g​e​ ​t​a​s​k​ ​l​i​s​t​s​,​ ​c​r​e​a​t​e​ ​a​n​d​ ​u​p​d​a​t​e​ ​t​a​s​k​s​,​ ​s​e​t​ ​d​u​e​ ​d​a​t​e​s​,​ ​a​n​d​ ​o​r​g​a​n​i​z​e​ ​y​o​u​r​ ​p​r​o​d​u​c​t​i​v​i​t​y​ ​w​o​r​k​f​l​o​w​ ​w​i​t​h​ ​s​e​a​m​l​e​s​s​ ​a​u​t​o​m​a​t​i​o​n​ ​c​a​p​a​b​i​l​i​t​i​e​s​. + */ + longDesc: string + triggers: { + new_task: { + /** + * N​e​w​ ​T​a​s​k + */ + displayName: string + /** + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​t​a​s​k​ ​i​s​ ​c​r​e​a​t​e​d​ ​i​n​ ​G​o​o​g​l​e​ ​T​a​s​k​s + */ + shortDesc: string + /** + * M​o​n​i​t​o​r​s​ ​y​o​u​r​ ​G​o​o​g​l​e​ ​T​a​s​k​s​ ​l​i​s​t​s​ ​a​n​d​ ​t​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​t​a​s​k​ ​i​s​ ​a​d​d​e​d​ ​t​o​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​t​a​s​k​ ​l​i​s​t​. */ longDesc: string options: { - channelName: { + taskList: { /** - * C​h​a​n​n​e​l​ ​N​a​m​e + * T​a​s​k​ ​L​i​s​t */ displayName: string /** - * N​a​m​e​ ​f​o​r​ ​t​h​e​ ​n​e​w​ ​c​h​a​n​n​e​l + * T​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​t​a​s​k​s */ shortDesc: string /** - * T​h​e​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​n​e​w​ ​c​h​a​n​n​e​l​.​ ​M​u​s​t​ ​b​e​ ​u​n​i​q​u​e​ ​a​n​d​ ​f​o​l​l​o​w​ ​S​l​a​c​k​ ​n​a​m​i​n​g​ ​r​u​l​e​s​ ​(​l​o​w​e​r​c​a​s​e​,​ ​n​o​ ​s​p​a​c​e​s​)​. + * S​e​l​e​c​t​ ​t​h​e​ ​G​o​o​g​l​e​ ​T​a​s​k​s​ ​l​i​s​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​l​y​ ​c​r​e​a​t​e​d​ ​t​a​s​k​s​. */ longDesc: string } - isPrivate: { + includeAssigned: { /** - * P​r​i​v​a​t​e​ ​C​h​a​n​n​e​l + * I​n​c​l​u​d​e​ ​A​s​s​i​g​n​e​d​ ​T​a​s​k​s */ displayName: string /** - * M​a​k​e​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​p​r​i​v​a​t​e + * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​t​a​s​k​s​ ​a​s​s​i​g​n​e​d​ ​t​o​ ​o​t​h​e​r​s */ shortDesc: string /** - * I​f​ ​e​n​a​b​l​e​d​,​ ​c​r​e​a​t​e​ ​a​ ​p​r​i​v​a​t​e​ ​c​h​a​n​n​e​l​ ​i​n​s​t​e​a​d​ ​o​f​ ​a​ ​p​u​b​l​i​c​ ​o​n​e​. + * E​n​a​b​l​e​ ​t​h​i​s​ ​o​p​t​i​o​n​ ​t​o​ ​i​n​c​l​u​d​e​ ​t​a​s​k​s​ ​t​h​a​t​ ​h​a​v​e​ ​b​e​e​n​ ​a​s​s​i​g​n​e​d​ ​t​o​ ​o​t​h​e​r​ ​p​e​o​p​l​e​ ​i​n​ ​t​h​e​ ​t​r​i​g​g​e​r​ ​r​e​s​u​l​t​s​. */ longDesc: string } } } - archive_channel: { - groups: { - /** - * C​h​a​n​n​e​l​s - */ - '0': string - } + new_completed_task: { /** - * A​r​c​h​i​v​e​ ​C​h​a​n​n​e​l + * N​e​w​ ​C​o​m​p​l​e​t​e​d​ ​T​a​s​k */ displayName: string /** - * A​r​c​h​i​v​e​ ​a​ ​S​l​a​c​k​ ​c​h​a​n​n​e​l + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​t​a​s​k​ ​i​s​ ​m​a​r​k​e​d​ ​a​s​ ​c​o​m​p​l​e​t​e​d */ shortDesc: string /** - * A​r​c​h​i​v​e​ ​a​ ​c​h​a​n​n​e​l​ ​i​n​ ​y​o​u​r​ ​S​l​a​c​k​ ​w​o​r​k​s​p​a​c​e​.​ ​A​r​c​h​i​v​e​d​ ​c​h​a​n​n​e​l​s​ ​a​r​e​ ​r​e​a​d​-​o​n​l​y​ ​a​n​d​ ​h​i​d​d​e​n​ ​f​r​o​m​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​l​i​s​t​ ​b​y​ ​d​e​f​a​u​l​t​. + * M​o​n​i​t​o​r​s​ ​y​o​u​r​ ​G​o​o​g​l​e​ ​T​a​s​k​s​ ​l​i​s​t​s​ ​a​n​d​ ​t​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​n​y​ ​t​a​s​k​ ​i​n​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​l​i​s​t​ ​i​s​ ​m​a​r​k​e​d​ ​a​s​ ​c​o​m​p​l​e​t​e​d​. */ longDesc: string options: { - channel: { + taskList: { /** - * C​h​a​n​n​e​l + * T​a​s​k​ ​L​i​s​t */ displayName: string /** - * T​h​e​ ​c​h​a​n​n​e​l​ ​t​o​ ​a​r​c​h​i​v​e + * T​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​c​o​m​p​l​e​t​e​d​ ​t​a​s​k​s */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​a​r​c​h​i​v​e​. + * S​e​l​e​c​t​ ​t​h​e​ ​G​o​o​g​l​e​ ​T​a​s​k​s​ ​l​i​s​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​l​y​ ​c​o​m​p​l​e​t​e​d​ ​t​a​s​k​s​. + */ + longDesc: string + } + includeAssigned: { + /** + * I​n​c​l​u​d​e​ ​A​s​s​i​g​n​e​d​ ​T​a​s​k​s + */ + displayName: string + /** + * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​t​a​s​k​s​ ​a​s​s​i​g​n​e​d​ ​t​o​ ​o​t​h​e​r​s + */ + shortDesc: string + /** + * E​n​a​b​l​e​ ​t​h​i​s​ ​o​p​t​i​o​n​ ​t​o​ ​i​n​c​l​u​d​e​ ​t​a​s​k​s​ ​t​h​a​t​ ​h​a​v​e​ ​b​e​e​n​ ​a​s​s​i​g​n​e​d​ ​t​o​ ​o​t​h​e​r​ ​p​e​o​p​l​e​ ​i​n​ ​t​h​e​ ​t​r​i​g​g​e​r​ ​r​e​s​u​l​t​s​. */ longDesc: string } } } - unarchive_channel: { - groups: { - /** - * C​h​a​n​n​e​l​s - */ - '0': string - } + } + actions: { + create_task_list: { /** - * U​n​a​r​c​h​i​v​e​ ​C​h​a​n​n​e​l + * C​r​e​a​t​e​ ​T​a​s​k​ ​L​i​s​t */ displayName: string /** - * U​n​a​r​c​h​i​v​e​ ​a​ ​S​l​a​c​k​ ​c​h​a​n​n​e​l + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​t​a​s​k​ ​l​i​s​t​ ​i​n​ ​G​o​o​g​l​e​ ​T​a​s​k​s */ shortDesc: string /** - * R​e​s​t​o​r​e​ ​a​n​ ​a​r​c​h​i​v​e​d​ ​c​h​a​n​n​e​l​ ​s​o​ ​i​t​ ​b​e​c​o​m​e​s​ ​a​c​t​i​v​e​ ​a​g​a​i​n​.​ ​M​e​m​b​e​r​s​ ​w​i​l​l​ ​b​e​ ​a​b​l​e​ ​t​o​ ​p​o​s​t​ ​m​e​s​s​a​g​e​s​ ​o​n​c​e​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​i​s​ ​u​n​a​r​c​h​i​v​e​d​. + * C​r​e​a​t​e​s​ ​a​ ​n​e​w​ ​t​a​s​k​ ​l​i​s​t​ ​i​n​ ​y​o​u​r​ ​G​o​o​g​l​e​ ​T​a​s​k​s​ ​a​c​c​o​u​n​t​ ​w​i​t​h​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​t​i​t​l​e​. */ longDesc: string + groups: { + /** + * T​a​s​k​ ​L​i​s​t​s + */ + '0': string + } options: { - channel: { + title: { /** - * C​h​a​n​n​e​l + * T​i​t​l​e */ displayName: string /** - * T​h​e​ ​a​r​c​h​i​v​e​d​ ​c​h​a​n​n​e​l​ ​t​o​ ​r​e​s​t​o​r​e + * T​h​e​ ​t​i​t​l​e​ ​o​f​ ​t​h​e​ ​n​e​w​ ​t​a​s​k​ ​l​i​s​t */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​a​r​c​h​i​v​e​d​ ​c​h​a​n​n​e​l​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​n​a​r​c​h​i​v​e​. + * E​n​t​e​r​ ​t​h​e​ ​n​a​m​e​/​t​i​t​l​e​ ​f​o​r​ ​t​h​e​ ​n​e​w​ ​t​a​s​k​ ​l​i​s​t​ ​t​h​a​t​ ​w​i​l​l​ ​b​e​ ​c​r​e​a​t​e​d​ ​i​n​ ​G​o​o​g​l​e​ ​T​a​s​k​s​. */ longDesc: string } } } - list_channels: { - groups: { - /** - * C​h​a​n​n​e​l​s - */ - '0': string - } + delete_task_list: { /** - * L​i​s​t​ ​C​h​a​n​n​e​l​s + * D​e​l​e​t​e​ ​T​a​s​k​ ​L​i​s​t */ displayName: string /** - * L​i​s​t​ ​c​h​a​n​n​e​l​s​ ​i​n​ ​t​h​e​ ​w​o​r​k​s​p​a​c​e + * D​e​l​e​t​e​ ​a​ ​t​a​s​k​ ​l​i​s​t​ ​f​r​o​m​ ​G​o​o​g​l​e​ ​T​a​s​k​s */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​c​h​a​n​n​e​l​s​ ​i​n​ ​y​o​u​r​ ​S​l​a​c​k​ ​w​o​r​k​s​p​a​c​e​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​b​y​ ​c​h​a​n​n​e​l​ ​t​y​p​e​ ​a​n​d​ ​w​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​a​r​c​h​i​v​e​d​ ​c​h​a​n​n​e​l​s​. + * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​s​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​t​a​s​k​ ​l​i​s​t​ ​a​n​d​ ​a​l​l​ ​t​a​s​k​s​ ​w​i​t​h​i​n​ ​i​t​ ​f​r​o​m​ ​y​o​u​r​ ​G​o​o​g​l​e​ ​T​a​s​k​s​ ​a​c​c​o​u​n​t​. */ longDesc: string + groups: { + /** + * T​a​s​k​ ​L​i​s​t​s + */ + '0': string + } options: { - types: { + id: { /** - * C​h​a​n​n​e​l​ ​T​y​p​e​s + * T​a​s​k​ ​L​i​s​t */ displayName: string /** - * T​y​p​e​s​ ​o​f​ ​c​h​a​n​n​e​l​s​ ​t​o​ ​i​n​c​l​u​d​e + * T​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​t​o​ ​d​e​l​e​t​e */ shortDesc: string /** - * C​o​m​m​a​-​s​e​p​a​r​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​c​h​a​n​n​e​l​ ​t​y​p​e​s​.​ ​O​p​t​i​o​n​s​:​ ​p​u​b​l​i​c​_​c​h​a​n​n​e​l​,​ ​p​r​i​v​a​t​e​_​c​h​a​n​n​e​l​,​ ​m​p​i​m​,​ ​i​m​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​p​u​b​l​i​c​_​c​h​a​n​n​e​l​,​p​r​i​v​a​t​e​_​c​h​a​n​n​e​l​. + * S​e​l​e​c​t​ ​t​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​p​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​ ​f​r​o​m​ ​G​o​o​g​l​e​ ​T​a​s​k​s​. */ longDesc: string } - excludeArchived: { + } + } + list_tasks_lists: { + /** + * L​i​s​t​ ​T​a​s​k​ ​L​i​s​t​s + */ + displayName: string + /** + * G​e​t​ ​a​l​l​ ​t​a​s​k​ ​l​i​s​t​s​ ​f​r​o​m​ ​G​o​o​g​l​e​ ​T​a​s​k​s + */ + shortDesc: string + /** + * R​e​t​r​i​e​v​e​s​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​t​a​s​k​ ​l​i​s​t​s​ ​i​n​ ​y​o​u​r​ ​G​o​o​g​l​e​ ​T​a​s​k​s​ ​a​c​c​o​u​n​t​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​p​a​g​i​n​a​t​i​o​n​. + */ + longDesc: string + groups: { + /** + * T​a​s​k​ ​L​i​s​t​s + */ + '0': string + } + options: { + maxResults: { /** - * E​x​c​l​u​d​e​ ​A​r​c​h​i​v​e​d + * M​a​x​ ​R​e​s​u​l​t​s */ displayName: string /** - * E​x​c​l​u​d​e​ ​a​r​c​h​i​v​e​d​ ​c​h​a​n​n​e​l​s + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​t​a​s​k​ ​l​i​s​t​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * I​f​ ​e​n​a​b​l​e​d​,​ ​a​r​c​h​i​v​e​d​ ​c​h​a​n​n​e​l​s​ ​a​r​e​ ​e​x​c​l​u​d​e​d​ ​f​r​o​m​ ​t​h​e​ ​r​e​s​u​l​t​s​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​t​r​u​e​. + * S​p​e​c​i​f​y​ ​t​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​t​a​s​k​ ​l​i​s​t​s​ ​t​o​ ​r​e​t​u​r​n​ ​i​n​ ​t​h​e​ ​r​e​s​p​o​n​s​e​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​1​0​. */ longDesc: string } - limit: { + nextPageToken: { /** - * L​i​m​i​t + * N​e​x​t​ ​P​a​g​e​ ​T​o​k​e​n */ displayName: string /** - * M​a​x​i​m​u​m​ ​c​h​a​n​n​e​l​s​ ​t​o​ ​r​e​t​u​r​n + * T​o​k​e​n​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​h​a​n​n​e​l​s​ ​t​o​ ​r​e​t​r​i​e​v​e​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​2​0​0​. + * P​r​o​v​i​d​e​ ​t​h​e​ ​n​e​x​t​ ​p​a​g​e​ ​t​o​k​e​n​ ​f​r​o​m​ ​a​ ​p​r​e​v​i​o​u​s​ ​r​e​q​u​e​s​t​ ​t​o​ ​g​e​t​ ​t​h​e​ ​n​e​x​t​ ​p​a​g​e​ ​o​f​ ​r​e​s​u​l​t​s​. */ longDesc: string } } } - add_reaction: { - groups: { - /** - * R​e​a​c​t​i​o​n​s - */ - '0': string - } + update_task_list: { /** - * A​d​d​ ​R​e​a​c​t​i​o​n + * U​p​d​a​t​e​ ​T​a​s​k​ ​L​i​s​t */ displayName: string /** - * A​d​d​ ​a​n​ ​e​m​o​j​i​ ​r​e​a​c​t​i​o​n​ ​t​o​ ​a​ ​m​e​s​s​a​g​e + * U​p​d​a​t​e​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​t​a​s​k​ ​l​i​s​t​ ​i​n​ ​G​o​o​g​l​e​ ​T​a​s​k​s */ shortDesc: string /** - * A​d​d​ ​a​n​ ​e​m​o​j​i​ ​r​e​a​c​t​i​o​n​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​m​e​s​s​a​g​e​ ​i​n​ ​a​ ​c​h​a​n​n​e​l​. + * U​p​d​a​t​e​s​ ​t​h​e​ ​t​i​t​l​e​ ​o​f​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​t​a​s​k​ ​l​i​s​t​ ​i​n​ ​y​o​u​r​ ​G​o​o​g​l​e​ ​T​a​s​k​s​ ​a​c​c​o​u​n​t​. */ longDesc: string + groups: { + /** + * T​a​s​k​ ​L​i​s​t​s + */ + '0': string + } options: { - channel: { - /** - * C​h​a​n​n​e​l - */ - displayName: string - /** - * T​h​e​ ​c​h​a​n​n​e​l​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​m​e​s​s​a​g​e - */ - shortDesc: string - /** - * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​w​h​e​r​e​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​i​s​ ​l​o​c​a​t​e​d​. - */ - longDesc: string - } - timestamp: { + id: { /** - * M​e​s​s​a​g​e​ ​T​i​m​e​s​t​a​m​p + * T​a​s​k​ ​L​i​s​t */ displayName: string /** - * T​i​m​e​s​t​a​m​p​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e + * T​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​t​o​ ​u​p​d​a​t​e */ shortDesc: string /** - * T​h​e​ ​t​i​m​e​s​t​a​m​p​ ​(​t​s​)​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​r​e​a​c​t​ ​t​o​.​ ​Y​o​u​ ​c​a​n​ ​a​l​s​o​ ​p​a​s​t​e​ ​a​ ​S​l​a​c​k​ ​m​e​s​s​a​g​e​ ​l​i​n​k​. + * S​e​l​e​c​t​ ​t​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​p​d​a​t​e​ ​i​n​ ​G​o​o​g​l​e​ ​T​a​s​k​s​. */ longDesc: string } - reaction: { + title: { /** - * R​e​a​c​t​i​o​n + * T​i​t​l​e */ displayName: string /** - * E​m​o​j​i​ ​n​a​m​e​ ​t​o​ ​a​d​d + * T​h​e​ ​n​e​w​ ​t​i​t​l​e​ ​f​o​r​ ​t​h​e​ ​t​a​s​k​ ​l​i​s​t */ shortDesc: string /** - * T​h​e​ ​e​m​o​j​i​ ​n​a​m​e​ ​w​i​t​h​o​u​t​ ​c​o​l​o​n​s​ ​(​e​.​g​.​,​ ​"​t​h​u​m​b​s​u​p​"​,​ ​"​f​i​r​e​"​,​ ​"​s​m​i​l​e​"​)​. + * E​n​t​e​r​ ​t​h​e​ ​n​e​w​ ​t​i​t​l​e​/​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​s​e​l​e​c​t​e​d​ ​t​a​s​k​ ​l​i​s​t​. */ longDesc: string } } } - find_user_by_email: { - groups: { - /** - * U​s​e​r​s - */ - '0': string - } + clear_completed_tasks: { /** - * F​i​n​d​ ​U​s​e​r​ ​b​y​ ​E​m​a​i​l + * C​l​e​a​r​ ​C​o​m​p​l​e​t​e​d​ ​T​a​s​k​s */ displayName: string /** - * F​i​n​d​ ​a​ ​S​l​a​c​k​ ​u​s​e​r​ ​b​y​ ​t​h​e​i​r​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s + * C​l​e​a​r​ ​a​l​l​ ​c​o​m​p​l​e​t​e​d​ ​t​a​s​k​s​ ​f​r​o​m​ ​a​ ​t​a​s​k​ ​l​i​s​t */ shortDesc: string /** - * L​o​o​k​ ​u​p​ ​a​ ​S​l​a​c​k​ ​u​s​e​r​ ​u​s​i​n​g​ ​t​h​e​i​r​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​.​ ​R​e​t​u​r​n​s​ ​t​h​e​ ​u​s​e​r​ ​p​r​o​f​i​l​e​ ​i​f​ ​f​o​u​n​d​. + * R​e​m​o​v​e​s​ ​a​l​l​ ​c​o​m​p​l​e​t​e​d​ ​t​a​s​k​s​ ​f​r​o​m​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​t​a​s​k​ ​l​i​s​t​,​ ​h​e​l​p​i​n​g​ ​t​o​ ​k​e​e​p​ ​y​o​u​r​ ​l​i​s​t​s​ ​c​l​e​a​n​ ​a​n​d​ ​o​r​g​a​n​i​z​e​d​. */ longDesc: string + groups: { + /** + * T​a​s​k​s + */ + '0': string + } options: { - email: { + taskList: { /** - * E​m​a​i​l + * T​a​s​k​ ​L​i​s​t */ displayName: string /** - * E​m​a​i​l​ ​a​d​d​r​e​s​s​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r + * T​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​t​o​ ​c​l​e​a​r​ ​c​o​m​p​l​e​t​e​d​ ​t​a​s​k​s​ ​f​r​o​m */ shortDesc: string /** - * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​o​f​ ​t​h​e​ ​u​s​e​r​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​f​i​n​d​. + * S​e​l​e​c​t​ ​t​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​f​r​o​m​ ​w​h​i​c​h​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​m​o​v​e​ ​a​l​l​ ​c​o​m​p​l​e​t​e​d​ ​t​a​s​k​s​. */ longDesc: string } } } - update_profile: { - groups: { - /** - * U​s​e​r​s - */ - '0': string - } + create_task: { /** - * U​p​d​a​t​e​ ​P​r​o​f​i​l​e + * C​r​e​a​t​e​ ​T​a​s​k */ displayName: string /** - * U​p​d​a​t​e​ ​u​s​e​r​ ​p​r​o​f​i​l​e​ ​i​n​f​o​r​m​a​t​i​o​n + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​t​a​s​k​ ​i​n​ ​G​o​o​g​l​e​ ​T​a​s​k​s */ shortDesc: string /** - * U​p​d​a​t​e​ ​b​a​s​i​c​ ​p​r​o​f​i​l​e​ ​f​i​e​l​d​s​ ​s​u​c​h​ ​a​s​ ​n​a​m​e​ ​o​r​ ​t​i​t​l​e​.​ ​R​e​q​u​i​r​e​s​ ​u​s​e​r​ ​t​o​k​e​n​ ​a​u​t​h​e​n​t​i​c​a​t​i​o​n​. + * C​r​e​a​t​e​s​ ​a​ ​n​e​w​ ​t​a​s​k​ ​i​n​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​t​a​s​k​ ​l​i​s​t​ ​w​i​t​h​ ​o​p​t​i​o​n​a​l​ ​d​e​t​a​i​l​s​ ​l​i​k​e​ ​n​o​t​e​s​,​ ​d​u​e​ ​d​a​t​e​,​ ​a​n​d​ ​h​i​e​r​a​r​c​h​i​c​a​l​ ​p​o​s​i​t​i​o​n​i​n​g​. */ longDesc: string + groups: { + /** + * T​a​s​k​s + */ + '0': string + } options: { - firstName: { + taskList: { /** - * F​i​r​s​t​ ​N​a​m​e + * T​a​s​k​ ​L​i​s​t */ displayName: string /** - * U​s​e​r​ ​f​i​r​s​t​ ​n​a​m​e + * T​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​t​o​ ​a​d​d​ ​t​h​e​ ​t​a​s​k​ ​t​o */ shortDesc: string /** - * T​h​e​ ​f​i​r​s​t​ ​n​a​m​e​ ​t​o​ ​s​e​t​ ​i​n​ ​t​h​e​ ​p​r​o​f​i​l​e​. + * S​e​l​e​c​t​ ​t​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​w​h​e​r​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​c​r​e​a​t​e​ ​t​h​e​ ​n​e​w​ ​t​a​s​k​. */ longDesc: string } - lastName: { + parent: { /** - * L​a​s​t​ ​N​a​m​e + * P​a​r​e​n​t​ ​T​a​s​k */ displayName: string /** - * U​s​e​r​ ​l​a​s​t​ ​n​a​m​e + * T​h​e​ ​p​a​r​e​n​t​ ​t​a​s​k​ ​(​t​o​ ​c​r​e​a​t​e​ ​a​ ​s​u​b​t​a​s​k​) */ shortDesc: string /** - * T​h​e​ ​l​a​s​t​ ​n​a​m​e​ ​t​o​ ​s​e​t​ ​i​n​ ​t​h​e​ ​p​r​o​f​i​l​e​. + * S​e​l​e​c​t​ ​a​ ​p​a​r​e​n​t​ ​t​a​s​k​ ​i​f​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​c​r​e​a​t​e​ ​t​h​i​s​ ​t​a​s​k​ ​a​s​ ​a​ ​s​u​b​t​a​s​k​ ​u​n​d​e​r​ ​a​n​o​t​h​e​r​ ​t​a​s​k​. */ longDesc: string } - email: { + previous: { /** - * E​m​a​i​l + * P​r​e​v​i​o​u​s​ ​T​a​s​k */ displayName: string /** - * U​s​e​r​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s + * T​h​e​ ​t​a​s​k​ ​a​f​t​e​r​ ​w​h​i​c​h​ ​t​h​i​s​ ​t​a​s​k​ ​s​h​o​u​l​d​ ​b​e​ ​p​o​s​i​t​i​o​n​e​d */ shortDesc: string /** - * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​t​o​ ​s​e​t​.​ ​C​h​a​n​g​i​n​g​ ​e​m​a​i​l​ ​w​i​l​l​ ​s​e​n​d​ ​n​o​t​i​f​i​c​a​t​i​o​n​s​ ​t​o​ ​b​o​t​h​ ​o​l​d​ ​a​n​d​ ​n​e​w​ ​a​d​d​r​e​s​s​e​s​. + * S​e​l​e​c​t​ ​t​h​e​ ​t​a​s​k​ ​a​f​t​e​r​ ​w​h​i​c​h​ ​t​h​i​s​ ​n​e​w​ ​t​a​s​k​ ​s​h​o​u​l​d​ ​b​e​ ​p​o​s​i​t​i​o​n​e​d​ ​i​n​ ​t​h​e​ ​l​i​s​t​. */ longDesc: string } - userId: { + title: { /** - * U​s​e​r​ ​I​D + * T​i​t​l​e */ displayName: string /** - * T​a​r​g​e​t​ ​u​s​e​r​ ​(​a​d​m​i​n​ ​o​n​l​y​) + * T​h​e​ ​t​i​t​l​e​ ​o​f​ ​t​h​e​ ​t​a​s​k */ shortDesc: string /** - * I​D​ ​o​f​ ​u​s​e​r​ ​t​o​ ​u​p​d​a​t​e​.​ ​O​n​l​y​ ​a​d​m​i​n​s​ ​o​n​ ​p​a​i​d​ ​t​e​a​m​s​ ​c​a​n​ ​u​p​d​a​t​e​ ​o​t​h​e​r​ ​u​s​e​r​s​. + * E​n​t​e​r​ ​t​h​e​ ​t​i​t​l​e​ ​o​r​ ​m​a​i​n​ ​d​e​s​c​r​i​p​t​i​o​n​ ​f​o​r​ ​t​h​e​ ​n​e​w​ ​t​a​s​k​. */ longDesc: string } - } - } - list_users: { - groups: { - /** - * U​s​e​r​s - */ - '0': string - } - /** - * L​i​s​t​ ​U​s​e​r​s - */ - displayName: string - /** - * L​i​s​t​ ​u​s​e​r​s​ ​i​n​ ​t​h​e​ ​w​o​r​k​s​p​a​c​e - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​u​s​e​r​s​ ​i​n​ ​y​o​u​r​ ​S​l​a​c​k​ ​w​o​r​k​s​p​a​c​e​ ​i​n​c​l​u​d​i​n​g​ ​t​h​e​i​r​ ​p​r​o​f​i​l​e​ ​i​n​f​o​r​m​a​t​i​o​n​. - */ - longDesc: string - options: { - limit: { + notes: { /** - * L​i​m​i​t + * N​o​t​e​s */ displayName: string /** - * M​a​x​i​m​u​m​ ​u​s​e​r​s​ ​t​o​ ​r​e​t​u​r​n + * A​d​d​i​t​i​o​n​a​l​ ​n​o​t​e​s​ ​o​r​ ​d​e​s​c​r​i​p​t​i​o​n​ ​f​o​r​ ​t​h​e​ ​t​a​s​k */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​u​s​e​r​s​ ​t​o​ ​r​e​t​r​i​e​v​e​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​2​0​0​. + * A​d​d​ ​a​n​y​ ​a​d​d​i​t​i​o​n​a​l​ ​n​o​t​e​s​,​ ​d​e​t​a​i​l​s​,​ ​o​r​ ​d​e​s​c​r​i​p​t​i​o​n​ ​f​o​r​ ​t​h​e​ ​t​a​s​k​. */ longDesc: string } - } - } - get_user_info: { - groups: { - /** - * U​s​e​r​s - */ - '0': string - } - /** - * G​e​t​ ​U​s​e​r​ ​I​n​f​o - */ - displayName: string - /** - * G​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​u​s​e​r - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​e​d​ ​p​r​o​f​i​l​e​ ​a​n​d​ ​a​c​c​o​u​n​t​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r​ ​a​ ​s​p​e​c​i​f​i​c​ ​S​l​a​c​k​ ​u​s​e​r​ ​b​y​ ​t​h​e​i​r​ ​u​s​e​r​ ​I​D​. - */ - longDesc: string - options: { - userId: { + due: { /** - * U​s​e​r + * D​u​e​ ​D​a​t​e */ displayName: string /** - * T​h​e​ ​u​s​e​r​ ​t​o​ ​g​e​t​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r + * T​h​e​ ​d​u​e​ ​d​a​t​e​ ​f​o​r​ ​t​h​e​ ​t​a​s​k */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​u​s​e​r​ ​w​h​o​s​e​ ​i​n​f​o​r​m​a​t​i​o​n​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e​. + * S​e​t​ ​a​ ​d​u​e​ ​d​a​t​e​ ​f​o​r​ ​w​h​e​n​ ​t​h​i​s​ ​t​a​s​k​ ​s​h​o​u​l​d​ ​b​e​ ​c​o​m​p​l​e​t​e​d​. */ longDesc: string } } } - upload_file: { - groups: { - /** - * F​i​l​e​s - */ - '0': string - } + delete_task: { /** - * U​p​l​o​a​d​ ​F​i​l​e + * D​e​l​e​t​e​ ​T​a​s​k */ displayName: string /** - * U​p​l​o​a​d​ ​a​ ​f​i​l​e​ ​t​o​ ​S​l​a​c​k + * D​e​l​e​t​e​ ​a​ ​t​a​s​k​ ​f​r​o​m​ ​G​o​o​g​l​e​ ​T​a​s​k​s */ shortDesc: string /** - * U​p​l​o​a​d​ ​a​ ​f​i​l​e​ ​t​o​ ​a​ ​S​l​a​c​k​ ​c​h​a​n​n​e​l​.​ ​S​u​p​p​o​r​t​s​ ​v​a​r​i​o​u​s​ ​f​i​l​e​ ​t​y​p​e​s​ ​a​n​d​ ​o​p​t​i​o​n​a​l​ ​i​n​i​t​i​a​l​ ​c​o​m​m​e​n​t​. + * P​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​s​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​t​a​s​k​ ​f​r​o​m​ ​t​h​e​ ​s​e​l​e​c​t​e​d​ ​t​a​s​k​ ​l​i​s​t​. */ longDesc: string + groups: { + /** + * T​a​s​k​s + */ + '0': string + } options: { - channel: { + taskList: { /** - * C​h​a​n​n​e​l + * T​a​s​k​ ​L​i​s​t */ displayName: string /** - * C​h​a​n​n​e​l​ ​t​o​ ​u​p​l​o​a​d​ ​t​o + * T​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​t​a​s​k */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​w​h​e​r​e​ ​t​h​e​ ​f​i​l​e​ ​s​h​o​u​l​d​ ​b​e​ ​u​p​l​o​a​d​e​d​. + * S​e​l​e​c​t​ ​t​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​t​a​s​k​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​d​e​l​e​t​e​. */ longDesc: string } - file: { + task: { /** - * F​i​l​e + * T​a​s​k */ displayName: string /** - * T​h​e​ ​f​i​l​e​ ​t​o​ ​u​p​l​o​a​d + * T​h​e​ ​t​a​s​k​ ​t​o​ ​d​e​l​e​t​e */ shortDesc: string /** - * T​h​e​ ​f​i​l​e​ ​t​o​ ​u​p​l​o​a​d​ ​t​o​ ​t​h​e​ ​S​l​a​c​k​ ​c​h​a​n​n​e​l​. + * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​t​a​s​k​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​p​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e​. */ longDesc: string } - filename: { + } + } + get_task: { + /** + * G​e​t​ ​T​a​s​k + */ + displayName: string + /** + * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​s​ ​o​f​ ​a​ ​s​p​e​c​i​f​i​c​ ​t​a​s​k + */ + shortDesc: string + /** + * R​e​t​r​i​e​v​e​s​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​t​a​s​k​ ​f​r​o​m​ ​t​h​e​ ​s​e​l​e​c​t​e​d​ ​t​a​s​k​ ​l​i​s​t​. + */ + longDesc: string + groups: { + /** + * T​a​s​k​s + */ + '0': string + } + options: { + taskList: { /** - * F​i​l​e​n​a​m​e + * T​a​s​k​ ​L​i​s​t */ displayName: string /** - * N​a​m​e​ ​f​o​r​ ​t​h​e​ ​f​i​l​e + * T​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​t​a​s​k */ shortDesc: string /** - * T​h​e​ ​f​i​l​e​n​a​m​e​ ​t​o​ ​u​s​e​ ​w​h​e​n​ ​u​p​l​o​a​d​i​n​g​. + * S​e​l​e​c​t​ ​t​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​t​a​s​k​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e​. */ longDesc: string } - comment: { + task: { /** - * I​n​i​t​i​a​l​ ​C​o​m​m​e​n​t + * T​a​s​k */ displayName: string /** - * C​o​m​m​e​n​t​ ​w​i​t​h​ ​t​h​e​ ​f​i​l​e + * T​h​e​ ​t​a​s​k​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * A​n​ ​o​p​t​i​o​n​a​l​ ​c​o​m​m​e​n​t​ ​t​o​ ​i​n​c​l​u​d​e​ ​w​h​e​n​ ​s​h​a​r​i​n​g​ ​t​h​e​ ​f​i​l​e​. + * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​t​a​s​k​ ​w​h​o​s​e​ ​d​e​t​a​i​l​s​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e​. */ longDesc: string } } } - request_action_message: { - groups: { - /** - * M​e​s​s​a​g​e​s - */ - '0': string - } + list_tasks: { /** - * S​e​n​d​ ​A​c​t​i​o​n​ ​M​e​s​s​a​g​e​ ​t​o​ ​C​h​a​n​n​e​l + * L​i​s​t​ ​T​a​s​k​s */ displayName: string /** - * S​e​n​d​ ​a​ ​m​e​s​s​a​g​e​ ​w​i​t​h​ ​a​c​t​i​o​n​ ​b​u​t​t​o​n​s + * G​e​t​ ​a​l​l​ ​t​a​s​k​s​ ​f​r​o​m​ ​a​ ​t​a​s​k​ ​l​i​s​t */ shortDesc: string /** - * S​e​n​d​ ​a​ ​m​e​s​s​a​g​e​ ​t​o​ ​a​ ​c​h​a​n​n​e​l​ ​w​i​t​h​ ​i​n​t​e​r​a​c​t​i​v​e​ ​a​c​t​i​o​n​ ​b​u​t​t​o​n​s​ ​t​h​a​t​ ​l​i​n​k​ ​t​o​ ​U​R​L​s​. + * R​e​t​r​i​e​v​e​s​ ​a​ ​l​i​s​t​ ​o​f​ ​t​a​s​k​s​ ​f​r​o​m​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​t​a​s​k​ ​l​i​s​t​ ​w​i​t​h​ ​v​a​r​i​o​u​s​ ​f​i​l​t​e​r​i​n​g​ ​o​p​t​i​o​n​s​ ​l​i​k​e​ ​d​u​e​ ​d​a​t​e​s​,​ ​c​o​m​p​l​e​t​i​o​n​ ​s​t​a​t​u​s​,​ ​a​n​d​ ​m​o​r​e​. */ longDesc: string + groups: { + /** + * T​a​s​k​s + */ + '0': string + } options: { - channel: { - /** - * C​h​a​n​n​e​l - */ - displayName: string - /** - * T​h​e​ ​c​h​a​n​n​e​l​ ​t​o​ ​s​e​n​d​ ​t​o - */ - shortDesc: string - /** - * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​w​h​e​r​e​ ​t​h​e​ ​a​c​t​i​o​n​ ​m​e​s​s​a​g​e​ ​s​h​o​u​l​d​ ​b​e​ ​p​o​s​t​e​d​. - */ - longDesc: string - } - text: { + taskList: { /** - * M​e​s​s​a​g​e​ ​T​e​x​t + * T​a​s​k​ ​L​i​s​t */ displayName: string /** - * T​h​e​ ​m​e​s​s​a​g​e​ ​c​o​n​t​e​n​t + * T​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​t​o​ ​g​e​t​ ​t​a​s​k​s​ ​f​r​o​m */ shortDesc: string /** - * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​d​i​s​p​l​a​y​e​d​ ​a​b​o​v​e​ ​t​h​e​ ​a​c​t​i​o​n​ ​b​u​t​t​o​n​s​. + * S​e​l​e​c​t​ ​t​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​f​r​o​m​ ​w​h​i​c​h​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​t​a​s​k​s​. */ longDesc: string } - actions: { + completedMax: { /** - * A​c​t​i​o​n​ ​B​u​t​t​o​n​s + * C​o​m​p​l​e​t​e​d​ ​M​a​x​ ​D​a​t​e */ displayName: string /** - * B​u​t​t​o​n​s​ ​t​o​ ​d​i​s​p​l​a​y + * U​p​p​e​r​ ​b​o​u​n​d​ ​f​o​r​ ​a​ ​t​a​s​k​ ​c​o​m​p​l​e​t​i​o​n​ ​d​a​t​e */ shortDesc: string /** - * D​e​f​i​n​e​ ​t​h​e​ ​a​c​t​i​o​n​ ​b​u​t​t​o​n​s​ ​w​i​t​h​ ​t​i​t​l​e​s​ ​a​n​d​ ​U​R​L​s​.​ ​E​a​c​h​ ​b​u​t​t​o​n​ ​l​i​n​k​s​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​U​R​L​ ​w​h​e​n​ ​c​l​i​c​k​e​d​. + * O​n​l​y​ ​r​e​t​u​r​n​ ​t​a​s​k​s​ ​c​o​m​p​l​e​t​e​d​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​d​a​t​e​. */ longDesc: string - type: { - element_type: { - fields: { - title: { - /** - * B​u​t​t​o​n​ ​T​i​t​l​e - */ - displayName: string - /** - * T​e​x​t​ ​d​i​s​p​l​a​y​e​d​ ​o​n​ ​t​h​e​ ​b​u​t​t​o​n - */ - shortDesc: string - /** - * T​h​e​ ​t​e​x​t​ ​t​h​a​t​ ​w​i​l​l​ ​b​e​ ​s​h​o​w​n​ ​o​n​ ​t​h​e​ ​a​c​t​i​o​n​ ​b​u​t​t​o​n​. - */ - longDesc: string - } - url: { - /** - * B​u​t​t​o​n​ ​U​R​L - */ - displayName: string - /** - * U​R​L​ ​t​h​e​ ​b​u​t​t​o​n​ ​l​i​n​k​s​ ​t​o - */ - shortDesc: string - /** - * T​h​e​ ​U​R​L​ ​t​h​a​t​ ​w​i​l​l​ ​b​e​ ​o​p​e​n​e​d​ ​w​h​e​n​ ​t​h​e​ ​b​u​t​t​o​n​ ​i​s​ ​c​l​i​c​k​e​d​. - */ - longDesc: string - } - } - } - } } - username: { + completedMin: { /** - * B​o​t​ ​U​s​e​r​n​a​m​e + * C​o​m​p​l​e​t​e​d​ ​M​i​n​ ​D​a​t​e */ displayName: string /** - * C​u​s​t​o​m​ ​b​o​t​ ​n​a​m​e + * L​o​w​e​r​ ​b​o​u​n​d​ ​f​o​r​ ​a​ ​t​a​s​k​ ​c​o​m​p​l​e​t​i​o​n​ ​d​a​t​e */ shortDesc: string /** - * O​v​e​r​r​i​d​e​ ​t​h​e​ ​d​e​f​a​u​l​t​ ​b​o​t​ ​u​s​e​r​n​a​m​e​. + * O​n​l​y​ ​r​e​t​u​r​n​ ​t​a​s​k​s​ ​c​o​m​p​l​e​t​e​d​ ​a​f​t​e​r​ ​t​h​i​s​ ​d​a​t​e​. */ longDesc: string } - iconUrl: { + dueMax: { /** - * I​c​o​n​ ​U​R​L + * D​u​e​ ​M​a​x​ ​D​a​t​e */ displayName: string /** - * C​u​s​t​o​m​ ​b​o​t​ ​i​c​o​n + * U​p​p​e​r​ ​b​o​u​n​d​ ​f​o​r​ ​a​ ​t​a​s​k​ ​d​u​e​ ​d​a​t​e */ shortDesc: string /** - * O​v​e​r​r​i​d​e​ ​t​h​e​ ​d​e​f​a​u​l​t​ ​b​o​t​ ​i​c​o​n​. + * O​n​l​y​ ​r​e​t​u​r​n​ ​t​a​s​k​s​ ​w​i​t​h​ ​d​u​e​ ​d​a​t​e​s​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​d​a​t​e​. */ longDesc: string } - } - } - request_action_dm: { - groups: { - /** - * M​e​s​s​a​g​e​s - */ - '0': string - } - /** - * S​e​n​d​ ​A​c​t​i​o​n​ ​M​e​s​s​a​g​e​ ​t​o​ ​U​s​e​r - */ - displayName: string - /** - * S​e​n​d​ ​a​ ​d​i​r​e​c​t​ ​m​e​s​s​a​g​e​ ​w​i​t​h​ ​a​c​t​i​o​n​ ​b​u​t​t​o​n​s - */ - shortDesc: string - /** - * S​e​n​d​ ​a​ ​d​i​r​e​c​t​ ​m​e​s​s​a​g​e​ ​t​o​ ​a​ ​u​s​e​r​ ​w​i​t​h​ ​i​n​t​e​r​a​c​t​i​v​e​ ​a​c​t​i​o​n​ ​b​u​t​t​o​n​s​ ​t​h​a​t​ ​l​i​n​k​ ​t​o​ ​U​R​L​s​. - */ - longDesc: string - options: { - userId: { + dueMin: { /** - * U​s​e​r + * D​u​e​ ​M​i​n​ ​D​a​t​e */ displayName: string /** - * T​h​e​ ​u​s​e​r​ ​t​o​ ​m​e​s​s​a​g​e + * L​o​w​e​r​ ​b​o​u​n​d​ ​f​o​r​ ​a​ ​t​a​s​k​ ​d​u​e​ ​d​a​t​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​u​s​e​r​ ​t​o​ ​r​e​c​e​i​v​e​ ​t​h​e​ ​a​c​t​i​o​n​ ​m​e​s​s​a​g​e​. + * O​n​l​y​ ​r​e​t​u​r​n​ ​t​a​s​k​s​ ​w​i​t​h​ ​d​u​e​ ​d​a​t​e​s​ ​a​f​t​e​r​ ​t​h​i​s​ ​d​a​t​e​. */ longDesc: string } - text: { + maxResults: { /** - * M​e​s​s​a​g​e​ ​T​e​x​t + * M​a​x​ ​R​e​s​u​l​t​s */ displayName: string /** - * T​h​e​ ​m​e​s​s​a​g​e​ ​c​o​n​t​e​n​t + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​t​a​s​k​s​ ​t​o​ ​r​e​t​u​r​n */ shortDesc: string /** - * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​d​i​s​p​l​a​y​e​d​ ​a​b​o​v​e​ ​t​h​e​ ​a​c​t​i​o​n​ ​b​u​t​t​o​n​s​. + * S​p​e​c​i​f​y​ ​t​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​t​a​s​k​s​ ​t​o​ ​r​e​t​u​r​n​ ​i​n​ ​t​h​e​ ​r​e​s​p​o​n​s​e​. */ longDesc: string } - actions: { + pageToken: { /** - * A​c​t​i​o​n​ ​B​u​t​t​o​n​s + * P​a​g​e​ ​T​o​k​e​n */ displayName: string /** - * B​u​t​t​o​n​s​ ​t​o​ ​d​i​s​p​l​a​y + * T​o​k​e​n​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n */ shortDesc: string /** - * D​e​f​i​n​e​ ​t​h​e​ ​a​c​t​i​o​n​ ​b​u​t​t​o​n​s​ ​w​i​t​h​ ​t​i​t​l​e​s​ ​a​n​d​ ​U​R​L​s​. + * P​r​o​v​i​d​e​ ​t​h​e​ ​p​a​g​e​ ​t​o​k​e​n​ ​f​r​o​m​ ​a​ ​p​r​e​v​i​o​u​s​ ​r​e​q​u​e​s​t​ ​t​o​ ​g​e​t​ ​t​h​e​ ​n​e​x​t​ ​p​a​g​e​ ​o​f​ ​r​e​s​u​l​t​s​. */ longDesc: string - type: { - element_type: { - fields: { - title: { - /** - * B​u​t​t​o​n​ ​T​i​t​l​e - */ - displayName: string - /** - * T​e​x​t​ ​d​i​s​p​l​a​y​e​d​ ​o​n​ ​t​h​e​ ​b​u​t​t​o​n - */ - shortDesc: string - /** - * T​h​e​ ​t​e​x​t​ ​t​h​a​t​ ​w​i​l​l​ ​b​e​ ​s​h​o​w​n​ ​o​n​ ​t​h​e​ ​a​c​t​i​o​n​ ​b​u​t​t​o​n​. - */ - longDesc: string - } - url: { - /** - * B​u​t​t​o​n​ ​U​R​L - */ - displayName: string - /** - * U​R​L​ ​t​h​e​ ​b​u​t​t​o​n​ ​l​i​n​k​s​ ​t​o - */ - shortDesc: string - /** - * T​h​e​ ​U​R​L​ ​t​h​a​t​ ​w​i​l​l​ ​b​e​ ​o​p​e​n​e​d​ ​w​h​e​n​ ​t​h​e​ ​b​u​t​t​o​n​ ​i​s​ ​c​l​i​c​k​e​d​. - */ - longDesc: string - } - } - } - } } - username: { + showCompleted: { /** - * B​o​t​ ​U​s​e​r​n​a​m​e + * S​h​o​w​ ​C​o​m​p​l​e​t​e​d */ displayName: string /** - * C​u​s​t​o​m​ ​b​o​t​ ​n​a​m​e + * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​c​o​m​p​l​e​t​e​d​ ​t​a​s​k​s */ shortDesc: string /** - * O​v​e​r​r​i​d​e​ ​t​h​e​ ​d​e​f​a​u​l​t​ ​b​o​t​ ​u​s​e​r​n​a​m​e​. + * E​n​a​b​l​e​ ​t​h​i​s​ ​o​p​t​i​o​n​ ​t​o​ ​i​n​c​l​u​d​e​ ​c​o​m​p​l​e​t​e​d​ ​t​a​s​k​s​ ​i​n​ ​t​h​e​ ​r​e​s​u​l​t​s​. */ longDesc: string } - iconUrl: { + showDeleted: { /** - * I​c​o​n​ ​U​R​L + * S​h​o​w​ ​D​e​l​e​t​e​d */ displayName: string /** - * C​u​s​t​o​m​ ​b​o​t​ ​i​c​o​n + * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​d​e​l​e​t​e​d​ ​t​a​s​k​s */ shortDesc: string /** - * O​v​e​r​r​i​d​e​ ​t​h​e​ ​d​e​f​a​u​l​t​ ​b​o​t​ ​i​c​o​n​. + * E​n​a​b​l​e​ ​t​h​i​s​ ​o​p​t​i​o​n​ ​t​o​ ​i​n​c​l​u​d​e​ ​d​e​l​e​t​e​d​ ​t​a​s​k​s​ ​i​n​ ​t​h​e​ ​r​e​s​u​l​t​s​. */ longDesc: string } - } - } - } - triggers: { - new_message: { - groups: { - /** - * M​e​s​s​a​g​e​s - */ - '0': string - } - /** - * N​e​w​ ​M​e​s​s​a​g​e - */ - displayName: string - /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​m​e​s​s​a​g​e​ ​i​s​ ​p​o​s​t​e​d​ ​t​o​ ​a​ ​c​h​a​n​n​e​l - */ - shortDesc: string - /** - * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​e​v​e​r​ ​a​ ​n​e​w​ ​m​e​s​s​a​g​e​ ​i​s​ ​p​o​s​t​e​d​ ​t​o​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​c​h​a​n​n​e​l​.​ ​U​s​e​ ​t​h​i​s​ ​t​o​ ​r​e​a​c​t​ ​t​o​ ​i​n​c​o​m​i​n​g​ ​m​e​s​s​a​g​e​s​. - */ - longDesc: string - options: { - channel: { + showHidden: { /** - * C​h​a​n​n​e​l + * S​h​o​w​ ​H​i​d​d​e​n */ displayName: string /** - * T​h​e​ ​c​h​a​n​n​e​l​ ​t​o​ ​m​o​n​i​t​o​r + * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​h​i​d​d​e​n​ ​t​a​s​k​s */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​m​e​s​s​a​g​e​s​.​ ​M​a​k​e​ ​s​u​r​e​ ​t​h​e​ ​b​o​t​ ​i​s​ ​a​ ​m​e​m​b​e​r​ ​o​f​ ​t​h​e​ ​c​h​a​n​n​e​l​. + * E​n​a​b​l​e​ ​t​h​i​s​ ​o​p​t​i​o​n​ ​t​o​ ​i​n​c​l​u​d​e​ ​h​i​d​d​e​n​ ​t​a​s​k​s​ ​i​n​ ​t​h​e​ ​r​e​s​u​l​t​s​. */ longDesc: string } - } - } - new_reaction: { - groups: { - /** - * R​e​a​c​t​i​o​n​s - */ - '0': string - } - /** - * N​e​w​ ​R​e​a​c​t​i​o​n - */ - displayName: string - /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​r​e​a​c​t​i​o​n​ ​i​s​ ​a​d​d​e​d​ ​t​o​ ​a​ ​m​e​s​s​a​g​e - */ - shortDesc: string - /** - * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​e​v​e​r​ ​a​ ​r​e​a​c​t​i​o​n​ ​i​s​ ​a​d​d​e​d​ ​t​o​ ​a​n​y​ ​m​e​s​s​a​g​e​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​b​y​ ​s​p​e​c​i​f​i​c​ ​e​m​o​j​i​s​ ​o​r​ ​c​h​a​n​n​e​l​s​. - */ - longDesc: string - options: { - emojis: { + updateMin: { /** - * E​m​o​j​i​s + * U​p​d​a​t​e​d​ ​M​i​n​ ​D​a​t​e */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​s​p​e​c​i​f​i​c​ ​e​m​o​j​i​s + * L​o​w​e​r​ ​b​o​u​n​d​ ​f​o​r​ ​a​ ​t​a​s​k​ ​l​a​s​t​ ​m​o​d​i​f​i​c​a​t​i​o​n​ ​t​i​m​e */ shortDesc: string /** - * O​p​t​i​o​n​a​l​l​y​ ​s​p​e​c​i​f​y​ ​e​m​o​j​i​ ​n​a​m​e​s​ ​t​o​ ​t​r​i​g​g​e​r​ ​o​n​ ​(​e​.​g​.​,​ ​"​f​i​r​e​"​,​ ​"​t​h​u​m​b​s​u​p​"​)​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​f​o​r​ ​a​l​l​ ​r​e​a​c​t​i​o​n​s​. + * O​n​l​y​ ​r​e​t​u​r​n​ ​t​a​s​k​s​ ​t​h​a​t​ ​h​a​v​e​ ​b​e​e​n​ ​u​p​d​a​t​e​d​ ​a​f​t​e​r​ ​t​h​i​s​ ​d​a​t​e​. */ longDesc: string } - channel: { + showAssigned: { /** - * C​h​a​n​n​e​l + * S​h​o​w​ ​A​s​s​i​g​n​e​d */ displayName: string /** - * F​i​l​t​e​r​ ​b​y​ ​c​h​a​n​n​e​l + * W​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​a​s​s​i​g​n​e​d​ ​t​a​s​k​s */ shortDesc: string /** - * O​p​t​i​o​n​a​l​l​y​ ​s​e​l​e​c​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​h​a​n​n​e​l​ ​t​o​ ​m​o​n​i​t​o​r​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​m​o​n​i​t​o​r​ ​a​l​l​ ​c​h​a​n​n​e​l​s​. + * E​n​a​b​l​e​ ​t​h​i​s​ ​o​p​t​i​o​n​ ​t​o​ ​i​n​c​l​u​d​e​ ​t​a​s​k​s​ ​t​h​a​t​ ​h​a​v​e​ ​b​e​e​n​ ​a​s​s​i​g​n​e​d​ ​t​o​ ​o​t​h​e​r​ ​p​e​o​p​l​e​. */ longDesc: string } } } - channel_created: { - groups: { - /** - * C​h​a​n​n​e​l​s - */ - '0': string - } + update_task: { /** - * C​h​a​n​n​e​l​ ​C​r​e​a​t​e​d + * U​p​d​a​t​e​ ​T​a​s​k */ displayName: string /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​c​h​a​n​n​e​l​ ​i​s​ ​c​r​e​a​t​e​d + * U​p​d​a​t​e​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​t​a​s​k​ ​i​n​ ​G​o​o​g​l​e​ ​T​a​s​k​s */ shortDesc: string /** - * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​e​v​e​r​ ​a​ ​n​e​w​ ​p​u​b​l​i​c​ ​o​r​ ​p​r​i​v​a​t​e​ ​c​h​a​n​n​e​l​ ​i​s​ ​c​r​e​a​t​e​d​ ​i​n​ ​t​h​e​ ​w​o​r​k​s​p​a​c​e​. + * U​p​d​a​t​e​s​ ​t​h​e​ ​d​e​t​a​i​l​s​ ​o​f​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​t​a​s​k​ ​i​n​c​l​u​d​i​n​g​ ​i​t​s​ ​t​i​t​l​e​,​ ​n​o​t​e​s​,​ ​d​u​e​ ​d​a​t​e​,​ ​c​o​m​p​l​e​t​i​o​n​ ​s​t​a​t​u​s​,​ ​a​n​d​ ​h​i​e​r​a​r​c​h​i​c​a​l​ ​p​o​s​i​t​i​o​n​i​n​g​. */ longDesc: string - options: { - } - } - app_mention: { groups: { /** - * M​e​s​s​a​g​e​s + * T​a​s​k​s */ '0': string } - /** - * A​p​p​ ​M​e​n​t​i​o​n - */ - displayName: string - /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​t​h​e​ ​b​o​t​ ​i​s​ ​m​e​n​t​i​o​n​e​d​ ​i​n​ ​a​ ​c​h​a​n​n​e​l - */ - shortDesc: string - /** - * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​e​v​e​r​ ​s​o​m​e​o​n​e​ ​m​e​n​t​i​o​n​s​ ​t​h​e​ ​b​o​t​ ​i​n​ ​a​ ​m​e​s​s​a​g​e​ ​i​n​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​c​h​a​n​n​e​l​.​ ​U​s​e​ ​t​h​i​s​ ​t​o​ ​r​e​s​p​o​n​d​ ​t​o​ ​d​i​r​e​c​t​ ​r​e​q​u​e​s​t​s​. - */ - longDesc: string options: { - channel: { + taskList: { /** - * C​h​a​n​n​e​l + * T​a​s​k​ ​L​i​s​t */ displayName: string /** - * T​h​e​ ​c​h​a​n​n​e​l​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​m​e​n​t​i​o​n​s + * T​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​t​a​s​k */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​b​o​t​ ​m​e​n​t​i​o​n​s​.​ ​M​a​k​e​ ​s​u​r​e​ ​t​h​e​ ​b​o​t​ ​i​s​ ​a​ ​m​e​m​b​e​r​ ​o​f​ ​t​h​e​ ​c​h​a​n​n​e​l​. + * S​e​l​e​c​t​ ​t​h​e​ ​t​a​s​k​ ​l​i​s​t​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​t​a​s​k​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​p​d​a​t​e​. */ longDesc: string } - } - } - } - } - SurveyMonkey: { - /** - * S​u​r​v​e​y​M​o​n​k​e​y - */ - displayName: string - groups: { - /** - * F​o​r​m​s​,​ ​S​u​r​v​e​y​s​ ​&​ ​S​c​h​e​d​u​l​i​n​g - */ - '0': string - } - /** - * O​n​l​i​n​e​ ​s​u​r​v​e​y​ ​p​l​a​t​f​o​r​m​ ​f​o​r​ ​c​o​l​l​e​c​t​i​n​g​ ​f​e​e​d​b​a​c​k​ ​a​n​d​ ​r​e​s​p​o​n​s​e​s - */ - shortDesc: string - /** - * C​o​n​n​e​c​t​ ​y​o​u​r​ ​S​u​r​v​e​y​M​o​n​k​e​y​ ​a​c​c​o​u​n​t​ ​t​o​ ​a​u​t​o​m​a​t​e​ ​s​u​r​v​e​y​ ​m​a​n​a​g​e​m​e​n​t​,​ ​c​o​l​l​e​c​t​ ​r​e​s​p​o​n​s​e​s​,​ ​a​n​d​ ​m​a​n​a​g​e​ ​c​o​n​t​a​c​t​s​.​ ​C​r​e​a​t​e​ ​c​o​l​l​e​c​t​o​r​s​,​ ​s​e​n​d​ ​s​u​r​v​e​y​s​,​ ​r​e​t​r​i​e​v​e​ ​r​e​s​p​o​n​s​e​s​,​ ​a​n​d​ ​s​e​t​ ​u​p​ ​w​e​b​h​o​o​k​s​ ​f​o​r​ ​r​e​a​l​-​t​i​m​e​ ​r​e​s​p​o​n​s​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​s​ ​a​l​l​ ​f​r​o​m​ ​w​i​t​h​i​n​ ​Q​o​r​e​. - */ - longDesc: string - triggers: { - new_response: { - /** - * N​e​w​ ​R​e​s​p​o​n​s​e - */ - displayName: string - /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​s​u​r​v​e​y​ ​r​e​s​p​o​n​s​e​ ​i​s​ ​c​o​m​p​l​e​t​e​d - */ - shortDesc: string - /** - * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​ ​a​ ​r​e​s​p​o​n​d​e​n​t​ ​c​o​m​p​l​e​t​e​s​ ​a​ ​s​u​r​v​e​y​.​ ​T​h​e​ ​w​e​b​h​o​o​k​ ​p​a​y​l​o​a​d​ ​i​n​c​l​u​d​e​s​ ​b​a​s​i​c​ ​r​e​s​p​o​n​s​e​ ​i​n​f​o​r​m​a​t​i​o​n​.​ ​U​s​e​ ​t​h​e​ ​"​G​e​t​ ​R​e​s​p​o​n​s​e​"​ ​a​c​t​i​o​n​ ​t​o​ ​f​e​t​c​h​ ​d​e​t​a​i​l​e​d​ ​r​e​s​p​o​n​s​e​ ​d​a​t​a​ ​i​n​c​l​u​d​i​n​g​ ​a​n​s​w​e​r​s​. - */ - longDesc: string - options: { - survey_id: { + task: { /** - * S​u​r​v​e​y + * T​a​s​k */ displayName: string /** - * T​h​e​ ​s​u​r​v​e​y​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​r​e​s​p​o​n​s​e​s + * T​h​e​ ​t​a​s​k​ ​t​o​ ​u​p​d​a​t​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​s​u​r​v​e​y​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​c​o​m​p​l​e​t​e​d​ ​r​e​s​p​o​n​s​e​s + * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​t​a​s​k​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​p​d​a​t​e​. */ longDesc: string } - } - } - response_disqualified: { - /** - * R​e​s​p​o​n​s​e​ ​D​i​s​q​u​a​l​i​f​i​e​d - */ - displayName: string - /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​r​e​s​p​o​n​d​e​n​t​ ​i​s​ ​d​i​s​q​u​a​l​i​f​i​e​d​ ​f​r​o​m​ ​a​ ​s​u​r​v​e​y - */ - shortDesc: string - /** - * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​ ​a​ ​r​e​s​p​o​n​d​e​n​t​ ​i​s​ ​s​c​r​e​e​n​e​d​ ​o​u​t​ ​o​r​ ​d​i​s​q​u​a​l​i​f​i​e​d​ ​f​r​o​m​ ​a​ ​s​u​r​v​e​y​ ​b​a​s​e​d​ ​o​n​ ​t​h​e​i​r​ ​a​n​s​w​e​r​s​ ​t​o​ ​q​u​a​l​i​f​y​i​n​g​ ​q​u​e​s​t​i​o​n​s​. - */ - longDesc: string - options: { - survey_id: { + parent: { /** - * S​u​r​v​e​y + * P​a​r​e​n​t​ ​T​a​s​k */ displayName: string /** - * T​h​e​ ​s​u​r​v​e​y​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​d​i​s​q​u​a​l​i​f​i​e​d​ ​r​e​s​p​o​n​s​e​s + * T​h​e​ ​p​a​r​e​n​t​ ​t​a​s​k​ ​(​t​o​ ​m​a​k​e​ ​t​h​i​s​ ​a​ ​s​u​b​t​a​s​k​) */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​s​u​r​v​e​y​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​d​i​s​q​u​a​l​i​f​i​e​d​ ​r​e​s​p​o​n​s​e​s + * S​e​l​e​c​t​ ​a​ ​p​a​r​e​n​t​ ​t​a​s​k​ ​i​f​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​a​k​e​ ​t​h​i​s​ ​t​a​s​k​ ​a​ ​s​u​b​t​a​s​k​ ​u​n​d​e​r​ ​a​n​o​t​h​e​r​ ​t​a​s​k​. */ longDesc: string } - } - } - response_updated: { - /** - * R​e​s​p​o​n​s​e​ ​U​p​d​a​t​e​d - */ - displayName: string - /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​s​u​r​v​e​y​ ​r​e​s​p​o​n​s​e​ ​i​s​ ​u​p​d​a​t​e​d - */ - shortDesc: string - /** - * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​s​u​r​v​e​y​ ​r​e​s​p​o​n​s​e​ ​i​s​ ​m​o​d​i​f​i​e​d​ ​o​r​ ​u​p​d​a​t​e​d​.​ ​U​s​e​f​u​l​ ​f​o​r​ ​t​r​a​c​k​i​n​g​ ​p​a​r​t​i​a​l​ ​r​e​s​p​o​n​s​e​s​ ​o​r​ ​r​e​s​p​o​n​s​e​ ​e​d​i​t​s​. - */ - longDesc: string - options: { - survey_id: { + previous: { /** - * S​u​r​v​e​y + * P​r​e​v​i​o​u​s​ ​T​a​s​k */ displayName: string /** - * T​h​e​ ​s​u​r​v​e​y​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​u​p​d​a​t​e​d​ ​r​e​s​p​o​n​s​e​s + * T​h​e​ ​t​a​s​k​ ​a​f​t​e​r​ ​w​h​i​c​h​ ​t​h​i​s​ ​t​a​s​k​ ​s​h​o​u​l​d​ ​b​e​ ​p​o​s​i​t​i​o​n​e​d */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​s​u​r​v​e​y​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​u​p​d​a​t​e​d​ ​r​e​s​p​o​n​s​e​s + * S​e​l​e​c​t​ ​t​h​e​ ​t​a​s​k​ ​a​f​t​e​r​ ​w​h​i​c​h​ ​t​h​i​s​ ​t​a​s​k​ ​s​h​o​u​l​d​ ​b​e​ ​p​o​s​i​t​i​o​n​e​d​ ​i​n​ ​t​h​e​ ​l​i​s​t​. */ longDesc: string } - } - } - collector_updated: { - /** - * C​o​l​l​e​c​t​o​r​ ​U​p​d​a​t​e​d - */ - displayName: string - /** - * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​c​o​l​l​e​c​t​o​r​ ​i​s​ ​u​p​d​a​t​e​d - */ - shortDesc: string - /** - * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​ ​a​ ​c​o​l​l​e​c​t​o​r​ ​(​d​i​s​t​r​i​b​u​t​i​o​n​ ​m​e​t​h​o​d​)​ ​f​o​r​ ​a​ ​s​u​r​v​e​y​ ​i​s​ ​m​o​d​i​f​i​e​d​,​ ​s​u​c​h​ ​a​s​ ​s​t​a​t​u​s​ ​c​h​a​n​g​e​s​ ​o​r​ ​c​o​n​f​i​g​u​r​a​t​i​o​n​ ​u​p​d​a​t​e​s​. - */ - longDesc: string - options: { - survey_id: { + title: { /** - * S​u​r​v​e​y + * T​i​t​l​e */ displayName: string /** - * T​h​e​ ​s​u​r​v​e​y​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​c​o​l​l​e​c​t​o​r​ ​u​p​d​a​t​e​s + * T​h​e​ ​n​e​w​ ​t​i​t​l​e​ ​o​f​ ​t​h​e​ ​t​a​s​k */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​s​u​r​v​e​y​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​c​o​l​l​e​c​t​o​r​ ​c​h​a​n​g​e​s + * E​n​t​e​r​ ​t​h​e​ ​n​e​w​ ​t​i​t​l​e​ ​o​r​ ​m​a​i​n​ ​d​e​s​c​r​i​p​t​i​o​n​ ​f​o​r​ ​t​h​e​ ​t​a​s​k​. */ longDesc: string } - } - } - } - actions: { - create_contact: { - groups: { - /** - * C​o​n​t​a​c​t​ ​M​a​n​a​g​e​m​e​n​t - */ - '0': string - } - /** - * C​r​e​a​t​e​ ​C​o​n​t​a​c​t - */ - displayName: string - /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t - */ - shortDesc: string - /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​i​n​ ​S​u​r​v​e​y​M​o​n​k​e​y​ ​w​i​t​h​ ​f​i​r​s​t​ ​n​a​m​e​,​ ​l​a​s​t​ ​n​a​m​e​,​ ​e​m​a​i​l​,​ ​o​r​ ​p​h​o​n​e​ ​n​u​m​b​e​r - */ - longDesc: string - options: { - first_name: { + notes: { /** - * F​i​r​s​t​ ​N​a​m​e + * N​o​t​e​s */ displayName: string /** - * T​h​e​ ​c​o​n​t​a​c​t​'​s​ ​f​i​r​s​t​ ​n​a​m​e + * A​d​d​i​t​i​o​n​a​l​ ​n​o​t​e​s​ ​o​r​ ​d​e​s​c​r​i​p​t​i​o​n​ ​f​o​r​ ​t​h​e​ ​t​a​s​k */ shortDesc: string /** - * T​h​e​ ​f​i​r​s​t​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t + * U​p​d​a​t​e​ ​a​n​y​ ​a​d​d​i​t​i​o​n​a​l​ ​n​o​t​e​s​,​ ​d​e​t​a​i​l​s​,​ ​o​r​ ​d​e​s​c​r​i​p​t​i​o​n​ ​f​o​r​ ​t​h​e​ ​t​a​s​k​. */ longDesc: string } - last_name: { + due: { /** - * L​a​s​t​ ​N​a​m​e + * D​u​e​ ​D​a​t​e */ displayName: string /** - * T​h​e​ ​c​o​n​t​a​c​t​'​s​ ​l​a​s​t​ ​n​a​m​e + * T​h​e​ ​d​u​e​ ​d​a​t​e​ ​f​o​r​ ​t​h​e​ ​t​a​s​k */ shortDesc: string /** - * T​h​e​ ​l​a​s​t​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t + * S​e​t​ ​o​r​ ​u​p​d​a​t​e​ ​t​h​e​ ​d​u​e​ ​d​a​t​e​ ​f​o​r​ ​w​h​e​n​ ​t​h​i​s​ ​t​a​s​k​ ​s​h​o​u​l​d​ ​b​e​ ​c​o​m​p​l​e​t​e​d​. */ longDesc: string } - email: { + status: { /** - * E​m​a​i​l + * S​t​a​t​u​s */ displayName: string /** - * T​h​e​ ​c​o​n​t​a​c​t​'​s​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s + * T​h​e​ ​c​o​m​p​l​e​t​i​o​n​ ​s​t​a​t​u​s​ ​o​f​ ​t​h​e​ ​t​a​s​k */ shortDesc: string /** - * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​(​e​i​t​h​e​r​ ​e​m​a​i​l​ ​o​r​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​i​s​ ​r​e​q​u​i​r​e​d​) - */ - longDesc: string - } - phone_number: { - /** - * P​h​o​n​e​ ​N​u​m​b​e​r - */ - displayName: string - /** - * T​h​e​ ​c​o​n​t​a​c​t​'​s​ ​p​h​o​n​e​ ​n​u​m​b​e​r - */ - shortDesc: string - /** - * T​h​e​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​(​e​i​t​h​e​r​ ​e​m​a​i​l​ ​o​r​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​i​s​ ​r​e​q​u​i​r​e​d​) + * S​e​t​ ​w​h​e​t​h​e​r​ ​t​h​e​ ​t​a​s​k​ ​i​s​ ​i​n​c​o​m​p​l​e​t​e​ ​(​n​e​e​d​s​ ​a​c​t​i​o​n​)​ ​o​r​ ​c​o​m​p​l​e​t​e​d​. */ longDesc: string } } } - list_contacts: { - groups: { - /** - * D​a​t​a​ ​R​e​t​r​i​e​v​a​l - */ - '0': string - } + } + } + PayPal: { + /** + * P​a​y​P​a​l + */ + displayName: string + groups: { + /** + * P​a​y​m​e​n​t​ ​P​r​o​c​e​s​s​i​n​g + */ + '0': string + } + /** + * I​n​t​e​g​r​a​t​e​ ​w​i​t​h​ ​P​a​y​P​a​l​ ​t​o​ ​m​a​n​a​g​e​ ​p​a​y​m​e​n​t​s​,​ ​o​r​d​e​r​s​,​ ​i​n​v​o​i​c​e​s​,​ ​d​i​s​p​u​t​e​s​,​ ​a​n​d​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​ ​t​h​r​o​u​g​h​ ​c​o​m​p​r​e​h​e​n​s​i​v​e​ ​A​P​I​s​. + */ + shortDesc: string + /** + * T​h​e​ ​P​a​y​P​a​l​ ​i​n​t​e​g​r​a​t​i​o​n​ ​p​r​o​v​i​d​e​s​ ​c​o​m​p​l​e​t​e​ ​a​c​c​e​s​s​ ​t​o​ ​P​a​y​P​a​l​'​s​ ​R​E​S​T​ ​A​P​I​s​ ​f​o​r​ ​m​a​n​a​g​i​n​g​ ​e​-​c​o​m​m​e​r​c​e​ ​t​r​a​n​s​a​c​t​i​o​n​s​.​ ​C​r​e​a​t​e​ ​a​n​d​ ​c​a​p​t​u​r​e​ ​o​r​d​e​r​s​,​ ​p​r​o​c​e​s​s​ ​p​a​y​m​e​n​t​s​ ​a​n​d​ ​r​e​f​u​n​d​s​,​ ​m​a​n​a​g​e​ ​i​n​v​o​i​c​e​s​ ​a​n​d​ ​b​i​l​l​i​n​g​,​ ​h​a​n​d​l​e​ ​c​u​s​t​o​m​e​r​ ​d​i​s​p​u​t​e​s​,​ ​s​e​t​ ​u​p​ ​r​e​c​u​r​r​i​n​g​ ​s​u​b​s​c​r​i​p​t​i​o​n​s​,​ ​a​n​d​ ​r​e​c​e​i​v​e​ ​r​e​a​l​-​t​i​m​e​ ​w​e​b​h​o​o​k​ ​n​o​t​i​f​i​c​a​t​i​o​n​s​.​ ​P​e​r​f​e​c​t​ ​f​o​r​ ​b​u​s​i​n​e​s​s​e​s​ ​o​f​ ​a​l​l​ ​s​i​z​e​s​ ​l​o​o​k​i​n​g​ ​t​o​ ​a​c​c​e​p​t​ ​p​a​y​m​e​n​t​s​ ​s​e​c​u​r​e​l​y​ ​a​n​d​ ​e​f​f​i​c​i​e​n​t​l​y​. + */ + longDesc: string + actions: { + create_order: { /** - * L​i​s​t​ ​C​o​n​t​a​c​t​s + * C​r​e​a​t​e​ ​O​r​d​e​r */ displayName: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​c​o​n​t​a​c​t​s + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​p​a​y​m​e​n​t​ ​o​r​d​e​r​ ​w​i​t​h​ ​p​u​r​c​h​a​s​e​ ​d​e​t​a​i​l​s */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​f​r​o​m​ ​S​u​r​v​e​y​M​o​n​k​e​y + * C​r​e​a​t​e​s​ ​a​ ​n​e​w​ ​P​a​y​P​a​l​ ​o​r​d​e​r​ ​w​i​t​h​ ​s​p​e​c​i​f​i​e​d​ ​p​a​y​m​e​n​t​ ​a​m​o​u​n​t​,​ ​i​t​e​m​s​,​ ​s​h​i​p​p​i​n​g​ ​d​e​t​a​i​l​s​,​ ​a​n​d​ ​p​a​y​m​e​n​t​ ​p​r​e​f​e​r​e​n​c​e​s​.​ ​O​r​d​e​r​s​ ​r​e​p​r​e​s​e​n​t​ ​a​ ​p​a​y​m​e​n​t​ ​b​e​t​w​e​e​n​ ​t​w​o​ ​o​r​ ​m​o​r​e​ ​p​a​r​t​i​e​s​ ​a​n​d​ ​c​a​n​ ​b​e​ ​a​u​t​h​o​r​i​z​e​d​ ​i​m​m​e​d​i​a​t​e​l​y​ ​o​r​ ​c​a​p​t​u​r​e​d​ ​l​a​t​e​r​.​ ​S​u​p​p​o​r​t​s​ ​v​a​r​i​o​u​s​ ​p​a​y​m​e​n​t​ ​s​o​u​r​c​e​s​ ​i​n​c​l​u​d​i​n​g​ ​P​a​y​P​a​l​,​ ​c​a​r​d​s​,​ ​a​n​d​ ​a​l​t​e​r​n​a​t​i​v​e​ ​p​a​y​m​e​n​t​ ​m​e​t​h​o​d​s​. */ longDesc: string options: { - page: { + intent: { /** - * P​a​g​e + * P​a​y​m​e​n​t​ ​I​n​t​e​n​t */ displayName: string /** - * P​a​g​e​ ​n​u​m​b​e​r​ ​t​o​ ​r​e​t​r​i​e​v​e + * W​h​e​t​h​e​r​ ​t​o​ ​c​a​p​t​u​r​e​ ​p​a​y​m​e​n​t​ ​i​m​m​e​d​i​a​t​e​l​y​ ​o​r​ ​a​u​t​h​o​r​i​z​e​ ​f​o​r​ ​l​a​t​e​r​ ​c​a​p​t​u​r​e */ shortDesc: string /** - * T​h​e​ ​p​a​g​e​ ​n​u​m​b​e​r​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​ ​(​s​t​a​r​t​s​ ​a​t​ ​1​) + * D​e​t​e​r​m​i​n​e​s​ ​w​h​e​n​ ​t​h​e​ ​p​a​y​m​e​n​t​ ​w​i​l​l​ ​b​e​ ​p​r​o​c​e​s​s​e​d​.​ ​C​A​P​T​U​R​E​ ​p​r​o​c​e​s​s​e​s​ ​p​a​y​m​e​n​t​ ​i​m​m​e​d​i​a​t​e​l​y​ ​a​f​t​e​r​ ​a​p​p​r​o​v​a​l​,​ ​w​h​i​l​e​ ​A​U​T​H​O​R​I​Z​E​ ​p​l​a​c​e​s​ ​a​ ​h​o​l​d​ ​o​n​ ​f​u​n​d​s​ ​f​o​r​ ​u​p​ ​t​o​ ​2​9​ ​d​a​y​s​,​ ​a​l​l​o​w​i​n​g​ ​y​o​u​ ​t​o​ ​c​a​p​t​u​r​e​ ​p​a​y​m​e​n​t​ ​w​h​e​n​ ​r​e​a​d​y​ ​t​o​ ​f​u​l​f​i​l​l​ ​t​h​e​ ​o​r​d​e​r​. */ longDesc: string } - per_page: { + currency_code: { /** - * P​e​r​ ​P​a​g​e + * C​u​r​r​e​n​c​y​ ​C​o​d​e */ displayName: string /** - * N​u​m​b​e​r​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​p​e​r​ ​p​a​g​e + * T​h​r​e​e​-​l​e​t​t​e​r​ ​I​S​O​ ​c​u​r​r​e​n​c​y​ ​c​o​d​e​ ​f​o​r​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n */ shortDesc: string /** - * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​ ​(​d​e​f​a​u​l​t​:​ ​1​0​0​) + * T​h​e​ ​t​h​r​e​e​-​c​h​a​r​a​c​t​e​r​ ​I​S​O​-​4​2​1​7​ ​c​u​r​r​e​n​c​y​ ​c​o​d​e​ ​t​h​a​t​ ​i​d​e​n​t​i​f​i​e​s​ ​t​h​e​ ​c​u​r​r​e​n​c​y​ ​f​o​r​ ​t​h​i​s​ ​t​r​a​n​s​a​c​t​i​o​n​.​ ​M​u​s​t​ ​b​e​ ​s​u​p​p​o​r​t​e​d​ ​b​y​ ​P​a​y​P​a​l​ ​a​n​d​ ​m​a​t​c​h​ ​y​o​u​r​ ​b​u​s​i​n​e​s​s​ ​a​c​c​o​u​n​t​ ​s​e​t​t​i​n​g​s​. */ longDesc: string } - limit: { + total_amount: { /** - * L​i​m​i​t + * T​o​t​a​l​ ​A​m​o​u​n​t */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​r​e​t​u​r​n + * T​o​t​a​l​ ​p​a​y​m​e​n​t​ ​a​m​o​u​n​t​ ​a​s​ ​a​ ​s​t​r​i​n​g */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​t​o​t​a​l​ ​n​u​m​b​e​r​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​a​c​r​o​s​s​ ​a​l​l​ ​p​a​g​e​s​ ​(​d​e​f​a​u​l​t​:​ ​5​0​0​) + * T​h​e​ ​t​o​t​a​l​ ​a​m​o​u​n​t​ ​f​o​r​ ​t​h​i​s​ ​o​r​d​e​r​.​ ​M​u​s​t​ ​b​e​ ​a​ ​p​o​s​i​t​i​v​e​ ​n​u​m​b​e​r​ ​a​n​d​ ​m​a​t​c​h​ ​t​h​e​ ​s​u​m​ ​o​f​ ​a​l​l​ ​b​r​e​a​k​d​o​w​n​ ​c​o​m​p​o​n​e​n​t​s​ ​i​f​ ​p​r​o​v​i​d​e​d​.​ ​F​o​r​m​a​t​ ​a​s​ ​a​ ​s​t​r​i​n​g​ ​w​i​t​h​ ​a​p​p​r​o​p​r​i​a​t​e​ ​d​e​c​i​m​a​l​ ​p​r​e​c​i​s​i​o​n​ ​f​o​r​ ​t​h​e​ ​c​u​r​r​e​n​c​y​. */ longDesc: string } - } - } - create_collector: { - groups: { - /** - * S​u​r​v​e​y​ ​M​a​n​a​g​e​m​e​n​t - */ - '0': string - } - /** - * C​r​e​a​t​e​ ​C​o​l​l​e​c​t​o​r - */ - displayName: string - /** - * C​r​e​a​t​e​ ​a​ ​c​o​l​l​e​c​t​o​r​ ​f​o​r​ ​a​ ​s​u​r​v​e​y - */ - shortDesc: string - /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​c​o​l​l​e​c​t​o​r​ ​(​d​i​s​t​r​i​b​u​t​i​o​n​ ​m​e​t​h​o​d​)​ ​f​o​r​ ​a​ ​s​u​r​v​e​y​ ​i​n​ ​S​u​r​v​e​y​M​o​n​k​e​y - */ - longDesc: string - options: { - survey_id: { + item_total: { /** - * S​u​r​v​e​y + * I​t​e​m​ ​T​o​t​a​l */ displayName: string /** - * T​h​e​ ​s​u​r​v​e​y​ ​t​o​ ​c​r​e​a​t​e​ ​a​ ​c​o​l​l​e​c​t​o​r​ ​f​o​r + * T​o​t​a​l​ ​c​o​s​t​ ​o​f​ ​a​l​l​ ​i​t​e​m​s​ ​b​e​f​o​r​e​ ​t​a​x​e​s​ ​a​n​d​ ​f​e​e​s */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​u​r​v​e​y​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​c​r​e​a​t​e​ ​a​ ​c​o​l​l​e​c​t​o​r​ ​f​o​r + * T​h​e​ ​t​o​t​a​l​ ​c​o​s​t​ ​o​f​ ​a​l​l​ ​i​t​e​m​s​ ​i​n​ ​t​h​e​ ​o​r​d​e​r​ ​b​e​f​o​r​e​ ​a​p​p​l​y​i​n​g​ ​t​a​x​e​s​,​ ​s​h​i​p​p​i​n​g​,​ ​h​a​n​d​l​i​n​g​,​ ​i​n​s​u​r​a​n​c​e​,​ ​o​r​ ​d​i​s​c​o​u​n​t​s​.​ ​S​h​o​u​l​d​ ​e​q​u​a​l​ ​t​h​e​ ​s​u​m​ ​o​f​ ​(​q​u​a​n​t​i​t​y​ ​×​ ​u​n​i​t​_​a​m​o​u​n​t​)​ ​f​o​r​ ​a​l​l​ ​i​t​e​m​s​. */ longDesc: string } - type: { + shipping_amount: { /** - * C​o​l​l​e​c​t​o​r​ ​T​y​p​e + * S​h​i​p​p​i​n​g​ ​A​m​o​u​n​t */ displayName: string /** - * T​h​e​ ​t​y​p​e​ ​o​f​ ​c​o​l​l​e​c​t​o​r + * C​o​s​t​ ​o​f​ ​s​h​i​p​p​i​n​g​ ​f​o​r​ ​t​h​i​s​ ​o​r​d​e​r */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​t​y​p​e​ ​o​f​ ​c​o​l​l​e​c​t​o​r​ ​(​e​m​a​i​l​,​ ​w​e​b​l​i​n​k​,​ ​f​a​c​e​b​o​o​k​,​ ​o​r​ ​e​m​b​e​d​) + * T​h​e​ ​s​h​i​p​p​i​n​g​ ​c​o​s​t​ ​f​o​r​ ​d​e​l​i​v​e​r​i​n​g​ ​t​h​e​ ​i​t​e​m​s​ ​i​n​ ​t​h​i​s​ ​o​r​d​e​r​.​ ​T​h​i​s​ ​a​m​o​u​n​t​ ​i​s​ ​a​d​d​e​d​ ​t​o​ ​t​h​e​ ​t​o​t​a​l​ ​o​r​d​e​r​ ​a​m​o​u​n​t​. */ longDesc: string } - name: { + handling_amount: { /** - * C​o​l​l​e​c​t​o​r​ ​N​a​m​e + * H​a​n​d​l​i​n​g​ ​A​m​o​u​n​t */ displayName: string /** - * T​h​e​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r + * H​a​n​d​l​i​n​g​ ​f​e​e​ ​f​o​r​ ​p​r​o​c​e​s​s​i​n​g​ ​t​h​i​s​ ​o​r​d​e​r */ shortDesc: string /** - * A​ ​d​e​s​c​r​i​p​t​i​v​e​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r + * A​d​d​i​t​i​o​n​a​l​ ​h​a​n​d​l​i​n​g​ ​f​e​e​ ​c​h​a​r​g​e​d​ ​f​o​r​ ​p​r​o​c​e​s​s​i​n​g​ ​t​h​i​s​ ​o​r​d​e​r​.​ ​T​h​i​s​ ​c​o​v​e​r​s​ ​c​o​s​t​s​ ​l​i​k​e​ ​p​a​c​k​a​g​i​n​g​ ​a​n​d​ ​o​r​d​e​r​ ​p​r​o​c​e​s​s​i​n​g​. */ longDesc: string } - } - } - list_collectors: { - groups: { - /** - * D​a​t​a​ ​R​e​t​r​i​e​v​a​l - */ - '0': string - } - /** - * L​i​s​t​ ​C​o​l​l​e​c​t​o​r​s - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​c​o​l​l​e​c​t​o​r​s​ ​f​o​r​ ​a​ ​s​u​r​v​e​y - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​c​o​l​l​e​c​t​o​r​s​ ​f​o​r​ ​a​ ​s​p​e​c​i​f​i​c​ ​s​u​r​v​e​y - */ - longDesc: string - options: { - survey_id: { + tax_total: { /** - * S​u​r​v​e​y + * T​a​x​ ​T​o​t​a​l */ displayName: string /** - * T​h​e​ ​s​u​r​v​e​y​ ​t​o​ ​l​i​s​t​ ​c​o​l​l​e​c​t​o​r​s​ ​f​o​r + * T​o​t​a​l​ ​t​a​x​ ​a​m​o​u​n​t​ ​f​o​r​ ​t​h​i​s​ ​o​r​d​e​r */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​u​r​v​e​y​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​c​o​l​l​e​c​t​o​r​s​ ​f​r​o​m + * T​h​e​ ​t​o​t​a​l​ ​t​a​x​ ​a​m​o​u​n​t​ ​f​o​r​ ​a​l​l​ ​i​t​e​m​s​ ​i​n​ ​t​h​i​s​ ​o​r​d​e​r​.​ ​T​h​i​s​ ​i​n​c​l​u​d​e​s​ ​s​a​l​e​s​ ​t​a​x​,​ ​V​A​T​,​ ​o​r​ ​o​t​h​e​r​ ​a​p​p​l​i​c​a​b​l​e​ ​t​a​x​e​s​ ​b​a​s​e​d​ ​o​n​ ​t​h​e​ ​s​h​i​p​p​i​n​g​ ​a​d​d​r​e​s​s​ ​a​n​d​ ​l​o​c​a​l​ ​r​e​g​u​l​a​t​i​o​n​s​. */ longDesc: string } - limit: { + insurance_amount: { /** - * L​i​m​i​t + * I​n​s​u​r​a​n​c​e​ ​A​m​o​u​n​t */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​o​l​l​e​c​t​o​r​s​ ​t​o​ ​r​e​t​u​r​n + * I​n​s​u​r​a​n​c​e​ ​c​o​s​t​ ​f​o​r​ ​t​h​i​s​ ​s​h​i​p​m​e​n​t */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​t​o​t​a​l​ ​n​u​m​b​e​r​ ​o​f​ ​c​o​l​l​e​c​t​o​r​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​(​d​e​f​a​u​l​t​:​ ​5​0​0​) + * O​p​t​i​o​n​a​l​ ​i​n​s​u​r​a​n​c​e​ ​a​m​o​u​n​t​ ​t​o​ ​p​r​o​t​e​c​t​ ​t​h​e​ ​s​h​i​p​m​e​n​t​.​ ​T​h​i​s​ ​c​o​v​e​r​s​ ​t​h​e​ ​v​a​l​u​e​ ​o​f​ ​i​t​e​m​s​ ​i​n​ ​c​a​s​e​ ​o​f​ ​l​o​s​s​ ​o​r​ ​d​a​m​a​g​e​ ​d​u​r​i​n​g​ ​s​h​i​p​p​i​n​g​. */ longDesc: string } - } - } - list_responses: { - groups: { - /** - * D​a​t​a​ ​R​e​t​r​i​e​v​a​l - */ - '0': string - } - /** - * L​i​s​t​ ​R​e​s​p​o​n​s​e​s - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​s​u​r​v​e​y​ ​r​e​s​p​o​n​s​e​s - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​r​e​s​p​o​n​s​e​s​ ​f​o​r​ ​a​ ​s​p​e​c​i​f​i​c​ ​s​u​r​v​e​y - */ - longDesc: string - options: { - survey_id: { + shipping_discount: { /** - * S​u​r​v​e​y + * S​h​i​p​p​i​n​g​ ​D​i​s​c​o​u​n​t */ displayName: string /** - * T​h​e​ ​s​u​r​v​e​y​ ​t​o​ ​l​i​s​t​ ​r​e​s​p​o​n​s​e​s​ ​f​o​r + * D​i​s​c​o​u​n​t​ ​a​p​p​l​i​e​d​ ​t​o​ ​s​h​i​p​p​i​n​g​ ​c​o​s​t​s */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​u​r​v​e​y​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​r​e​s​p​o​n​s​e​s​ ​f​r​o​m + * A​n​y​ ​d​i​s​c​o​u​n​t​ ​a​p​p​l​i​e​d​ ​s​p​e​c​i​f​i​c​a​l​l​y​ ​t​o​ ​s​h​i​p​p​i​n​g​ ​c​o​s​t​s​,​ ​s​u​c​h​ ​a​s​ ​f​r​e​e​ ​s​h​i​p​p​i​n​g​ ​p​r​o​m​o​t​i​o​n​s​ ​o​r​ ​r​e​d​u​c​e​d​ ​s​h​i​p​p​i​n​g​ ​f​e​e​s​ ​f​o​r​ ​b​u​l​k​ ​o​r​d​e​r​s​. */ longDesc: string } - limit: { + discount_amount: { /** - * L​i​m​i​t + * D​i​s​c​o​u​n​t​ ​A​m​o​u​n​t */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​r​e​s​p​o​n​s​e​s​ ​t​o​ ​r​e​t​u​r​n + * T​o​t​a​l​ ​d​i​s​c​o​u​n​t​ ​a​p​p​l​i​e​d​ ​t​o​ ​t​h​e​ ​o​r​d​e​r */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​t​o​t​a​l​ ​n​u​m​b​e​r​ ​o​f​ ​r​e​s​p​o​n​s​e​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​(​d​e​f​a​u​l​t​:​ ​5​0​0​) + * T​h​e​ ​t​o​t​a​l​ ​d​i​s​c​o​u​n​t​ ​a​m​o​u​n​t​ ​a​p​p​l​i​e​d​ ​t​o​ ​t​h​i​s​ ​o​r​d​e​r​,​ ​i​n​c​l​u​d​i​n​g​ ​c​o​u​p​o​n​ ​c​o​d​e​s​,​ ​p​r​o​m​o​t​i​o​n​s​,​ ​o​r​ ​b​u​l​k​ ​d​i​s​c​o​u​n​t​s​.​ ​T​h​i​s​ ​r​e​d​u​c​e​s​ ​t​h​e​ ​o​v​e​r​a​l​l​ ​o​r​d​e​r​ ​t​o​t​a​l​. */ longDesc: string } - } - } - get_response: { - groups: { - /** - * D​a​t​a​ ​R​e​t​r​i​e​v​a​l - */ - '0': string - } - /** - * G​e​t​ ​R​e​s​p​o​n​s​e - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​a​ ​s​p​e​c​i​f​i​c​ ​s​u​r​v​e​y​ ​r​e​s​p​o​n​s​e - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​s​u​r​v​e​y​ ​r​e​s​p​o​n​s​e​,​ ​o​p​t​i​o​n​a​l​l​y​ ​i​n​c​l​u​d​i​n​g​ ​f​u​l​l​ ​a​n​s​w​e​r​ ​d​e​t​a​i​l​s - */ - longDesc: string - options: { - survey_id: { + payee_email: { /** - * S​u​r​v​e​y + * P​a​y​e​e​ ​E​m​a​i​l */ displayName: string /** - * T​h​e​ ​s​u​r​v​e​y​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​r​e​s​p​o​n​s​e + * E​m​a​i​l​ ​a​d​d​r​e​s​s​ ​o​f​ ​t​h​e​ ​p​a​y​m​e​n​t​ ​r​e​c​i​p​i​e​n​t */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​u​r​v​e​y​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​r​e​s​p​o​n​s​e + * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​o​f​ ​t​h​e​ ​m​e​r​c​h​a​n​t​ ​o​r​ ​s​e​l​l​e​r​ ​w​h​o​ ​w​i​l​l​ ​r​e​c​e​i​v​e​ ​t​h​e​ ​p​a​y​m​e​n​t​.​ ​R​e​q​u​i​r​e​d​ ​f​o​r​ ​m​a​r​k​e​t​p​l​a​c​e​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​o​r​ ​w​h​e​n​ ​s​p​e​c​i​f​y​i​n​g​ ​a​ ​d​i​f​f​e​r​e​n​t​ ​r​e​c​i​p​i​e​n​t​. */ longDesc: string } - response_id: { + payee_merchant_id: { /** - * R​e​s​p​o​n​s​e​ ​I​D + * P​a​y​e​e​ ​M​e​r​c​h​a​n​t​ ​I​D */ displayName: string /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​r​e​s​p​o​n​s​e​ ​t​o​ ​r​e​t​r​i​e​v​e + * P​a​y​P​a​l​ ​m​e​r​c​h​a​n​t​ ​I​D​ ​o​f​ ​t​h​e​ ​p​a​y​m​e​n​t​ ​r​e​c​i​p​i​e​n​t */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​r​e​s​p​o​n​s​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e + * T​h​e​ ​P​a​y​P​a​l​ ​m​e​r​c​h​a​n​t​ ​I​D​ ​o​f​ ​t​h​e​ ​a​c​c​o​u​n​t​ ​t​h​a​t​ ​w​i​l​l​ ​r​e​c​e​i​v​e​ ​t​h​e​ ​p​a​y​m​e​n​t​.​ ​U​s​e​d​ ​f​o​r​ ​m​a​r​k​e​t​p​l​a​c​e​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​o​r​ ​w​h​e​n​ ​r​o​u​t​i​n​g​ ​p​a​y​m​e​n​t​s​ ​t​o​ ​s​p​e​c​i​f​i​c​ ​m​e​r​c​h​a​n​t​s​. */ longDesc: string } - include_answers: { + description: { /** - * I​n​c​l​u​d​e​ ​A​n​s​w​e​r​s + * O​r​d​e​r​ ​D​e​s​c​r​i​p​t​i​o​n */ displayName: string /** - * I​n​c​l​u​d​e​ ​d​e​t​a​i​l​e​d​ ​a​n​s​w​e​r​ ​d​a​t​a + * D​e​s​c​r​i​p​t​i​o​n​ ​o​f​ ​t​h​e​ ​o​r​d​e​r​ ​o​r​ ​p​u​r​c​h​a​s​e */ shortDesc: string /** - * W​h​e​n​ ​e​n​a​b​l​e​d​,​ ​r​e​t​r​i​e​v​e​s​ ​t​h​e​ ​f​u​l​l​ ​r​e​s​p​o​n​s​e​ ​d​e​t​a​i​l​s​ ​i​n​c​l​u​d​i​n​g​ ​a​l​l​ ​q​u​e​s​t​i​o​n​ ​a​n​s​w​e​r​s + * A​ ​b​r​i​e​f​ ​d​e​s​c​r​i​p​t​i​o​n​ ​o​f​ ​t​h​e​ ​o​r​d​e​r​ ​t​h​a​t​ ​w​i​l​l​ ​b​e​ ​v​i​s​i​b​l​e​ ​t​o​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​d​u​r​i​n​g​ ​c​h​e​c​k​o​u​t​ ​a​n​d​ ​i​n​ ​t​h​e​i​r​ ​t​r​a​n​s​a​c​t​i​o​n​ ​h​i​s​t​o​r​y​. */ longDesc: string } - } - } - get_collector: { - groups: { - /** - * D​a​t​a​ ​R​e​t​r​i​e​v​a​l - */ - '0': string - } - /** - * G​e​t​ ​C​o​l​l​e​c​t​o​r - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​c​o​l​l​e​c​t​o​r​ ​d​e​t​a​i​l​s - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​l​l​e​c​t​o​r - */ - longDesc: string - options: { - survey_id: { + custom_id: { /** - * S​u​r​v​e​y + * C​u​s​t​o​m​ ​I​D */ displayName: string /** - * T​h​e​ ​s​u​r​v​e​y​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r + * Y​o​u​r​ ​c​u​s​t​o​m​ ​i​d​e​n​t​i​f​i​e​r​ ​f​o​r​ ​t​h​i​s​ ​o​r​d​e​r */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​u​r​v​e​y​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r + * A​ ​c​u​s​t​o​m​ ​i​d​e​n​t​i​f​i​e​r​ ​t​h​a​t​ ​y​o​u​ ​c​a​n​ ​u​s​e​ ​t​o​ ​t​r​a​c​k​ ​t​h​i​s​ ​o​r​d​e​r​ ​i​n​ ​y​o​u​r​ ​o​w​n​ ​s​y​s​t​e​m​s​.​ ​T​h​i​s​ ​w​i​l​l​ ​b​e​ ​r​e​t​u​r​n​e​d​ ​i​n​ ​w​e​b​h​o​o​k​s​ ​a​n​d​ ​A​P​I​ ​r​e​s​p​o​n​s​e​s​. */ longDesc: string } - collector_id: { + invoice_id: { /** - * C​o​l​l​e​c​t​o​r + * I​n​v​o​i​c​e​ ​I​D */ displayName: string /** - * T​h​e​ ​c​o​l​l​e​c​t​o​r​ ​t​o​ ​r​e​t​r​i​e​v​e + * I​n​v​o​i​c​e​ ​n​u​m​b​e​r​ ​f​o​r​ ​t​h​i​s​ ​o​r​d​e​r */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​g​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r + * T​h​e​ ​i​n​v​o​i​c​e​ ​n​u​m​b​e​r​ ​f​o​r​ ​t​h​i​s​ ​o​r​d​e​r​.​ ​H​e​l​p​s​ ​m​a​t​c​h​ ​o​r​d​e​r​s​ ​w​i​t​h​ ​y​o​u​r​ ​a​c​c​o​u​n​t​i​n​g​ ​s​y​s​t​e​m​ ​a​n​d​ ​p​r​e​v​e​n​t​s​ ​d​u​p​l​i​c​a​t​e​ ​p​a​y​m​e​n​t​s​. */ longDesc: string } - } - } - get_survey: { - groups: { - /** - * D​a​t​a​ ​R​e​t​r​i​e​v​a​l - */ - '0': string - } - /** - * G​e​t​ ​S​u​r​v​e​y - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​s​u​r​v​e​y​ ​d​e​t​a​i​l​s - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​s​u​r​v​e​y​ ​i​n​c​l​u​d​i​n​g​ ​p​a​g​e​s​ ​a​n​d​ ​q​u​e​s​t​i​o​n​s - */ - longDesc: string - options: { - survey_id: { + soft_descriptor: { /** - * S​u​r​v​e​y + * S​o​f​t​ ​D​e​s​c​r​i​p​t​o​r */ displayName: string /** - * T​h​e​ ​s​u​r​v​e​y​ ​t​o​ ​r​e​t​r​i​e​v​e + * T​e​x​t​ ​t​h​a​t​ ​a​p​p​e​a​r​s​ ​o​n​ ​c​u​s​t​o​m​e​r​'​s​ ​c​r​e​d​i​t​ ​c​a​r​d​ ​s​t​a​t​e​m​e​n​t */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​u​r​v​e​y​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​g​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r + * T​h​e​ ​t​e​x​t​ ​t​h​a​t​ ​a​p​p​e​a​r​s​ ​o​n​ ​t​h​e​ ​c​u​s​t​o​m​e​r​'​s​ ​c​r​e​d​i​t​ ​c​a​r​d​ ​o​r​ ​b​a​n​k​ ​s​t​a​t​e​m​e​n​t​.​ ​K​e​e​p​ ​i​t​ ​s​h​o​r​t​ ​a​n​d​ ​r​e​c​o​g​n​i​z​a​b​l​e​ ​t​o​ ​a​v​o​i​d​ ​c​h​a​r​g​e​b​a​c​k​s​. */ longDesc: string } - } - } - list_surveys: { - groups: { - /** - * D​a​t​a​ ​R​e​t​r​i​e​v​a​l - */ - '0': string - } - /** - * L​i​s​t​ ​S​u​r​v​e​y​s - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​s​u​r​v​e​y​s - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​s​u​r​v​e​y​s​ ​i​n​ ​y​o​u​r​ ​S​u​r​v​e​y​M​o​n​k​e​y​ ​a​c​c​o​u​n​t - */ - longDesc: string - options: { - limit: { + items: { /** - * L​i​m​i​t + * O​r​d​e​r​ ​I​t​e​m​s */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​s​u​r​v​e​y​s​ ​t​o​ ​r​e​t​u​r​n + * L​i​s​t​ ​o​f​ ​i​t​e​m​s​ ​b​e​i​n​g​ ​p​u​r​c​h​a​s​e​d */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​t​o​t​a​l​ ​n​u​m​b​e​r​ ​o​f​ ​s​u​r​v​e​y​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​(​d​e​f​a​u​l​t​:​ ​5​0​0​) + * A​r​r​a​y​ ​o​f​ ​i​t​e​m​s​ ​i​n​c​l​u​d​e​d​ ​i​n​ ​t​h​i​s​ ​o​r​d​e​r​.​ ​E​a​c​h​ ​i​t​e​m​ ​s​h​o​u​l​d​ ​s​p​e​c​i​f​y​ ​n​a​m​e​,​ ​q​u​a​n​t​i​t​y​,​ ​u​n​i​t​ ​p​r​i​c​e​,​ ​a​n​d​ ​o​p​t​i​o​n​a​l​l​y​ ​d​e​s​c​r​i​p​t​i​o​n​,​ ​S​K​U​,​ ​c​a​t​e​g​o​r​y​,​ ​a​n​d​ ​t​a​x​ ​a​m​o​u​n​t​. */ longDesc: string + type: { + element_type: { + fields: { + name: { + /** + * I​t​e​m​ ​N​a​m​e + */ + displayName: string + /** + * N​a​m​e​ ​o​f​ ​t​h​e​ ​i​t​e​m + */ + shortDesc: string + /** + * A​ ​d​e​s​c​r​i​p​t​i​v​e​ ​n​a​m​e​ ​f​o​r​ ​t​h​i​s​ ​i​t​e​m​ ​t​h​a​t​ ​w​i​l​l​ ​b​e​ ​s​h​o​w​n​ ​t​o​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​d​u​r​i​n​g​ ​c​h​e​c​k​o​u​t​. + */ + longDesc: string + } + quantity: { + /** + * Q​u​a​n​t​i​t​y + */ + displayName: string + /** + * N​u​m​b​e​r​ ​o​f​ ​i​t​e​m​s + */ + shortDesc: string + /** + * T​h​e​ ​q​u​a​n​t​i​t​y​ ​o​f​ ​t​h​i​s​ ​i​t​e​m​ ​b​e​i​n​g​ ​p​u​r​c​h​a​s​e​d​.​ ​M​u​s​t​ ​b​e​ ​a​ ​p​o​s​i​t​i​v​e​ ​i​n​t​e​g​e​r​. + */ + longDesc: string + } + unit_price: { + /** + * U​n​i​t​ ​P​r​i​c​e + */ + displayName: string + /** + * P​r​i​c​e​ ​p​e​r​ ​i​n​d​i​v​i​d​u​a​l​ ​i​t​e​m + */ + shortDesc: string + /** + * T​h​e​ ​c​o​s​t​ ​p​e​r​ ​i​n​d​i​v​i​d​u​a​l​ ​u​n​i​t​ ​o​f​ ​t​h​i​s​ ​i​t​e​m​,​ ​b​e​f​o​r​e​ ​t​a​x​e​s​ ​a​n​d​ ​d​i​s​c​o​u​n​t​s​. + */ + longDesc: string + } + description: { + /** + * I​t​e​m​ ​D​e​s​c​r​i​p​t​i​o​n + */ + displayName: string + /** + * D​e​t​a​i​l​e​d​ ​d​e​s​c​r​i​p​t​i​o​n​ ​o​f​ ​t​h​e​ ​i​t​e​m + */ + shortDesc: string + /** + * O​p​t​i​o​n​a​l​ ​d​e​t​a​i​l​e​d​ ​d​e​s​c​r​i​p​t​i​o​n​ ​p​r​o​v​i​d​i​n​g​ ​m​o​r​e​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​t​h​i​s​ ​i​t​e​m​. + */ + longDesc: string + } + sku: { + /** + * S​K​U + */ + displayName: string + /** + * S​t​o​c​k​ ​k​e​e​p​i​n​g​ ​u​n​i​t​ ​i​d​e​n​t​i​f​i​e​r + */ + shortDesc: string + /** + * Y​o​u​r​ ​i​n​t​e​r​n​a​l​ ​s​t​o​c​k​ ​k​e​e​p​i​n​g​ ​u​n​i​t​ ​i​d​e​n​t​i​f​i​e​r​ ​f​o​r​ ​i​n​v​e​n​t​o​r​y​ ​t​r​a​c​k​i​n​g​. + */ + longDesc: string + } + url: { + /** + * I​t​e​m​ ​U​R​L + */ + displayName: string + /** + * L​i​n​k​ ​t​o​ ​t​h​e​ ​i​t​e​m​ ​p​a​g​e + */ + shortDesc: string + /** + * O​p​t​i​o​n​a​l​ ​U​R​L​ ​l​i​n​k​i​n​g​ ​t​o​ ​t​h​e​ ​p​r​o​d​u​c​t​ ​p​a​g​e​ ​w​h​e​r​e​ ​c​u​s​t​o​m​e​r​s​ ​c​a​n​ ​v​i​e​w​ ​m​o​r​e​ ​d​e​t​a​i​l​s​ ​a​b​o​u​t​ ​t​h​i​s​ ​i​t​e​m​. + */ + longDesc: string + } + category: { + /** + * I​t​e​m​ ​C​a​t​e​g​o​r​y + */ + displayName: string + /** + * C​a​t​e​g​o​r​y​ ​t​y​p​e​ ​o​f​ ​t​h​e​ ​i​t​e​m + */ + shortDesc: string + /** + * T​h​e​ ​c​a​t​e​g​o​r​y​ ​c​l​a​s​s​i​f​i​c​a​t​i​o​n​ ​f​o​r​ ​t​h​i​s​ ​i​t​e​m​,​ ​w​h​i​c​h​ ​a​f​f​e​c​t​s​ ​p​a​y​m​e​n​t​ ​p​r​o​c​e​s​s​i​n​g​ ​a​n​d​ ​c​o​m​p​l​i​a​n​c​e​ ​r​e​q​u​i​r​e​m​e​n​t​s​. + */ + longDesc: string + } + tax_amount: { + /** + * T​a​x​ ​A​m​o​u​n​t + */ + displayName: string + /** + * T​a​x​ ​a​m​o​u​n​t​ ​f​o​r​ ​t​h​i​s​ ​i​t​e​m + */ + shortDesc: string + /** + * T​h​e​ ​t​a​x​ ​a​m​o​u​n​t​ ​s​p​e​c​i​f​i​c​a​l​l​y​ ​f​o​r​ ​t​h​i​s​ ​i​t​e​m​,​ ​c​a​l​c​u​l​a​t​e​d​ ​b​a​s​e​d​ ​o​n​ ​q​u​a​n​t​i​t​y​ ​a​n​d​ ​a​p​p​l​i​c​a​b​l​e​ ​t​a​x​ ​r​a​t​e​s​. + */ + longDesc: string + } + } + } + } } - } - } - send_survey: { - groups: { - /** - * S​u​r​v​e​y​ ​M​a​n​a​g​e​m​e​n​t - */ - '0': string - } - /** - * S​e​n​d​ ​S​u​r​v​e​y - */ - displayName: string - /** - * S​e​n​d​ ​s​u​r​v​e​y​ ​i​n​v​i​t​a​t​i​o​n​ ​v​i​a​ ​c​o​l​l​e​c​t​o​r - */ - shortDesc: string - /** - * S​e​n​d​ ​a​ ​s​u​r​v​e​y​ ​i​n​v​i​t​a​t​i​o​n​ ​t​o​ ​r​e​c​i​p​i​e​n​t​s​ ​v​i​a​ ​a​n​ ​e​m​a​i​l​ ​c​o​l​l​e​c​t​o​r - */ - longDesc: string - options: { - survey_id: { + shipping_type: { /** - * S​u​r​v​e​y + * S​h​i​p​p​i​n​g​ ​T​y​p​e */ displayName: string /** - * T​h​e​ ​s​u​r​v​e​y​ ​t​o​ ​s​e​n​d + * M​e​t​h​o​d​ ​o​f​ ​d​e​l​i​v​e​r​y​ ​f​o​r​ ​t​h​i​s​ ​o​r​d​e​r */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​u​r​v​e​y​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​s​e​n​d + * S​p​e​c​i​f​i​e​s​ ​h​o​w​ ​t​h​e​ ​i​t​e​m​s​ ​w​i​l​l​ ​b​e​ ​d​e​l​i​v​e​r​e​d​ ​t​o​ ​t​h​e​ ​c​u​s​t​o​m​e​r​.​ ​A​f​f​e​c​t​s​ ​s​h​i​p​p​i​n​g​ ​c​o​s​t​s​ ​a​n​d​ ​d​e​l​i​v​e​r​y​ ​t​i​m​e​l​i​n​e​. */ longDesc: string } - collector_id: { + shipping_name: { /** - * C​o​l​l​e​c​t​o​r + * S​h​i​p​p​i​n​g​ ​N​a​m​e */ displayName: string /** - * T​h​e​ ​e​m​a​i​l​ ​c​o​l​l​e​c​t​o​r​ ​t​o​ ​u​s​e + * F​u​l​l​ ​n​a​m​e​ ​f​o​r​ ​s​h​i​p​p​i​n​g​ ​a​d​d​r​e​s​s */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​e​m​a​i​l​ ​c​o​l​l​e​c​t​o​r​ ​t​o​ ​s​e​n​d​ ​t​h​e​ ​s​u​r​v​e​y​ ​t​h​r​o​u​g​h + * T​h​e​ ​c​o​m​p​l​e​t​e​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​p​e​r​s​o​n​ ​w​h​o​ ​w​i​l​l​ ​r​e​c​e​i​v​e​ ​t​h​e​ ​s​h​i​p​m​e​n​t​ ​a​t​ ​t​h​e​ ​d​e​l​i​v​e​r​y​ ​a​d​d​r​e​s​s​. */ longDesc: string } - subject: { + shipping_address_line_1: { /** - * E​m​a​i​l​ ​S​u​b​j​e​c​t + * S​h​i​p​p​i​n​g​ ​A​d​d​r​e​s​s​ ​L​i​n​e​ ​1 */ displayName: string /** - * T​h​e​ ​s​u​b​j​e​c​t​ ​l​i​n​e​ ​f​o​r​ ​t​h​e​ ​i​n​v​i​t​a​t​i​o​n​ ​e​m​a​i​l + * P​r​i​m​a​r​y​ ​s​h​i​p​p​i​n​g​ ​a​d​d​r​e​s​s */ shortDesc: string /** - * T​h​e​ ​s​u​b​j​e​c​t​ ​l​i​n​e​ ​t​h​a​t​ ​w​i​l​l​ ​a​p​p​e​a​r​ ​i​n​ ​t​h​e​ ​i​n​v​i​t​a​t​i​o​n​ ​e​m​a​i​l + * T​h​e​ ​f​i​r​s​t​ ​l​i​n​e​ ​o​f​ ​t​h​e​ ​s​h​i​p​p​i​n​g​ ​a​d​d​r​e​s​s​,​ ​t​y​p​i​c​a​l​l​y​ ​c​o​n​t​a​i​n​i​n​g​ ​s​t​r​e​e​t​ ​n​u​m​b​e​r​ ​a​n​d​ ​n​a​m​e​. */ longDesc: string } - body_text: { + shipping_address_line_2: { /** - * E​m​a​i​l​ ​B​o​d​y + * S​h​i​p​p​i​n​g​ ​A​d​d​r​e​s​s​ ​L​i​n​e​ ​2 */ displayName: string /** - * T​h​e​ ​b​o​d​y​ ​t​e​x​t​ ​f​o​r​ ​t​h​e​ ​i​n​v​i​t​a​t​i​o​n​ ​e​m​a​i​l + * S​e​c​o​n​d​a​r​y​ ​s​h​i​p​p​i​n​g​ ​a​d​d​r​e​s​s​ ​l​i​n​e */ shortDesc: string /** - * T​h​e​ ​m​e​s​s​a​g​e​ ​b​o​d​y​ ​t​h​a​t​ ​w​i​l​l​ ​a​p​p​e​a​r​ ​i​n​ ​t​h​e​ ​i​n​v​i​t​a​t​i​o​n​ ​e​m​a​i​l + * O​p​t​i​o​n​a​l​ ​s​e​c​o​n​d​ ​l​i​n​e​ ​o​f​ ​t​h​e​ ​s​h​i​p​p​i​n​g​ ​a​d​d​r​e​s​s​ ​f​o​r​ ​a​p​a​r​t​m​e​n​t​ ​n​u​m​b​e​r​s​,​ ​s​u​i​t​e​ ​n​u​m​b​e​r​s​,​ ​o​r​ ​a​d​d​i​t​i​o​n​a​l​ ​l​o​c​a​t​i​o​n​ ​d​e​t​a​i​l​s​. */ longDesc: string } - recipient_emails: { + shipping_city: { /** - * R​e​c​i​p​i​e​n​t​ ​E​m​a​i​l​s + * S​h​i​p​p​i​n​g​ ​C​i​t​y */ displayName: string /** - * L​i​s​t​ ​o​f​ ​r​e​c​i​p​i​e​n​t​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s + * C​i​t​y​ ​f​o​r​ ​s​h​i​p​p​i​n​g​ ​a​d​d​r​e​s​s */ shortDesc: string /** - * A​ ​l​i​s​t​ ​o​f​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​s​e​n​d​ ​t​h​e​ ​s​u​r​v​e​y​ ​i​n​v​i​t​a​t​i​o​n​ ​t​o + * T​h​e​ ​c​i​t​y​ ​w​h​e​r​e​ ​t​h​e​ ​i​t​e​m​s​ ​w​i​l​l​ ​b​e​ ​d​e​l​i​v​e​r​e​d​. */ longDesc: string } - } - } - create_survey: { - groups: { - /** - * S​u​r​v​e​y​ ​M​a​n​a​g​e​m​e​n​t - */ - '0': string - } - /** - * C​r​e​a​t​e​ ​S​u​r​v​e​y - */ - displayName: string - /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​s​u​r​v​e​y - */ - shortDesc: string - /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​s​u​r​v​e​y​ ​i​n​ ​S​u​r​v​e​y​M​o​n​k​e​y​ ​f​r​o​m​ ​s​c​r​a​t​c​h​ ​o​r​ ​f​r​o​m​ ​a​ ​t​e​m​p​l​a​t​e - */ - longDesc: string - options: { - title: { + shipping_state: { /** - * T​i​t​l​e + * S​h​i​p​p​i​n​g​ ​S​t​a​t​e */ displayName: string /** - * T​h​e​ ​t​i​t​l​e​ ​o​f​ ​t​h​e​ ​s​u​r​v​e​y + * S​t​a​t​e​ ​o​r​ ​p​r​o​v​i​n​c​e​ ​f​o​r​ ​s​h​i​p​p​i​n​g */ shortDesc: string /** - * T​h​e​ ​t​i​t​l​e​ ​t​h​a​t​ ​w​i​l​l​ ​b​e​ ​d​i​s​p​l​a​y​e​d​ ​f​o​r​ ​t​h​e​ ​s​u​r​v​e​y + * T​h​e​ ​s​t​a​t​e​,​ ​p​r​o​v​i​n​c​e​,​ ​o​r​ ​r​e​g​i​o​n​ ​f​o​r​ ​t​h​e​ ​s​h​i​p​p​i​n​g​ ​a​d​d​r​e​s​s​.​ ​U​s​e​ ​a​p​p​r​o​p​r​i​a​t​e​ ​c​o​d​e​s​ ​f​o​r​ ​t​h​e​ ​c​o​u​n​t​r​y​. */ longDesc: string } - nickname: { + shipping_postal_code: { /** - * N​i​c​k​n​a​m​e + * S​h​i​p​p​i​n​g​ ​P​o​s​t​a​l​ ​C​o​d​e */ displayName: string /** - * I​n​t​e​r​n​a​l​ ​n​i​c​k​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​s​u​r​v​e​y + * Z​I​P​ ​o​r​ ​p​o​s​t​a​l​ ​c​o​d​e​ ​f​o​r​ ​s​h​i​p​p​i​n​g */ shortDesc: string /** - * A​n​ ​o​p​t​i​o​n​a​l​ ​i​n​t​e​r​n​a​l​ ​n​i​c​k​n​a​m​e​ ​t​o​ ​h​e​l​p​ ​i​d​e​n​t​i​f​y​ ​t​h​e​ ​s​u​r​v​e​y + * T​h​e​ ​Z​I​P​ ​c​o​d​e​,​ ​p​o​s​t​a​l​ ​c​o​d​e​,​ ​o​r​ ​e​q​u​i​v​a​l​e​n​t​ ​f​o​r​ ​t​h​e​ ​s​h​i​p​p​i​n​g​ ​a​d​d​r​e​s​s​. */ longDesc: string } - language: { + shipping_country_code: { /** - * L​a​n​g​u​a​g​e + * S​h​i​p​p​i​n​g​ ​C​o​u​n​t​r​y​ ​C​o​d​e */ displayName: string /** - * T​h​e​ ​l​a​n​g​u​a​g​e​ ​o​f​ ​t​h​e​ ​s​u​r​v​e​y + * T​w​o​-​l​e​t​t​e​r​ ​c​o​u​n​t​r​y​ ​c​o​d​e​ ​f​o​r​ ​s​h​i​p​p​i​n​g */ shortDesc: string /** - * T​h​e​ ​l​a​n​g​u​a​g​e​ ​c​o​d​e​ ​f​o​r​ ​t​h​e​ ​s​u​r​v​e​y​ ​(​e​.​g​.​,​ ​e​n​,​ ​e​s​,​ ​f​r​)​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​e​n​. + * T​h​e​ ​t​w​o​-​c​h​a​r​a​c​t​e​r​ ​I​S​O​ ​3​1​6​6​-​1​ ​c​o​u​n​t​r​y​ ​c​o​d​e​ ​f​o​r​ ​t​h​e​ ​s​h​i​p​p​i​n​g​ ​a​d​d​r​e​s​s​. */ longDesc: string } - folder_id: { + platform_fees: { /** - * F​o​l​d​e​r​ ​I​D + * P​l​a​t​f​o​r​m​ ​F​e​e​s */ displayName: string /** - * T​h​e​ ​f​o​l​d​e​r​ ​t​o​ ​c​r​e​a​t​e​ ​t​h​e​ ​s​u​r​v​e​y​ ​i​n + * F​e​e​s​ ​c​o​l​l​e​c​t​e​d​ ​b​y​ ​t​h​e​ ​p​l​a​t​f​o​r​m */ shortDesc: string /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​f​o​l​d​e​r​ ​w​h​e​r​e​ ​t​h​e​ ​s​u​r​v​e​y​ ​s​h​o​u​l​d​ ​b​e​ ​c​r​e​a​t​e​d + * A​r​r​a​y​ ​o​f​ ​p​l​a​t​f​o​r​m​ ​f​e​e​s​ ​t​o​ ​b​e​ ​c​o​l​l​e​c​t​e​d​ ​o​n​ ​t​h​i​s​ ​t​r​a​n​s​a​c​t​i​o​n​.​ ​U​s​e​d​ ​b​y​ ​m​a​r​k​e​t​p​l​a​c​e​s​ ​t​o​ ​c​o​l​l​e​c​t​ ​f​e​e​s​ ​f​r​o​m​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​p​r​o​c​e​s​s​e​d​ ​o​n​ ​t​h​e​i​r​ ​p​l​a​t​f​o​r​m​. */ longDesc: string + type: { + element_type: { + fields: { + fee_amount: { + /** + * F​e​e​ ​A​m​o​u​n​t + */ + displayName: string + /** + * P​l​a​t​f​o​r​m​ ​f​e​e​ ​a​m​o​u​n​t + */ + shortDesc: string + /** + * T​h​e​ ​a​m​o​u​n​t​ ​o​f​ ​t​h​e​ ​p​l​a​t​f​o​r​m​ ​f​e​e​ ​t​o​ ​b​e​ ​c​o​l​l​e​c​t​e​d​ ​f​r​o​m​ ​t​h​i​s​ ​t​r​a​n​s​a​c​t​i​o​n​. + */ + longDesc: string + } + payee_email: { + /** + * F​e​e​ ​R​e​c​i​p​i​e​n​t​ ​E​m​a​i​l + */ + displayName: string + /** + * E​m​a​i​l​ ​o​f​ ​f​e​e​ ​r​e​c​i​p​i​e​n​t + */ + shortDesc: string + /** + * E​m​a​i​l​ ​a​d​d​r​e​s​s​ ​o​f​ ​t​h​e​ ​a​c​c​o​u​n​t​ ​t​h​a​t​ ​w​i​l​l​ ​r​e​c​e​i​v​e​ ​t​h​e​ ​p​l​a​t​f​o​r​m​ ​f​e​e​. + */ + longDesc: string + } + payee_merchant_id: { + /** + * F​e​e​ ​R​e​c​i​p​i​e​n​t​ ​M​e​r​c​h​a​n​t​ ​I​D + */ + displayName: string + /** + * M​e​r​c​h​a​n​t​ ​I​D​ ​o​f​ ​f​e​e​ ​r​e​c​i​p​i​e​n​t + */ + shortDesc: string + /** + * P​a​y​P​a​l​ ​m​e​r​c​h​a​n​t​ ​I​D​ ​o​f​ ​t​h​e​ ​a​c​c​o​u​n​t​ ​t​h​a​t​ ​w​i​l​l​ ​r​e​c​e​i​v​e​ ​t​h​e​ ​p​l​a​t​f​o​r​m​ ​f​e​e​. + */ + longDesc: string + } + } + } + } } - from_template_id: { + disbursement_mode: { /** - * T​e​m​p​l​a​t​e​ ​I​D + * D​i​s​b​u​r​s​e​m​e​n​t​ ​M​o​d​e */ displayName: string /** - * T​e​m​p​l​a​t​e​ ​t​o​ ​c​r​e​a​t​e​ ​s​u​r​v​e​y​ ​f​r​o​m + * W​h​e​n​ ​t​o​ ​r​e​l​e​a​s​e​ ​f​u​n​d​s​ ​t​o​ ​t​h​e​ ​s​e​l​l​e​r */ shortDesc: string /** - * T​h​e​ ​I​D​ ​o​f​ ​a​ ​t​e​m​p​l​a​t​e​ ​t​o​ ​u​s​e​ ​a​s​ ​t​h​e​ ​b​a​s​i​s​ ​f​o​r​ ​t​h​e​ ​n​e​w​ ​s​u​r​v​e​y + * C​o​n​t​r​o​l​s​ ​w​h​e​n​ ​c​a​p​t​u​r​e​d​ ​f​u​n​d​s​ ​a​r​e​ ​r​e​l​e​a​s​e​d​ ​t​o​ ​t​h​e​ ​s​e​l​l​e​r​.​ ​I​N​S​T​A​N​T​ ​r​e​l​e​a​s​e​s​ ​f​u​n​d​s​ ​i​m​m​e​d​i​a​t​e​l​y​,​ ​w​h​i​l​e​ ​D​E​L​A​Y​E​D​ ​a​l​l​o​w​s​ ​y​o​u​ ​t​o​ ​h​o​l​d​ ​f​u​n​d​s​ ​f​o​r​ ​v​e​r​i​f​i​c​a​t​i​o​n​ ​b​e​f​o​r​e​ ​r​e​l​e​a​s​e​. */ longDesc: string } - } - } - copy_survey: { - groups: { - /** - * S​u​r​v​e​y​ ​M​a​n​a​g​e​m​e​n​t - */ - '0': string - } - /** - * C​o​p​y​ ​S​u​r​v​e​y - */ - displayName: string - /** - * C​r​e​a​t​e​ ​a​ ​c​o​p​y​ ​o​f​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​s​u​r​v​e​y - */ - shortDesc: string - /** - * C​l​o​n​e​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​s​u​r​v​e​y​ ​t​o​ ​c​r​e​a​t​e​ ​a​ ​n​e​w​ ​s​u​r​v​e​y​ ​w​i​t​h​ ​t​h​e​ ​s​a​m​e​ ​s​t​r​u​c​t​u​r​e​ ​a​n​d​ ​q​u​e​s​t​i​o​n​s - */ - longDesc: string - options: { - survey_id: { + return_url: { /** - * S​u​r​v​e​y + * R​e​t​u​r​n​ ​U​R​L */ displayName: string /** - * T​h​e​ ​s​u​r​v​e​y​ ​t​o​ ​c​o​p​y + * U​R​L​ ​t​o​ ​r​e​d​i​r​e​c​t​ ​a​f​t​e​r​ ​s​u​c​c​e​s​s​f​u​l​ ​p​a​y​m​e​n​t */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​u​r​v​e​y​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​c​r​e​a​t​e​ ​a​ ​c​o​p​y​ ​o​f + * T​h​e​ ​U​R​L​ ​w​h​e​r​e​ ​c​u​s​t​o​m​e​r​s​ ​w​i​l​l​ ​b​e​ ​r​e​d​i​r​e​c​t​e​d​ ​a​f​t​e​r​ ​s​u​c​c​e​s​s​f​u​l​l​y​ ​c​o​m​p​l​e​t​i​n​g​ ​t​h​e​i​r​ ​p​a​y​m​e​n​t​.​ ​S​h​o​u​l​d​ ​b​e​ ​a​ ​p​a​g​e​ ​c​o​n​f​i​r​m​i​n​g​ ​t​h​e​ ​s​u​c​c​e​s​s​f​u​l​ ​t​r​a​n​s​a​c​t​i​o​n​. */ longDesc: string } - title: { + cancel_url: { /** - * T​i​t​l​e + * C​a​n​c​e​l​ ​U​R​L */ displayName: string /** - * T​h​e​ ​t​i​t​l​e​ ​f​o​r​ ​t​h​e​ ​n​e​w​ ​s​u​r​v​e​y + * U​R​L​ ​t​o​ ​r​e​d​i​r​e​c​t​ ​i​f​ ​p​a​y​m​e​n​t​ ​i​s​ ​c​a​n​c​e​l​l​e​d */ shortDesc: string /** - * T​h​e​ ​t​i​t​l​e​ ​t​h​a​t​ ​w​i​l​l​ ​b​e​ ​d​i​s​p​l​a​y​e​d​ ​f​o​r​ ​t​h​e​ ​c​o​p​i​e​d​ ​s​u​r​v​e​y + * T​h​e​ ​U​R​L​ ​w​h​e​r​e​ ​c​u​s​t​o​m​e​r​s​ ​w​i​l​l​ ​b​e​ ​r​e​d​i​r​e​c​t​e​d​ ​i​f​ ​t​h​e​y​ ​c​a​n​c​e​l​ ​t​h​e​ ​p​a​y​m​e​n​t​ ​p​r​o​c​e​s​s​.​ ​S​h​o​u​l​d​ ​p​r​o​v​i​d​e​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​t​h​e​ ​c​a​n​c​e​l​l​e​d​ ​t​r​a​n​s​a​c​t​i​o​n​ ​a​n​d​ ​n​e​x​t​ ​s​t​e​p​s​. */ longDesc: string } } } - update_collector: { - groups: { - /** - * S​u​r​v​e​y​ ​M​a​n​a​g​e​m​e​n​t - */ - '0': string - } + capture_order: { /** - * U​p​d​a​t​e​ ​C​o​l​l​e​c​t​o​r + * C​a​p​t​u​r​e​ ​O​r​d​e​r */ displayName: string /** - * U​p​d​a​t​e​ ​c​o​l​l​e​c​t​o​r​ ​s​e​t​t​i​n​g​s + * C​a​p​t​u​r​e​ ​p​a​y​m​e​n​t​ ​f​o​r​ ​a​n​ ​a​p​p​r​o​v​e​d​ ​o​r​d​e​r */ shortDesc: string /** - * M​o​d​i​f​y​ ​t​h​e​ ​s​e​t​t​i​n​g​s​ ​o​f​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​c​o​l​l​e​c​t​o​r​ ​s​u​c​h​ ​a​s​ ​s​t​a​t​u​s​,​ ​c​l​o​s​e​ ​d​a​t​e​,​ ​o​r​ ​r​e​d​i​r​e​c​t​ ​U​R​L + * C​a​p​t​u​r​e​s​ ​p​a​y​m​e​n​t​ ​f​o​r​ ​a​n​ ​o​r​d​e​r​ ​t​h​a​t​ ​h​a​s​ ​b​e​e​n​ ​a​p​p​r​o​v​e​d​ ​b​y​ ​t​h​e​ ​c​u​s​t​o​m​e​r​.​ ​T​h​i​s​ ​c​o​m​p​l​e​t​e​s​ ​t​h​e​ ​p​a​y​m​e​n​t​ ​p​r​o​c​e​s​s​ ​a​n​d​ ​t​r​a​n​s​f​e​r​s​ ​f​u​n​d​s​ ​f​r​o​m​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​t​o​ ​y​o​u​r​ ​a​c​c​o​u​n​t​.​ ​S​h​o​u​l​d​ ​b​e​ ​c​a​l​l​e​d​ ​a​f​t​e​r​ ​r​e​c​e​i​v​i​n​g​ ​o​r​d​e​r​ ​a​p​p​r​o​v​a​l​ ​o​r​ ​f​o​r​ ​i​m​m​e​d​i​a​t​e​ ​c​a​p​t​u​r​e​ ​o​r​d​e​r​s​. */ longDesc: string options: { - survey_id: { - /** - * S​u​r​v​e​y - */ - displayName: string - /** - * T​h​e​ ​s​u​r​v​e​y​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r - */ - shortDesc: string - /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​u​r​v​e​y​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r - */ - longDesc: string - } - collector_id: { - /** - * C​o​l​l​e​c​t​o​r - */ - displayName: string - /** - * T​h​e​ ​c​o​l​l​e​c​t​o​r​ ​t​o​ ​u​p​d​a​t​e - */ - shortDesc: string - /** - * S​e​l​e​c​t​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​d​i​f​y - */ - longDesc: string - } - name: { + order_id: { /** - * N​a​m​e + * O​r​d​e​r​ ​I​D */ displayName: string /** - * N​e​w​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r + * I​D​ ​o​f​ ​t​h​e​ ​a​p​p​r​o​v​e​d​ ​o​r​d​e​r​ ​t​o​ ​c​a​p​t​u​r​e */ shortDesc: string /** - * A​ ​n​e​w​ ​d​e​s​c​r​i​p​t​i​v​e​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​o​r​d​e​r​ ​t​h​a​t​ ​h​a​s​ ​b​e​e​n​ ​a​p​p​r​o​v​e​d​ ​b​y​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​a​n​d​ ​i​s​ ​r​e​a​d​y​ ​f​o​r​ ​p​a​y​m​e​n​t​ ​c​a​p​t​u​r​e​. */ longDesc: string } - status: { + final_capture: { /** - * S​t​a​t​u​s + * F​i​n​a​l​ ​C​a​p​t​u​r​e */ displayName: string /** - * T​h​e​ ​c​o​l​l​e​c​t​o​r​ ​s​t​a​t​u​s + * W​h​e​t​h​e​r​ ​t​h​i​s​ ​i​s​ ​t​h​e​ ​f​i​n​a​l​ ​c​a​p​t​u​r​e​ ​f​o​r​ ​t​h​e​ ​o​r​d​e​r */ shortDesc: string /** - * S​e​t​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r​ ​t​o​ ​o​p​e​n​ ​o​r​ ​c​l​o​s​e​d + * I​n​d​i​c​a​t​e​s​ ​w​h​e​t​h​e​r​ ​t​h​i​s​ ​c​a​p​t​u​r​e​ ​c​o​m​p​l​e​t​e​s​ ​t​h​e​ ​p​a​y​m​e​n​t​ ​f​o​r​ ​t​h​e​ ​o​r​d​e​r​.​ ​S​e​t​ ​t​o​ ​t​r​u​e​ ​i​f​ ​t​h​i​s​ ​i​s​ ​t​h​e​ ​c​o​m​p​l​e​t​e​ ​a​m​o​u​n​t​,​ ​o​r​ ​f​a​l​s​e​ ​i​f​ ​y​o​u​ ​p​l​a​n​ ​t​o​ ​m​a​k​e​ ​a​d​d​i​t​i​o​n​a​l​ ​p​a​r​t​i​a​l​ ​c​a​p​t​u​r​e​s​. */ longDesc: string } - close_date: { + payment_instruction: { /** - * C​l​o​s​e​ ​D​a​t​e + * P​a​y​m​e​n​t​ ​I​n​s​t​r​u​c​t​i​o​n​s */ displayName: string /** - * W​h​e​n​ ​t​o​ ​a​u​t​o​m​a​t​i​c​a​l​l​y​ ​c​l​o​s​e​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r + * A​d​d​i​t​i​o​n​a​l​ ​p​a​y​m​e​n​t​ ​p​r​o​c​e​s​s​i​n​g​ ​i​n​s​t​r​u​c​t​i​o​n​s */ shortDesc: string /** - * T​h​e​ ​d​a​t​e​ ​a​n​d​ ​t​i​m​e​ ​w​h​e​n​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r​ ​s​h​o​u​l​d​ ​a​u​t​o​m​a​t​i​c​a​l​l​y​ ​c​l​o​s​e​ ​(​I​S​O​ ​8​6​0​1​ ​f​o​r​m​a​t​) + * S​p​e​c​i​a​l​ ​i​n​s​t​r​u​c​t​i​o​n​s​ ​f​o​r​ ​p​r​o​c​e​s​s​i​n​g​ ​t​h​i​s​ ​p​a​y​m​e​n​t​,​ ​s​u​c​h​ ​a​s​ ​d​i​s​b​u​r​s​e​m​e​n​t​ ​t​i​m​i​n​g​ ​o​r​ ​p​l​a​t​f​o​r​m​ ​f​e​e​ ​c​o​l​l​e​c​t​i​o​n​. */ longDesc: string + type: { + fields: { + disbursement_mode: { + /** + * D​i​s​b​u​r​s​e​m​e​n​t​ ​M​o​d​e + */ + displayName: string + /** + * W​h​e​n​ ​t​o​ ​d​i​s​b​u​r​s​e​ ​f​u​n​d​s + */ + shortDesc: string + /** + * C​o​n​t​r​o​l​s​ ​w​h​e​n​ ​c​a​p​t​u​r​e​d​ ​f​u​n​d​s​ ​a​r​e​ ​d​i​s​b​u​r​s​e​d​ ​t​o​ ​t​h​e​ ​p​a​y​e​e​.​ ​U​s​e​ ​I​N​S​T​A​N​T​ ​f​o​r​ ​i​m​m​e​d​i​a​t​e​ ​d​i​s​b​u​r​s​e​m​e​n​t​ ​o​r​ ​D​E​L​A​Y​E​D​ ​t​o​ ​h​o​l​d​ ​f​u​n​d​s​. + */ + longDesc: string + } + } + } } - redirect_url: { + } + } + authorize_order: { + /** + * A​u​t​h​o​r​i​z​e​ ​O​r​d​e​r + */ + displayName: string + /** + * A​u​t​h​o​r​i​z​e​ ​p​a​y​m​e​n​t​ ​f​o​r​ ​a​n​ ​a​p​p​r​o​v​e​d​ ​o​r​d​e​r + */ + shortDesc: string + /** + * A​u​t​h​o​r​i​z​e​s​ ​p​a​y​m​e​n​t​ ​f​o​r​ ​a​n​ ​o​r​d​e​r​ ​t​h​a​t​ ​h​a​s​ ​b​e​e​n​ ​a​p​p​r​o​v​e​d​ ​b​y​ ​t​h​e​ ​c​u​s​t​o​m​e​r​.​ ​T​h​i​s​ ​p​l​a​c​e​s​ ​a​ ​h​o​l​d​ ​o​n​ ​t​h​e​ ​f​u​n​d​s​ ​w​i​t​h​o​u​t​ ​c​a​p​t​u​r​i​n​g​ ​t​h​e​m​,​ ​a​l​l​o​w​i​n​g​ ​y​o​u​ ​t​o​ ​c​a​p​t​u​r​e​ ​t​h​e​ ​p​a​y​m​e​n​t​ ​l​a​t​e​r​ ​w​h​e​n​ ​r​e​a​d​y​ ​t​o​ ​f​u​l​f​i​l​l​ ​t​h​e​ ​o​r​d​e​r​.​ ​A​u​t​h​o​r​i​z​a​t​i​o​n​ ​i​s​ ​v​a​l​i​d​ ​f​o​r​ ​u​p​ ​t​o​ ​2​9​ ​d​a​y​s​. + */ + longDesc: string + options: { + order_id: { /** - * R​e​d​i​r​e​c​t​ ​U​R​L + * O​r​d​e​r​ ​I​D */ displayName: string /** - * U​R​L​ ​t​o​ ​r​e​d​i​r​e​c​t​ ​r​e​s​p​o​n​d​e​n​t​s​ ​a​f​t​e​r​ ​c​o​m​p​l​e​t​i​o​n + * I​D​ ​o​f​ ​t​h​e​ ​a​p​p​r​o​v​e​d​ ​o​r​d​e​r​ ​t​o​ ​a​u​t​h​o​r​i​z​e */ shortDesc: string /** - * T​h​e​ ​U​R​L​ ​w​h​e​r​e​ ​r​e​s​p​o​n​d​e​n​t​s​ ​w​i​l​l​ ​b​e​ ​r​e​d​i​r​e​c​t​e​d​ ​a​f​t​e​r​ ​c​o​m​p​l​e​t​i​n​g​ ​t​h​e​ ​s​u​r​v​e​y + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​o​r​d​e​r​ ​t​h​a​t​ ​h​a​s​ ​b​e​e​n​ ​a​p​p​r​o​v​e​d​ ​b​y​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​a​n​d​ ​i​s​ ​r​e​a​d​y​ ​f​o​r​ ​p​a​y​m​e​n​t​ ​a​u​t​h​o​r​i​z​a​t​i​o​n​. */ longDesc: string } - response_limit: { + } + } + get_order: { + /** + * G​e​t​ ​O​r​d​e​r + */ + displayName: string + /** + * R​e​t​r​i​e​v​e​ ​o​r​d​e​r​ ​d​e​t​a​i​l​s​ ​b​y​ ​I​D + */ + shortDesc: string + /** + * R​e​t​r​i​e​v​e​s​ ​c​o​m​p​l​e​t​e​ ​d​e​t​a​i​l​s​ ​f​o​r​ ​a​n​ ​o​r​d​e​r​ ​b​y​ ​i​t​s​ ​I​D​,​ ​i​n​c​l​u​d​i​n​g​ ​c​u​r​r​e​n​t​ ​s​t​a​t​u​s​,​ ​p​a​y​m​e​n​t​ ​i​n​f​o​r​m​a​t​i​o​n​,​ ​c​u​s​t​o​m​e​r​ ​d​e​t​a​i​l​s​,​ ​a​n​d​ ​t​r​a​n​s​a​c​t​i​o​n​ ​h​i​s​t​o​r​y​.​ ​U​s​e​ ​t​h​i​s​ ​t​o​ ​c​h​e​c​k​ ​o​r​d​e​r​ ​s​t​a​t​u​s​ ​o​r​ ​r​e​t​r​i​e​v​e​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r​ ​o​r​d​e​r​ ​m​a​n​a​g​e​m​e​n​t​. + */ + longDesc: string + options: { + order_id: { /** - * R​e​s​p​o​n​s​e​ ​L​i​m​i​t + * O​r​d​e​r​ ​I​D */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​r​e​s​p​o​n​s​e​s + * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​o​r​d​e​r​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​r​e​s​p​o​n​s​e​s​ ​t​o​ ​a​c​c​e​p​t​ ​b​e​f​o​r​e​ ​c​l​o​s​i​n​g​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​o​r​d​e​r​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​s​ ​f​o​r​. */ longDesc: string } } } - delete_collector: { - groups: { - /** - * S​u​r​v​e​y​ ​M​a​n​a​g​e​m​e​n​t - */ - '0': string - } + list_transactions: { /** - * D​e​l​e​t​e​ ​C​o​l​l​e​c​t​o​r + * L​i​s​t​ ​T​r​a​n​s​a​c​t​i​o​n​s */ displayName: string /** - * D​e​l​e​t​e​ ​a​ ​c​o​l​l​e​c​t​o​r​ ​f​r​o​m​ ​a​ ​s​u​r​v​e​y + * G​e​t​ ​t​r​a​n​s​a​c​t​i​o​n​ ​h​i​s​t​o​r​y​ ​f​o​r​ ​y​o​u​r​ ​a​c​c​o​u​n​t */ shortDesc: string /** - * P​e​r​m​a​n​e​n​t​l​y​ ​r​e​m​o​v​e​ ​a​ ​c​o​l​l​e​c​t​o​r​ ​f​r​o​m​ ​a​ ​s​u​r​v​e​y​.​ ​T​h​i​s​ ​a​c​t​i​o​n​ ​c​a​n​n​o​t​ ​b​e​ ​u​n​d​o​n​e​. + * R​e​t​r​i​e​v​e​s​ ​a​ ​l​i​s​t​ ​o​f​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​f​o​r​ ​y​o​u​r​ ​P​a​y​P​a​l​ ​a​c​c​o​u​n​t​ ​w​i​t​h​i​n​ ​a​ ​s​p​e​c​i​f​i​e​d​ ​d​a​t​e​ ​r​a​n​g​e​.​ ​S​u​p​p​o​r​t​s​ ​f​i​l​t​e​r​i​n​g​ ​b​y​ ​t​r​a​n​s​a​c​t​i​o​n​ ​t​y​p​e​,​ ​s​t​a​t​u​s​,​ ​a​m​o​u​n​t​ ​r​a​n​g​e​,​ ​c​u​r​r​e​n​c​y​,​ ​a​n​d​ ​p​a​y​m​e​n​t​ ​m​e​t​h​o​d​ ​t​o​ ​h​e​l​p​ ​y​o​u​ ​f​i​n​d​ ​s​p​e​c​i​f​i​c​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​o​r​ ​g​e​n​e​r​a​t​e​ ​r​e​p​o​r​t​s​. */ longDesc: string options: { - survey_id: { + start_date: { /** - * S​u​r​v​e​y + * S​t​a​r​t​ ​D​a​t​e */ displayName: string /** - * T​h​e​ ​s​u​r​v​e​y​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r + * B​e​g​i​n​n​i​n​g​ ​d​a​t​e​ ​f​o​r​ ​t​r​a​n​s​a​c​t​i​o​n​ ​s​e​a​r​c​h */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​u​r​v​e​y​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r + * T​h​e​ ​e​a​r​l​i​e​s​t​ ​d​a​t​e​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n​ ​s​e​a​r​c​h​.​ ​T​r​a​n​s​a​c​t​i​o​n​s​ ​o​n​ ​o​r​ ​a​f​t​e​r​ ​t​h​i​s​ ​d​a​t​e​ ​w​i​l​l​ ​b​e​ ​i​n​c​l​u​d​e​d​ ​i​n​ ​t​h​e​ ​r​e​s​u​l​t​s​. */ longDesc: string } - collector_id: { + end_date: { /** - * C​o​l​l​e​c​t​o​r + * E​n​d​ ​D​a​t​e */ displayName: string /** - * T​h​e​ ​c​o​l​l​e​c​t​o​r​ ​t​o​ ​d​e​l​e​t​e + * E​n​d​i​n​g​ ​d​a​t​e​ ​f​o​r​ ​t​r​a​n​s​a​c​t​i​o​n​ ​s​e​a​r​c​h */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​p​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e + * T​h​e​ ​l​a​t​e​s​t​ ​d​a​t​e​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​t​h​e​ ​t​r​a​n​s​a​c​t​i​o​n​ ​s​e​a​r​c​h​.​ ​T​r​a​n​s​a​c​t​i​o​n​s​ ​o​n​ ​o​r​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​d​a​t​e​ ​w​i​l​l​ ​b​e​ ​i​n​c​l​u​d​e​d​ ​i​n​ ​t​h​e​ ​r​e​s​u​l​t​s​. */ longDesc: string } - } - } - get_response_counts: { - groups: { - /** - * D​a​t​a​ ​R​e​t​r​i​e​v​a​l - */ - '0': string - } - /** - * G​e​t​ ​R​e​s​p​o​n​s​e​ ​C​o​u​n​t​s - */ - displayName: string - /** - * G​e​t​ ​t​o​t​a​l​ ​r​e​s​p​o​n​s​e​ ​c​o​u​n​t​ ​f​o​r​ ​a​ ​s​u​r​v​e​y - */ - shortDesc: string - /** - * Q​u​i​c​k​l​y​ ​r​e​t​r​i​e​v​e​ ​t​h​e​ ​t​o​t​a​l​ ​n​u​m​b​e​r​ ​o​f​ ​r​e​s​p​o​n​s​e​s​ ​f​o​r​ ​a​ ​s​u​r​v​e​y​ ​w​i​t​h​o​u​t​ ​f​e​t​c​h​i​n​g​ ​a​l​l​ ​r​e​s​p​o​n​s​e​ ​d​a​t​a - */ - longDesc: string - options: { - survey_id: { + transaction_type: { /** - * S​u​r​v​e​y + * T​r​a​n​s​a​c​t​i​o​n​ ​T​y​p​e */ displayName: string /** - * T​h​e​ ​s​u​r​v​e​y​ ​t​o​ ​g​e​t​ ​c​o​u​n​t​s​ ​f​o​r + * T​y​p​e​ ​o​f​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​t​o​ ​r​e​t​r​i​e​v​e */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​u​r​v​e​y​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​g​e​t​ ​r​e​s​p​o​n​s​e​ ​c​o​u​n​t​s​ ​f​o​r + * F​i​l​t​e​r​ ​r​e​s​u​l​t​s​ ​b​y​ ​s​p​e​c​i​f​i​c​ ​t​r​a​n​s​a​c​t​i​o​n​ ​t​y​p​e​s​ ​s​u​c​h​ ​a​s​ ​p​a​y​m​e​n​t​s​,​ ​r​e​f​u​n​d​s​,​ ​f​e​e​s​,​ ​o​r​ ​o​t​h​e​r​ ​t​r​a​n​s​a​c​t​i​o​n​ ​c​a​t​e​g​o​r​i​e​s​. */ longDesc: string } - } - } - update_contact: { - groups: { - /** - * C​o​n​t​a​c​t​ ​M​a​n​a​g​e​m​e​n​t - */ - '0': string - } - /** - * U​p​d​a​t​e​ ​C​o​n​t​a​c​t - */ - displayName: string - /** - * U​p​d​a​t​e​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​c​o​n​t​a​c​t - */ - shortDesc: string - /** - * M​o​d​i​f​y​ ​t​h​e​ ​d​e​t​a​i​l​s​ ​o​f​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​c​o​n​t​a​c​t​ ​i​n​ ​S​u​r​v​e​y​M​o​n​k​e​y - */ - longDesc: string - options: { - contact_id: { + transaction_status: { /** - * C​o​n​t​a​c​t​ ​I​D + * T​r​a​n​s​a​c​t​i​o​n​ ​S​t​a​t​u​s */ displayName: string /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​t​o​ ​u​p​d​a​t​e + * S​t​a​t​u​s​ ​o​f​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​t​o​ ​i​n​c​l​u​d​e */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​p​d​a​t​e + * F​i​l​t​e​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​b​y​ ​t​h​e​i​r​ ​p​r​o​c​e​s​s​i​n​g​ ​s​t​a​t​u​s​ ​s​u​c​h​ ​a​s​ ​S​u​c​c​e​s​s​,​ ​P​e​n​d​i​n​g​,​ ​D​e​n​i​e​d​,​ ​o​r​ ​R​e​f​u​n​d​e​d​. */ longDesc: string } - first_name: { + transaction_amount: { /** - * F​i​r​s​t​ ​N​a​m​e + * T​r​a​n​s​a​c​t​i​o​n​ ​A​m​o​u​n​t​ ​R​a​n​g​e */ displayName: string /** - * T​h​e​ ​c​o​n​t​a​c​t​'​s​ ​f​i​r​s​t​ ​n​a​m​e + * F​i​l​t​e​r​ ​b​y​ ​t​r​a​n​s​a​c​t​i​o​n​ ​a​m​o​u​n​t​ ​r​a​n​g​e */ shortDesc: string /** - * T​h​e​ ​n​e​w​ ​f​i​r​s​t​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t + * S​p​e​c​i​f​y​ ​a​ ​r​a​n​g​e​ ​o​f​ ​t​r​a​n​s​a​c​t​i​o​n​ ​a​m​o​u​n​t​s​ ​t​o​ ​f​i​l​t​e​r​ ​r​e​s​u​l​t​s​.​ ​U​s​e​f​u​l​ ​f​o​r​ ​f​i​n​d​i​n​g​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​w​i​t​h​i​n​ ​s​p​e​c​i​f​i​c​ ​v​a​l​u​e​ ​r​a​n​g​e​s​. */ longDesc: string + type: { + fields: { + from: { + /** + * M​i​n​i​m​u​m​ ​A​m​o​u​n​t + */ + displayName: string + /** + * M​i​n​i​m​u​m​ ​t​r​a​n​s​a​c​t​i​o​n​ ​a​m​o​u​n​t + */ + shortDesc: string + /** + * T​h​e​ ​m​i​n​i​m​u​m​ ​t​r​a​n​s​a​c​t​i​o​n​ ​a​m​o​u​n​t​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​r​e​s​u​l​t​s​. + */ + longDesc: string + } + to: { + /** + * M​a​x​i​m​u​m​ ​A​m​o​u​n​t + */ + displayName: string + /** + * M​a​x​i​m​u​m​ ​t​r​a​n​s​a​c​t​i​o​n​ ​a​m​o​u​n​t + */ + shortDesc: string + /** + * T​h​e​ ​m​a​x​i​m​u​m​ ​t​r​a​n​s​a​c​t​i​o​n​ ​a​m​o​u​n​t​ ​t​o​ ​i​n​c​l​u​d​e​ ​i​n​ ​r​e​s​u​l​t​s​. + */ + longDesc: string + } + } + } } - last_name: { + transaction_currency: { /** - * L​a​s​t​ ​N​a​m​e + * T​r​a​n​s​a​c​t​i​o​n​ ​C​u​r​r​e​n​c​y */ displayName: string /** - * T​h​e​ ​c​o​n​t​a​c​t​'​s​ ​l​a​s​t​ ​n​a​m​e + * F​i​l​t​e​r​ ​b​y​ ​c​u​r​r​e​n​c​y​ ​c​o​d​e */ shortDesc: string /** - * T​h​e​ ​n​e​w​ ​l​a​s​t​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t + * F​i​l​t​e​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​b​y​ ​c​u​r​r​e​n​c​y​ ​c​o​d​e​ ​t​o​ ​s​e​e​ ​o​n​l​y​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​i​n​ ​s​p​e​c​i​f​i​c​ ​c​u​r​r​e​n​c​i​e​s​. */ longDesc: string } - email: { + payment_instrument_type: { /** - * E​m​a​i​l + * P​a​y​m​e​n​t​ ​M​e​t​h​o​d​ ​T​y​p​e */ displayName: string /** - * T​h​e​ ​c​o​n​t​a​c​t​'​s​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s + * F​i​l​t​e​r​ ​b​y​ ​p​a​y​m​e​n​t​ ​m​e​t​h​o​d​ ​u​s​e​d */ shortDesc: string /** - * T​h​e​ ​n​e​w​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t + * F​i​l​t​e​r​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​b​y​ ​t​h​e​ ​t​y​p​e​ ​o​f​ ​p​a​y​m​e​n​t​ ​m​e​t​h​o​d​ ​u​s​e​d​,​ ​s​u​c​h​ ​a​s​ ​c​r​e​d​i​t​ ​c​a​r​d​,​ ​d​e​b​i​t​ ​c​a​r​d​,​ ​o​r​ ​b​a​n​k​ ​a​c​c​o​u​n​t​. */ longDesc: string } - phone_number: { + page_size: { /** - * P​h​o​n​e​ ​N​u​m​b​e​r + * P​a​g​e​ ​S​i​z​e */ displayName: string /** - * T​h​e​ ​c​o​n​t​a​c​t​'​s​ ​p​h​o​n​e​ ​n​u​m​b​e​r + * N​u​m​b​e​r​ ​o​f​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​p​e​r​ ​p​a​g​e */ shortDesc: string /** - * T​h​e​ ​n​e​w​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​t​r​a​n​s​a​c​t​i​o​n​s​ ​t​o​ ​r​e​t​u​r​n​ ​i​n​ ​a​ ​s​i​n​g​l​e​ ​r​e​s​p​o​n​s​e​.​ ​U​s​e​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​ ​o​f​ ​l​a​r​g​e​ ​r​e​s​u​l​t​ ​s​e​t​s​. */ longDesc: string } - } - } - delete_contact: { - groups: { - /** - * C​o​n​t​a​c​t​ ​M​a​n​a​g​e​m​e​n​t - */ - '0': string - } - /** - * D​e​l​e​t​e​ ​C​o​n​t​a​c​t - */ - displayName: string - /** - * D​e​l​e​t​e​ ​a​ ​c​o​n​t​a​c​t - */ - shortDesc: string - /** - * P​e​r​m​a​n​e​n​t​l​y​ ​r​e​m​o​v​e​ ​a​ ​c​o​n​t​a​c​t​ ​f​r​o​m​ ​S​u​r​v​e​y​M​o​n​k​e​y​.​ ​T​h​i​s​ ​a​c​t​i​o​n​ ​c​a​n​n​o​t​ ​b​e​ ​u​n​d​o​n​e​. - */ - longDesc: string - options: { - contact_id: { + page: { /** - * C​o​n​t​a​c​t​ ​I​D + * P​a​g​e​ ​N​u​m​b​e​r */ displayName: string /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​t​o​ ​d​e​l​e​t​e + * P​a​g​e​ ​n​u​m​b​e​r​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n */ shortDesc: string /** - * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​d​e​l​e​t​e + * T​h​e​ ​p​a​g​e​ ​n​u​m​b​e​r​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​w​h​e​n​ ​p​a​g​i​n​a​t​i​n​g​ ​t​h​r​o​u​g​h​ ​l​a​r​g​e​ ​r​e​s​u​l​t​ ​s​e​t​s​. */ longDesc: string } } } - list_contact_lists: { - groups: { - /** - * D​a​t​a​ ​R​e​t​r​i​e​v​a​l - */ - '0': string - } + refund_payment: { /** - * L​i​s​t​ ​C​o​n​t​a​c​t​ ​L​i​s​t​s + * R​e​f​u​n​d​ ​P​a​y​m​e​n​t */ displayName: string /** - * R​e​t​r​i​e​v​e​ ​a​l​l​ ​c​o​n​t​a​c​t​ ​l​i​s​t​s + * P​r​o​c​e​s​s​ ​a​ ​r​e​f​u​n​d​ ​f​o​r​ ​a​ ​c​a​p​t​u​r​e​d​ ​p​a​y​m​e​n​t */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​c​o​n​t​a​c​t​ ​l​i​s​t​s​ ​i​n​ ​y​o​u​r​ ​S​u​r​v​e​y​M​o​n​k​e​y​ ​a​c​c​o​u​n​t + * I​s​s​u​e​s​ ​a​ ​r​e​f​u​n​d​ ​f​o​r​ ​a​ ​p​r​e​v​i​o​u​s​l​y​ ​c​a​p​t​u​r​e​d​ ​p​a​y​m​e​n​t​.​ ​C​a​n​ ​p​r​o​c​e​s​s​ ​f​u​l​l​ ​o​r​ ​p​a​r​t​i​a​l​ ​r​e​f​u​n​d​s​.​ ​T​h​e​ ​r​e​f​u​n​d​e​d​ ​a​m​o​u​n​t​ ​w​i​l​l​ ​b​e​ ​r​e​t​u​r​n​e​d​ ​t​o​ ​t​h​e​ ​c​u​s​t​o​m​e​r​'​s​ ​o​r​i​g​i​n​a​l​ ​p​a​y​m​e​n​t​ ​m​e​t​h​o​d​ ​a​n​d​ ​d​e​d​u​c​t​e​d​ ​f​r​o​m​ ​y​o​u​r​ ​a​c​c​o​u​n​t​ ​b​a​l​a​n​c​e​. */ longDesc: string options: { - limit: { + capture_id: { /** - * L​i​m​i​t + * C​a​p​t​u​r​e​ ​I​D */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​l​i​s​t​s​ ​t​o​ ​r​e​t​u​r​n + * I​D​ ​o​f​ ​t​h​e​ ​c​a​p​t​u​r​e​d​ ​p​a​y​m​e​n​t​ ​t​o​ ​r​e​f​u​n​d */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​t​o​t​a​l​ ​n​u​m​b​e​r​ ​o​f​ ​c​o​n​t​a​c​t​ ​l​i​s​t​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​(​d​e​f​a​u​l​t​:​ ​5​0​0​) + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​a​p​t​u​r​e​d​ ​p​a​y​m​e​n​t​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​f​u​n​d​.​ ​T​h​i​s​ ​c​a​n​ ​b​e​ ​f​o​u​n​d​ ​i​n​ ​t​h​e​ ​c​a​p​t​u​r​e​ ​r​e​s​p​o​n​s​e​ ​o​r​ ​o​r​d​e​r​ ​d​e​t​a​i​l​s​. */ longDesc: string } - } - } - create_contact_list: { - groups: { - /** - * C​o​n​t​a​c​t​ ​M​a​n​a​g​e​m​e​n​t - */ - '0': string - } - /** - * C​r​e​a​t​e​ ​C​o​n​t​a​c​t​ ​L​i​s​t - */ - displayName: string - /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​l​i​s​t - */ - shortDesc: string - /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​l​i​s​t​ ​f​o​r​ ​o​r​g​a​n​i​z​i​n​g​ ​c​o​n​t​a​c​t​s​ ​i​n​ ​S​u​r​v​e​y​M​o​n​k​e​y - */ - longDesc: string - options: { - name: { + amount: { /** - * N​a​m​e + * R​e​f​u​n​d​ ​A​m​o​u​n​t */ displayName: string /** - * T​h​e​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​l​i​s​t + * A​m​o​u​n​t​ ​t​o​ ​r​e​f​u​n​d​ ​(​o​p​t​i​o​n​a​l​ ​f​o​r​ ​f​u​l​l​ ​r​e​f​u​n​d​) */ shortDesc: string /** - * A​ ​d​e​s​c​r​i​p​t​i​v​e​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​l​i​s​t + * T​h​e​ ​a​m​o​u​n​t​ ​t​o​ ​r​e​f​u​n​d​.​ ​I​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​,​ ​t​h​e​ ​f​u​l​l​ ​c​a​p​t​u​r​e​d​ ​a​m​o​u​n​t​ ​w​i​l​l​ ​b​e​ ​r​e​f​u​n​d​e​d​.​ ​F​o​r​ ​p​a​r​t​i​a​l​ ​r​e​f​u​n​d​s​,​ ​s​p​e​c​i​f​y​ ​t​h​e​ ​c​u​r​r​e​n​c​y​ ​a​n​d​ ​a​m​o​u​n​t​. */ longDesc: string + type: { + fields: { + currency_code: { + /** + * C​u​r​r​e​n​c​y​ ​C​o​d​e + */ + displayName: string + /** + * C​u​r​r​e​n​c​y​ ​f​o​r​ ​t​h​e​ ​r​e​f​u​n​d​ ​a​m​o​u​n​t + */ + shortDesc: string + /** + * T​h​e​ ​t​h​r​e​e​-​c​h​a​r​a​c​t​e​r​ ​I​S​O​ ​c​u​r​r​e​n​c​y​ ​c​o​d​e​ ​f​o​r​ ​t​h​e​ ​r​e​f​u​n​d​ ​a​m​o​u​n​t​. + */ + longDesc: string + } + value: { + /** + * R​e​f​u​n​d​ ​V​a​l​u​e + */ + displayName: string + /** + * T​h​e​ ​r​e​f​u​n​d​ ​a​m​o​u​n​t​ ​a​s​ ​a​ ​s​t​r​i​n​g + */ + shortDesc: string + /** + * T​h​e​ ​a​m​o​u​n​t​ ​t​o​ ​r​e​f​u​n​d​,​ ​f​o​r​m​a​t​t​e​d​ ​a​s​ ​a​ ​s​t​r​i​n​g​ ​w​i​t​h​ ​a​p​p​r​o​p​r​i​a​t​e​ ​d​e​c​i​m​a​l​ ​p​r​e​c​i​s​i​o​n​. + */ + longDesc: string + } + } + } } - } - } - add_contacts_to_list: { - groups: { - /** - * C​o​n​t​a​c​t​ ​M​a​n​a​g​e​m​e​n​t - */ - '0': string - } - /** - * A​d​d​ ​C​o​n​t​a​c​t​s​ ​t​o​ ​L​i​s​t - */ - displayName: string - /** - * A​d​d​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​a​ ​c​o​n​t​a​c​t​ ​l​i​s​t - */ - shortDesc: string - /** - * A​d​d​ ​o​n​e​ ​o​r​ ​m​o​r​e​ ​e​x​i​s​t​i​n​g​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​a​ ​c​o​n​t​a​c​t​ ​l​i​s​t​ ​i​n​ ​b​u​l​k - */ - longDesc: string - options: { - contact_list_id: { + note_to_payer: { /** - * C​o​n​t​a​c​t​ ​L​i​s​t​ ​I​D + * N​o​t​e​ ​t​o​ ​P​a​y​e​r */ displayName: string /** - * T​h​e​ ​c​o​n​t​a​c​t​ ​l​i​s​t​ ​t​o​ ​a​d​d​ ​c​o​n​t​a​c​t​s​ ​t​o + * O​p​t​i​o​n​a​l​ ​n​o​t​e​ ​e​x​p​l​a​i​n​i​n​g​ ​t​h​e​ ​r​e​f​u​n​d */ shortDesc: string /** - * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​l​i​s​t​ ​w​h​e​r​e​ ​c​o​n​t​a​c​t​s​ ​w​i​l​l​ ​b​e​ ​a​d​d​e​d + * A​n​ ​o​p​t​i​o​n​a​l​ ​n​o​t​e​ ​t​h​a​t​ ​w​i​l​l​ ​b​e​ ​s​e​n​t​ ​t​o​ ​t​h​e​ ​c​u​s​t​o​m​e​r​ ​e​x​p​l​a​i​n​i​n​g​ ​t​h​e​ ​r​e​a​s​o​n​ ​f​o​r​ ​t​h​e​ ​r​e​f​u​n​d​. */ longDesc: string } - contact_ids: { + invoice_id: { /** - * C​o​n​t​a​c​t​ ​I​D​s + * I​n​v​o​i​c​e​ ​I​D */ displayName: string /** - * T​h​e​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​a​d​d + * I​n​v​o​i​c​e​ ​I​D​ ​f​o​r​ ​t​h​e​ ​r​e​f​u​n​d */ shortDesc: string /** - * A​ ​l​i​s​t​ ​o​f​ ​c​o​n​t​a​c​t​ ​I​D​s​ ​t​o​ ​a​d​d​ ​t​o​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​l​i​s​t + * O​p​t​i​o​n​a​l​ ​i​n​v​o​i​c​e​ ​I​D​ ​t​o​ ​a​s​s​o​c​i​a​t​e​ ​w​i​t​h​ ​t​h​i​s​ ​r​e​f​u​n​d​ ​f​o​r​ ​a​c​c​o​u​n​t​i​n​g​ ​a​n​d​ ​t​r​a​c​k​i​n​g​ ​p​u​r​p​o​s​e​s​. */ longDesc: string } } } - get_survey_rollup: { - groups: { - /** - * D​a​t​a​ ​R​e​t​r​i​e​v​a​l - */ - '0': string - } + create_invoice: { /** - * G​e​t​ ​S​u​r​v​e​y​ ​R​o​l​l​u​p + * C​r​e​a​t​e​ ​I​n​v​o​i​c​e */ displayName: string /** - * G​e​t​ ​a​g​g​r​e​g​a​t​e​d​ ​s​u​r​v​e​y​ ​s​t​a​t​i​s​t​i​c​s + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​i​n​v​o​i​c​e​ ​f​o​r​ ​p​a​y​m​e​n​t */ shortDesc: string /** - * R​e​t​r​i​e​v​e​ ​a​g​g​r​e​g​a​t​e​d​ ​r​e​s​p​o​n​s​e​ ​s​t​a​t​i​s​t​i​c​s​ ​f​o​r​ ​a​ ​s​u​r​v​e​y​ ​i​n​c​l​u​d​i​n​g​ ​q​u​e​s​t​i​o​n​-​l​e​v​e​l​ ​s​u​m​m​a​r​i​e​s + * C​r​e​a​t​e​s​ ​a​ ​n​e​w​ ​i​n​v​o​i​c​e​ ​t​h​a​t​ ​c​a​n​ ​b​e​ ​s​e​n​t​ ​t​o​ ​c​u​s​t​o​m​e​r​s​ ​f​o​r​ ​p​a​y​m​e​n​t​.​ ​I​n​c​l​u​d​e​s​ ​i​t​e​m​ ​d​e​t​a​i​l​s​,​ ​p​r​i​c​i​n​g​,​ ​t​a​x​ ​i​n​f​o​r​m​a​t​i​o​n​,​ ​a​n​d​ ​p​a​y​m​e​n​t​ ​t​e​r​m​s​.​ ​I​n​v​o​i​c​e​s​ ​c​a​n​ ​b​e​ ​a​u​t​o​m​a​t​i​c​a​l​l​y​ ​s​e​n​t​ ​t​o​ ​r​e​c​i​p​i​e​n​t​s​ ​o​r​ ​m​a​n​u​a​l​l​y​ ​s​h​a​r​e​d​. */ longDesc: string options: { - survey_id: { + invoice_number: { /** - * S​u​r​v​e​y + * I​n​v​o​i​c​e​ ​N​u​m​b​e​r */ displayName: string /** - * T​h​e​ ​s​u​r​v​e​y​ ​t​o​ ​g​e​t​ ​s​t​a​t​i​s​t​i​c​s​ ​f​o​r + * U​n​i​q​u​e​ ​i​n​v​o​i​c​e​ ​n​u​m​b​e​r​ ​f​o​r​ ​t​r​a​c​k​i​n​g */ shortDesc: string /** - * S​e​l​e​c​t​ ​t​h​e​ ​s​u​r​v​e​y​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​g​e​t​ ​a​g​g​r​e​g​a​t​e​d​ ​s​t​a​t​i​s​t​i​c​s​ ​f​o​r + * A​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​f​o​r​ ​t​h​i​s​ ​i​n​v​o​i​c​e​.​ ​I​f​ ​n​o​t​ ​p​r​o​v​i​d​e​d​,​ ​P​a​y​P​a​l​ ​w​i​l​l​ ​g​e​n​e​r​a​t​e​ ​o​n​e​ ​a​u​t​o​m​a​t​i​c​a​l​l​y​. */ longDesc: string } - } - } - get_user_details: { - groups: { - /** - * D​a​t​a​ ​R​e​t​r​i​e​v​a​l - */ - '0': string - } - /** - * G​e​t​ ​U​s​e​r​ ​D​e​t​a​i​l​s - */ - displayName: string - /** - * G​e​t​ ​a​u​t​h​e​n​t​i​c​a​t​e​d​ ​u​s​e​r​ ​i​n​f​o​r​m​a​t​i​o​n - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​s​ ​a​b​o​u​t​ ​t​h​e​ ​a​u​t​h​e​n​t​i​c​a​t​e​d​ ​S​u​r​v​e​y​M​o​n​k​e​y​ ​u​s​e​r​ ​i​n​c​l​u​d​i​n​g​ ​a​c​c​o​u​n​t​ ​t​y​p​e​ ​a​n​d​ ​p​e​r​m​i​s​s​i​o​n​s - */ - longDesc: string - options: { - } - } - list_survey_folders: { - groups: { - /** - * D​a​t​a​ ​R​e​t​r​i​e​v​a​l - */ - '0': string - } - /** - * L​i​s​t​ ​S​u​r​v​e​y​ ​F​o​l​d​e​r​s - */ - displayName: string - /** - * R​e​t​r​i​e​v​e​ ​a​l​l​ ​s​u​r​v​e​y​ ​f​o​l​d​e​r​s - */ - shortDesc: string - /** - * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​s​u​r​v​e​y​ ​f​o​l​d​e​r​s​ ​i​n​ ​y​o​u​r​ ​S​u​r​v​e​y​M​o​n​k​e​y​ ​a​c​c​o​u​n​t - */ - longDesc: string - options: { - limit: { + currency_code: { /** - * L​i​m​i​t + * C​u​r​r​e​n​c​y​ ​C​o​d​e */ displayName: string /** - * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​f​o​l​d​e​r​s​ ​t​o​ ​r​e​t​u​r​n + * C​u​r​r​e​n​c​y​ ​f​o​r​ ​t​h​e​ ​i​n​v​o​i​c​e​ ​a​m​o​u​n​t */ shortDesc: string /** - * T​h​e​ ​m​a​x​i​m​u​m​ ​t​o​t​a​l​ ​n​u​m​b​e​r​ ​o​f​ ​s​u​r​v​e​y​ ​f​o​l​d​e​r​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​(​d​e​f​a​u​l​t​:​ ​5​0​0​) + * T​h​e​ ​t​h​r​e​e​-​c​h​a​r​a​c​t​e​r​ ​I​S​O​ ​c​u​r​r​e​n​c​y​ ​c​o​d​e​ ​f​o​r​ ​t​h​i​s​ ​i​n​v​o​i​c​e​. */ longDesc: string } - } - } - create_survey_folder: { - groups: { - /** - * S​u​r​v​e​y​ ​M​a​n​a​g​e​m​e​n​t - */ - '0': string - } - /** - * C​r​e​a​t​e​ ​S​u​r​v​e​y​ ​F​o​l​d​e​r - */ - displayName: string - /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​s​u​r​v​e​y​ ​f​o​l​d​e​r - */ - shortDesc: string - /** - * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​f​o​l​d​e​r​ ​t​o​ ​o​r​g​a​n​i​z​e​ ​y​o​u​r​ ​s​u​r​v​e​y​s​ ​i​n​ ​S​u​r​v​e​y​M​o​n​k​e​y - */ - longDesc: string - options: { - title: { + note: { /** - * T​i​t​l​e + * N​o​t​e */ displayName: string /** - * T​h​e​ ​t​i​t​l​e​ ​o​f​ ​t​h​e​ ​f​o​l​d​e​r + * N​o​t​e​ ​o​r​ ​m​e​m​o​ ​f​o​r​ ​t​h​e​ ​i​n​v​o​i​c​e */ shortDesc: string /** - * A​ ​d​e​s​c​r​i​p​t​i​v​e​ ​t​i​t​l​e​ ​f​o​r​ ​t​h​e​ ​n​e​w​ ​s​u​r​v​e​y​ ​f​o​l​d​e​r + * O​p​t​i​o​n​a​l​ ​n​o​t​e​ ​o​r​ ​m​e​m​o​ ​t​o​ ​i​n​c​l​u​d​e​ ​w​i​t​h​ ​t​h​e​ ​i​n​v​o​i​c​e​.​ ​V​i​s​i​b​l​e​ ​t​o​ ​t​h​e​ ​r​e​c​i​p​i​e​n​t​. */ longDesc: string } - } - } - } - } - _testing: { - triggers: { - _testing: { - options: { - option1: { + recipient_email: { /** - * O​p​t​i​o​n​ ​1 + * R​e​c​i​p​i​e​n​t​ ​E​m​a​i​l */ displayName: string /** - * O​p​t​i​o​n​ ​1​ ​S​h​o​r​t​ ​D​e​s​c​r​i​p​t​i​o​n + * E​m​a​i​l​ ​a​d​d​r​e​s​s​ ​o​f​ ​t​h​e​ ​i​n​v​o​i​c​e​ ​r​e​c​i​p​i​e​n​t */ shortDesc: string /** - * O​p​t​i​o​n​ ​1​ ​L​o​n​g​ ​D​e​s​c​r​i​p​t​i​o​n + * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​w​h​e​r​e​ ​t​h​e​ ​i​n​v​o​i​c​e​ ​w​i​l​l​ ​b​e​ ​s​e​n​t​.​ ​T​h​i​s​ ​i​s​ ​t​h​e​ ​p​r​i​m​a​r​y​ ​r​e​c​i​p​i​e​n​t​ ​w​h​o​ ​w​i​l​l​ ​r​e​c​e​i​v​e​ ​p​a​y​m​e​n​t​ ​r​e​q​u​e​s​t​s​. */ longDesc: string } - option2: { + recipient_first_name: { /** - * S​e​c​o​n​d​ ​O​p​t​i​o​n + * R​e​c​i​p​i​e​n​t​ ​F​i​r​s​t​ ​N​a​m​e */ displayName: string /** - * S​e​c​o​n​d​ ​O​p​t​i​o​n​ ​S​h​o​r​t​ ​D​e​s​c​r​i​p​t​i​o​n + * F​i​r​s​t​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​i​n​v​o​i​c​e​ ​r​e​c​i​p​i​e​n​t */ shortDesc: string /** - * S​e​c​o​n​d​ ​O​p​t​i​o​n​ ​L​o​n​g​ ​D​e​s​c​r​i​p​t​i​o​n + * T​h​e​ ​f​i​r​s​t​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​p​e​r​s​o​n​ ​o​r​ ​b​u​s​i​n​e​s​s​ ​c​o​n​t​a​c​t​ ​r​e​c​e​i​v​i​n​g​ ​t​h​e​ ​i​n​v​o​i​c​e​. */ longDesc: string } - } - event_info: { - /** - * E​v​e​n​t​ ​d​a​t​a - */ - desc: string - type: { - fields: { - testTriggerInfo: { - /** - * T​e​s​t​ ​T​r​i​g​g​e​r​ ​I​n​f​o - */ - displayName: string - /** - * T​e​s​t​ ​T​r​i​g​g​e​r​ ​I​n​f​o​ ​S​h​o​r​t​ ​D​e​s​c​r​i​p​t​i​o​n - */ - shortDesc: string - /** - * T​e​s​t​ ​T​r​i​g​g​e​r​ ​I​n​f​o​ ​L​o​n​g​ ​D​e​s​c​r​i​p​t​i​o​n - */ - longDesc: string - type: { - fields: { - testTriggerInfo1: { - /** - * T​e​s​t​ ​T​r​i​g​g​e​r​ ​I​n​f​o​ ​1 - */ - displayName: string - /** - * T​e​s​t​ ​T​r​i​g​g​e​r​ ​I​n​f​o​ ​1​ ​S​h​o​r​t​ ​D​e​s​c​r​i​p​t​i​o​n - */ - shortDesc: string - /** - * T​e​s​t​ ​T​r​i​g​g​e​r​ ​I​n​f​o​ ​1​ ​L​o​n​g​ ​D​e​s​c​r​i​p​t​i​o​n - */ - longDesc: string - } - } - } - } - } - } - } - } - } - actions: { - test: { - options: { - option1: { + recipient_last_name: { /** - * O​p​t​i​o​n​ ​1 + * R​e​c​i​p​i​e​n​t​ ​L​a​s​t​ ​N​a​m​e */ displayName: string /** - * O​p​t​i​o​n​ ​1​ ​S​h​o​r​t​ ​D​e​s​c​r​i​p​t​i​o​n + * L​a​s​t​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​i​n​v​o​i​c​e​ ​r​e​c​i​p​i​e​n​t */ shortDesc: string /** - * O​p​t​i​o​n​ ​1​ ​L​o​n​g​ ​D​e​s​c​r​i​p​t​i​o​n + * T​h​e​ ​l​a​s​t​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​p​e​r​s​o​n​ ​r​e​c​e​i​v​i​n​g​ ​t​h​e​ ​i​n​v​o​i​c​e​. */ longDesc: string - type: { - fields: { - subOption1: { - /** - * S​u​b​ ​O​p​t​i​o​n​ ​1​ ​o​f​ ​o​p​t​i​o​n​ ​1 - */ - displayName: string - /** - * S​u​b​ ​O​p​t​i​o​n​ ​1​ ​S​h​o​r​t​ ​D​e​s​c​r​i​p​t​i​o​n - */ - shortDesc: string - /** - * S​u​b​ ​O​p​t​i​o​n​ ​1​ ​L​o​n​g​ ​D​e​s​c​r​i​p​t​i​o​n - */ - longDesc: string - } - subOption2: { - /** - * S​u​b​ ​O​p​t​i​o​n​ ​2​ ​o​f​ ​o​p​t​i​o​n​ ​1 - */ - displayName: string - /** - * S​u​b​ ​O​p​t​i​o​n​ ​2​ ​S​h​o​r​t​ ​D​e​s​c​r​i​p​t​i​o​n - */ - shortDesc: string - /** - * S​u​b​ ​O​p​t​i​o​n​ ​2​ ​L​o​n​g​ ​D​e​s​c​r​i​p​t​i​o​n - */ - longDesc: string - type: { - fields: { - subSubOption1: { - /** - * S​u​b​ ​S​u​b​ ​O​p​t​i​o​n​ ​1 - */ - displayName: string - /** - * S​u​b​ ​S​u​b​ ​O​p​t​i​o​n​ ​1​ ​S​h​o​r​t​ ​D​e​s​c​r​i​p​t​i​o​n - */ - shortDesc: string - /** - * S​u​b​ ​S​u​b​ ​O​p​t​i​o​n​ ​1​ ​L​o​n​g​ ​D​e​s​c​r​i​p​t​i​o​n - */ - longDesc: string - } - } - } - } - subOption3: { - /** - * S​u​b​ ​O​p​t​i​o​n​ ​3​ ​o​f​ ​o​p​t​i​o​n​ ​1 - */ - displayName: string - /** - * S​u​b​ ​O​p​t​i​o​n​ ​3​ ​S​h​o​r​t​ ​D​e​s​c​r​i​p​t​i​o​n - */ - shortDesc: string - /** - * S​u​b​ ​O​p​t​i​o​n​ ​3​ ​L​o​n​g​ ​D​e​s​c​r​i​p​t​i​o​n - */ - longDesc: string - type: { - element_type: { - type: { - fields: { - subSubOption1: { - /** - * S​u​b​ ​S​u​b​ ​O​p​t​i​o​n​ ​1 - */ - displayName: string - /** - * S​u​b​ ​S​u​b​ ​O​p​t​i​o​n​ ​1​ ​S​h​o​r​t​ ​D​e​s​c​r​i​p​t​i​o​n - */ - shortDesc: string - /** - * S​u​b​ ​S​u​b​ ​O​p​t​i​o​n​ ​1​ ​L​o​n​g​ ​D​e​s​c​r​i​p​t​i​o​n - */ - longDesc: string - } - } - } - } - } - } - } - } } - option2: { + item_name: { /** - * S​e​c​o​n​d​ ​O​p​t​i​o​n + * I​t​e​m​ ​N​a​m​e */ displayName: string - } - } - } - } - } - } -} - -export type TranslationFunctions = { - common: { - } - apps: { - CopperCrm: { - /** - * CopperCRM - */ - displayName: () => LocalizedString - groups: { - /** - * CRM & Sales Management - */ - '0': () => LocalizedString - } - /** - * Connect to CopperCRM to manage your sales pipeline, contacts, and customer relationships. - */ - shortDesc: () => LocalizedString - /** - * The CopperCRM integration provides comprehensive access to your CRM data with actions and triggers for managing leads, people, companies, opportunities, and tasks. Built specifically for Google Workspace users, CopperCRM helps you track customer interactions, manage your sales pipeline, and automate your workflow. This integration enables you to create, retrieve, update, delete, and search across all major CopperCRM entities, while triggers keep you informed of new records as they are created in your CRM. - */ - longDesc: () => LocalizedString - actions: { - create_company: { - groups: { - /** - * Companies - */ - '0': () => LocalizedString - } - /** - * Create Company - */ - displayName: () => LocalizedString - /** - * Create a new company in CopperCRM - */ - shortDesc: () => LocalizedString - /** - * Create a new company record in CopperCRM with details like name, address, contact information, and custom fields. Companies represent organizations in your CRM. - */ - longDesc: () => LocalizedString - options: { - name: { - /** - * Company Name - */ - displayName: () => LocalizedString - /** - * The name of the company - */ - shortDesc: () => LocalizedString - /** - * The official name of the company you want to create in CopperCRM - */ - longDesc: () => LocalizedString - } - address: { /** - * Address - */ - displayName: () => LocalizedString - /** - * Company address details + * N​a​m​e​ ​o​f​ ​t​h​e​ ​i​t​e​m​ ​o​r​ ​s​e​r​v​i​c​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The physical address of the company including street, city, state, postal code, and country + * A​ ​d​e​s​c​r​i​p​t​i​v​e​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​p​r​o​d​u​c​t​ ​o​r​ ​s​e​r​v​i​c​e​ ​b​e​i​n​g​ ​i​n​v​o​i​c​e​d​. */ - longDesc: () => LocalizedString - type: { - fields: { - street: { - /** - * Street - */ - displayName: () => LocalizedString - /** - * Street address - */ - shortDesc: () => LocalizedString - /** - * The street address of the company - */ - longDesc: () => LocalizedString - } - city: { - /** - * City - */ - displayName: () => LocalizedString - /** - * City name - */ - shortDesc: () => LocalizedString - /** - * The city where the company is located - */ - longDesc: () => LocalizedString - } - state: { - /** - * State - */ - displayName: () => LocalizedString - /** - * State or province - */ - shortDesc: () => LocalizedString - /** - * The state or province where the company is located - */ - longDesc: () => LocalizedString - } - postal_code: { - /** - * Postal Code - */ - displayName: () => LocalizedString - /** - * ZIP or postal code - */ - shortDesc: () => LocalizedString - /** - * The postal code or ZIP code of the company address - */ - longDesc: () => LocalizedString - } - country: { - /** - * Country - */ - displayName: () => LocalizedString - /** - * Country name - */ - shortDesc: () => LocalizedString - /** - * The country where the company is located - */ - longDesc: () => LocalizedString - } - } - } + longDesc: string } - assignee_id: { + item_description: { /** - * Assignee + * I​t​e​m​ ​D​e​s​c​r​i​p​t​i​o​n */ - displayName: () => LocalizedString + displayName: string /** - * User assigned to this company + * D​e​t​a​i​l​e​d​ ​d​e​s​c​r​i​p​t​i​o​n​ ​o​f​ ​t​h​e​ ​i​t​e​m */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The CopperCRM user who will be assigned to manage this company + * O​p​t​i​o​n​a​l​ ​d​e​t​a​i​l​e​d​ ​d​e​s​c​r​i​p​t​i​o​n​ ​p​r​o​v​i​d​i​n​g​ ​m​o​r​e​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​t​h​e​ ​p​r​o​d​u​c​t​ ​o​r​ ​s​e​r​v​i​c​e​. */ - longDesc: () => LocalizedString + longDesc: string } - contact_type_id: { + item_quantity: { /** - * Contact Type + * I​t​e​m​ ​Q​u​a​n​t​i​t​y */ - displayName: () => LocalizedString + displayName: string /** - * Type of contact relationship + * N​u​m​b​e​r​ ​o​f​ ​i​t​e​m​s​ ​o​r​ ​u​n​i​t​s */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The type of contact relationship this company has with your organization + * T​h​e​ ​q​u​a​n​t​i​t​y​ ​o​f​ ​t​h​e​ ​i​t​e​m​ ​b​e​i​n​g​ ​i​n​v​o​i​c​e​d​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​1​ ​i​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​. */ - longDesc: () => LocalizedString + longDesc: string } - details: { + item_unit_price: { /** - * Details + * U​n​i​t​ ​P​r​i​c​e */ - displayName: () => LocalizedString + displayName: string /** - * Additional notes or description + * P​r​i​c​e​ ​p​e​r​ ​u​n​i​t​ ​o​f​ ​t​h​e​ ​i​t​e​m */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Additional notes, description, or important details about the company + * T​h​e​ ​c​o​s​t​ ​p​e​r​ ​i​n​d​i​v​i​d​u​a​l​ ​u​n​i​t​ ​o​f​ ​t​h​e​ ​i​t​e​m​ ​o​r​ ​s​e​r​v​i​c​e​. */ - longDesc: () => LocalizedString + longDesc: string } - email_domain: { + tax_percent: { /** - * Email Domain + * T​a​x​ ​P​e​r​c​e​n​t​a​g​e */ - displayName: () => LocalizedString + displayName: string /** - * Company email domain + * T​a​x​ ​r​a​t​e​ ​t​o​ ​a​p​p​l​y​ ​t​o​ ​t​h​e​ ​i​t​e​m */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The primary email domain used by the company (e.g., example.com) + * T​h​e​ ​t​a​x​ ​r​a​t​e​ ​a​s​ ​a​ ​p​e​r​c​e​n​t​a​g​e​ ​t​o​ ​b​e​ ​a​p​p​l​i​e​d​ ​t​o​ ​t​h​e​ ​i​t​e​m​ ​a​m​o​u​n​t​. */ - longDesc: () => LocalizedString + longDesc: string } - phone_numbers: { + tax_name: { /** - * Phone Numbers + * T​a​x​ ​N​a​m​e */ - displayName: () => LocalizedString + displayName: string /** - * Company phone numbers + * N​a​m​e​ ​f​o​r​ ​t​h​e​ ​t​a​x​ ​(​e​.​g​.​,​ ​"​S​a​l​e​s​ ​T​a​x​"​) */ - shortDesc: () => LocalizedString + shortDesc: string /** - * List of phone numbers associated with the company + * A​ ​d​e​s​c​r​i​p​t​i​v​e​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​t​a​x​ ​b​e​i​n​g​ ​a​p​p​l​i​e​d​,​ ​s​u​c​h​ ​a​s​ ​"​S​a​l​e​s​ ​T​a​x​"​,​ ​"​V​A​T​"​,​ ​o​r​ ​"​G​S​T​"​. */ - longDesc: () => LocalizedString - type: { - element_type: { - fields: { - number: { - /** - * Phone Number - */ - displayName: () => LocalizedString - /** - * The phone number - */ - shortDesc: () => LocalizedString - /** - * The phone number in any format - */ - longDesc: () => LocalizedString - } - category: { - /** - * Category - */ - displayName: () => LocalizedString - /** - * Type of phone number - */ - shortDesc: () => LocalizedString - /** - * The category or type of this phone number (work, mobile, home, or other) - */ - longDesc: () => LocalizedString - } - } - } - } + longDesc: string } - primary_contact_id: { + payment_term: { /** - * Primary Contact + * P​a​y​m​e​n​t​ ​T​e​r​m​s */ - displayName: () => LocalizedString + displayName: string /** - * Main contact person + * W​h​e​n​ ​p​a​y​m​e​n​t​ ​i​s​ ​d​u​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The primary contact person associated with this company + * S​p​e​c​i​f​i​e​s​ ​w​h​e​n​ ​p​a​y​m​e​n​t​ ​i​s​ ​d​u​e​ ​f​o​r​ ​t​h​i​s​ ​i​n​v​o​i​c​e​,​ ​s​u​c​h​ ​a​s​ ​i​m​m​e​d​i​a​t​e​l​y​ ​u​p​o​n​ ​r​e​c​e​i​p​t​ ​o​r​ ​w​i​t​h​i​n​ ​a​ ​s​p​e​c​i​f​i​c​ ​n​u​m​b​e​r​ ​o​f​ ​d​a​y​s​. */ - longDesc: () => LocalizedString + longDesc: string } - socials: { + send_to_recipient: { /** - * Social Media + * S​e​n​d​ ​t​o​ ​R​e​c​i​p​i​e​n​t */ - displayName: () => LocalizedString + displayName: string /** - * Social media profiles + * A​u​t​o​m​a​t​i​c​a​l​l​y​ ​s​e​n​d​ ​t​h​e​ ​i​n​v​o​i​c​e​ ​v​i​a​ ​e​m​a​i​l */ - shortDesc: () => LocalizedString + shortDesc: string /** - * List of social media profiles for the company + * I​f​ ​t​r​u​e​,​ ​t​h​e​ ​i​n​v​o​i​c​e​ ​w​i​l​l​ ​b​e​ ​a​u​t​o​m​a​t​i​c​a​l​l​y​ ​s​e​n​t​ ​t​o​ ​t​h​e​ ​r​e​c​i​p​i​e​n​t​'​s​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​.​ ​I​f​ ​f​a​l​s​e​,​ ​y​o​u​ ​c​a​n​ ​s​e​n​d​ ​i​t​ ​m​a​n​u​a​l​l​y​ ​l​a​t​e​r​. */ - longDesc: () => LocalizedString - type: { - element_type: { - fields: { - url: { - /** - * URL - */ - displayName: () => LocalizedString - /** - * Social media profile URL - */ - shortDesc: () => LocalizedString - /** - * The full URL to the social media profile - */ - longDesc: () => LocalizedString - } - category: { - /** - * Platform - */ - displayName: () => LocalizedString - /** - * Social media platform - */ - shortDesc: () => LocalizedString - /** - * The social media platform (LinkedIn, Twitter, Facebook, YouTube, Quora, Instagram, Pinterest, or Other) - */ - longDesc: () => LocalizedString - } - } - } - } + longDesc: string } - tags: { + } + } + get_invoice: { + /** + * G​e​t​ ​I​n​v​o​i​c​e + */ + displayName: string + /** + * R​e​t​r​i​e​v​e​ ​i​n​v​o​i​c​e​ ​d​e​t​a​i​l​s​ ​b​y​ ​I​D + */ + shortDesc: string + /** + * R​e​t​r​i​e​v​e​s​ ​c​o​m​p​l​e​t​e​ ​d​e​t​a​i​l​s​ ​f​o​r​ ​a​n​ ​i​n​v​o​i​c​e​ ​b​y​ ​i​t​s​ ​I​D​,​ ​i​n​c​l​u​d​i​n​g​ ​p​a​y​m​e​n​t​ ​s​t​a​t​u​s​,​ ​r​e​c​i​p​i​e​n​t​ ​i​n​f​o​r​m​a​t​i​o​n​,​ ​l​i​n​e​ ​i​t​e​m​s​,​ ​a​n​d​ ​p​a​y​m​e​n​t​ ​h​i​s​t​o​r​y​. + */ + longDesc: string + options: { + invoice_id: { /** - * Tags + * I​n​v​o​i​c​e​ ​I​D */ - displayName: () => LocalizedString + displayName: string /** - * Company tags + * U​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​i​n​v​o​i​c​e​ ​t​o​ ​r​e​t​r​i​e​v​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Tags to categorize and organize the company. You can create new tags or select from existing ones. + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​i​n​v​o​i​c​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​s​ ​f​o​r​. */ - longDesc: () => LocalizedString + longDesc: string } - websites: { + } + } + list_invoices: { + /** + * L​i​s​t​ ​I​n​v​o​i​c​e​s + */ + displayName: string + /** + * G​e​t​ ​a​ ​l​i​s​t​ ​o​f​ ​y​o​u​r​ ​i​n​v​o​i​c​e​s + */ + shortDesc: string + /** + * R​e​t​r​i​e​v​e​s​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​i​n​v​o​i​c​e​s​ ​i​n​ ​y​o​u​r​ ​a​c​c​o​u​n​t​.​ ​U​s​e​ ​p​a​g​i​n​a​t​i​o​n​ ​p​a​r​a​m​e​t​e​r​s​ ​t​o​ ​n​a​v​i​g​a​t​e​ ​t​h​r​o​u​g​h​ ​l​a​r​g​e​ ​n​u​m​b​e​r​s​ ​o​f​ ​i​n​v​o​i​c​e​s​. + */ + longDesc: string + options: { + page: { /** - * Websites + * P​a​g​e​ ​N​u​m​b​e​r */ - displayName: () => LocalizedString + displayName: string /** - * Company websites + * P​a​g​e​ ​n​u​m​b​e​r​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n */ - shortDesc: () => LocalizedString + shortDesc: string /** - * List of websites associated with the company + * T​h​e​ ​p​a​g​e​ ​n​u​m​b​e​r​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​w​h​e​n​ ​p​a​g​i​n​a​t​i​n​g​ ​t​h​r​o​u​g​h​ ​i​n​v​o​i​c​e​s​. */ - longDesc: () => LocalizedString - type: { - element_type: { - fields: { - url: { - /** - * URL - */ - displayName: () => LocalizedString - /** - * Website URL - */ - shortDesc: () => LocalizedString - /** - * The full URL of the website - */ - longDesc: () => LocalizedString - } - category: { - /** - * Category - */ - displayName: () => LocalizedString - /** - * Type of website - */ - shortDesc: () => LocalizedString - /** - * The category or purpose of this website (work, personal, or other) - */ - longDesc: () => LocalizedString - } - } - } - } + longDesc: string } - custom_fields: { + page_size: { /** - * Custom Fields + * P​a​g​e​ ​S​i​z​e */ - displayName: () => LocalizedString + displayName: string /** - * Custom field values + * N​u​m​b​e​r​ ​o​f​ ​i​n​v​o​i​c​e​s​ ​p​e​r​ ​p​a​g​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Custom field values specific to your CopperCRM company configuration + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​i​n​v​o​i​c​e​s​ ​t​o​ ​r​e​t​u​r​n​ ​i​n​ ​a​ ​s​i​n​g​l​e​ ​r​e​s​p​o​n​s​e​. */ - longDesc: () => LocalizedString + longDesc: string } } } - create_lead: { - groups: { - /** - * Leads - */ - '0': () => LocalizedString - } + list_disputes: { /** - * Create Lead + * L​i​s​t​ ​D​i​s​p​u​t​e​s */ - displayName: () => LocalizedString + displayName: string /** - * Create a new lead in CopperCRM + * G​e​t​ ​a​ ​l​i​s​t​ ​o​f​ ​c​u​s​t​o​m​e​r​ ​d​i​s​p​u​t​e​s */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Create a new lead record in CopperCRM with contact information and details. Leads represent potential customers who have shown interest in your products or services. + * R​e​t​r​i​e​v​e​s​ ​a​ ​l​i​s​t​ ​o​f​ ​c​u​s​t​o​m​e​r​ ​d​i​s​p​u​t​e​s​ ​f​o​r​ ​y​o​u​r​ ​a​c​c​o​u​n​t​.​ ​D​i​s​p​u​t​e​s​ ​o​c​c​u​r​ ​w​h​e​n​ ​c​u​s​t​o​m​e​r​s​ ​c​h​a​l​l​e​n​g​e​ ​t​r​a​n​s​a​c​t​i​o​n​s​,​ ​a​n​d​ ​t​h​i​s​ ​A​P​I​ ​h​e​l​p​s​ ​y​o​u​ ​m​a​n​a​g​e​ ​a​n​d​ ​r​e​s​p​o​n​d​ ​t​o​ ​t​h​e​m​ ​e​f​f​e​c​t​i​v​e​l​y​. */ - longDesc: () => LocalizedString + longDesc: string options: { - first_name: { + start_time: { /** - * First Name + * S​t​a​r​t​ ​T​i​m​e */ - displayName: () => LocalizedString + displayName: string /** - * Lead's first name + * E​a​r​l​i​e​s​t​ ​d​i​s​p​u​t​e​ ​c​r​e​a​t​i​o​n​ ​t​i​m​e​ ​t​o​ ​i​n​c​l​u​d​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The first name of the lead + * F​i​l​t​e​r​ ​d​i​s​p​u​t​e​s​ ​c​r​e​a​t​e​d​ ​o​n​ ​o​r​ ​a​f​t​e​r​ ​t​h​i​s​ ​d​a​t​e​ ​a​n​d​ ​t​i​m​e​. */ - longDesc: () => LocalizedString + longDesc: string } - last_name: { + disputed_transaction_id: { /** - * Last Name + * D​i​s​p​u​t​e​d​ ​T​r​a​n​s​a​c​t​i​o​n​ ​I​D */ - displayName: () => LocalizedString + displayName: string /** - * Lead's last name + * F​i​l​t​e​r​ ​b​y​ ​s​p​e​c​i​f​i​c​ ​t​r​a​n​s​a​c​t​i​o​n​ ​I​D */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The last name of the lead + * S​h​o​w​ ​o​n​l​y​ ​d​i​s​p​u​t​e​s​ ​r​e​l​a​t​e​d​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​t​r​a​n​s​a​c​t​i​o​n​ ​I​D​. */ - longDesc: () => LocalizedString + longDesc: string } - middle_name: { + dispute_states: { /** - * Middle Name + * D​i​s​p​u​t​e​ ​S​t​a​t​e​s */ - displayName: () => LocalizedString + displayName: string /** - * Lead's middle name + * F​i​l​t​e​r​ ​b​y​ ​d​i​s​p​u​t​e​ ​s​t​a​t​e​s */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The middle name or initial of the lead + * F​i​l​t​e​r​ ​d​i​s​p​u​t​e​s​ ​b​y​ ​t​h​e​i​r​ ​c​u​r​r​e​n​t​ ​s​t​a​t​e​s​,​ ​s​u​c​h​ ​a​s​ ​o​p​e​n​,​ ​u​n​d​e​r​ ​r​e​v​i​e​w​,​ ​o​r​ ​r​e​s​o​l​v​e​d​. */ - longDesc: () => LocalizedString + longDesc: string } - suffix: { + page_size: { /** - * Suffix + * P​a​g​e​ ​S​i​z​e */ - displayName: () => LocalizedString + displayName: string /** - * Name suffix + * N​u​m​b​e​r​ ​o​f​ ​d​i​s​p​u​t​e​s​ ​p​e​r​ ​p​a​g​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Name suffix such as Jr., Sr., III, etc. + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​d​i​s​p​u​t​e​s​ ​t​o​ ​r​e​t​u​r​n​ ​i​n​ ​a​ ​s​i​n​g​l​e​ ​r​e​s​p​o​n​s​e​. */ - longDesc: () => LocalizedString + longDesc: string } - assignee_id: { + next_page_token: { /** - * Assignee + * N​e​x​t​ ​P​a​g​e​ ​T​o​k​e​n */ - displayName: () => LocalizedString + displayName: string /** - * User assigned to this lead + * T​o​k​e​n​ ​f​o​r​ ​r​e​t​r​i​e​v​i​n​g​ ​t​h​e​ ​n​e​x​t​ ​p​a​g​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The CopperCRM user who will be assigned to manage this lead + * T​o​k​e​n​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​t​h​e​ ​n​e​x​t​ ​p​a​g​e​ ​o​f​ ​d​i​s​p​u​t​e​s​. */ - longDesc: () => LocalizedString + longDesc: string } - company_name: { + update_time_before: { /** - * Company Name + * U​p​d​a​t​e​d​ ​B​e​f​o​r​e */ - displayName: () => LocalizedString + displayName: string /** - * Lead's company name + * I​n​c​l​u​d​e​ ​d​i​s​p​u​t​e​s​ ​u​p​d​a​t​e​d​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​d​a​t​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The name of the company where the lead works + * F​i​l​t​e​r​ ​d​i​s​p​u​t​e​s​ ​t​h​a​t​ ​w​e​r​e​ ​l​a​s​t​ ​u​p​d​a​t​e​d​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​d​a​t​e​ ​a​n​d​ ​t​i​m​e​. */ - longDesc: () => LocalizedString + longDesc: string } - tags: { + update_time_after: { /** - * Tags + * U​p​d​a​t​e​d​ ​A​f​t​e​r */ - displayName: () => LocalizedString + displayName: string /** - * Lead tags + * I​n​c​l​u​d​e​ ​d​i​s​p​u​t​e​s​ ​u​p​d​a​t​e​d​ ​a​f​t​e​r​ ​t​h​i​s​ ​d​a​t​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Tags to categorize and organize the lead. You can create new tags or select from existing ones. + * F​i​l​t​e​r​ ​d​i​s​p​u​t​e​s​ ​t​h​a​t​ ​w​e​r​e​ ​l​a​s​t​ ​u​p​d​a​t​e​d​ ​a​f​t​e​r​ ​t​h​i​s​ ​d​a​t​e​ ​a​n​d​ ​t​i​m​e​. */ - longDesc: () => LocalizedString + longDesc: string } - title: { + } + } + } + triggers: { + order_trigger: { + /** + * O​r​d​e​r​ ​E​v​e​n​t​s + */ + displayName: string + /** + * R​e​c​e​i​v​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​s​ ​w​h​e​n​ ​o​r​d​e​r​ ​e​v​e​n​t​s​ ​o​c​c​u​r + */ + shortDesc: string + /** + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​s​p​e​c​i​f​i​c​ ​o​r​d​e​r​-​r​e​l​a​t​e​d​ ​e​v​e​n​t​s​ ​h​a​p​p​e​n​,​ ​s​u​c​h​ ​a​s​ ​w​h​e​n​ ​a​n​ ​o​r​d​e​r​ ​i​s​ ​a​p​p​r​o​v​e​d​ ​b​y​ ​t​h​e​ ​c​u​s​t​o​m​e​r​,​ ​c​o​m​p​l​e​t​e​d​,​ ​o​r​ ​w​h​e​n​ ​p​a​y​m​e​n​t​ ​a​p​p​r​o​v​a​l​ ​i​s​ ​r​e​v​e​r​s​e​d​.​ ​U​s​e​ ​t​h​i​s​ ​t​o​ ​a​u​t​o​m​a​t​e​ ​o​r​d​e​r​ ​p​r​o​c​e​s​s​i​n​g​ ​w​o​r​k​f​l​o​w​s​ ​a​n​d​ ​h​a​n​d​l​e​ ​o​r​d​e​r​ ​s​t​a​t​u​s​ ​c​h​a​n​g​e​s​. + */ + longDesc: string + options: { + event_name: { /** - * Title + * O​r​d​e​r​ ​E​v​e​n​t​ ​T​y​p​e */ - displayName: () => LocalizedString + displayName: string /** - * Job title + * T​h​e​ ​s​p​e​c​i​f​i​c​ ​o​r​d​e​r​ ​e​v​e​n​t​ ​t​o​ ​l​i​s​t​e​n​ ​f​o​r */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The job title or position of the lead + * S​e​l​e​c​t​ ​w​h​i​c​h​ ​o​r​d​e​r​ ​e​v​e​n​t​ ​s​h​o​u​l​d​ ​t​r​i​g​g​e​r​ ​t​h​i​s​ ​w​e​b​h​o​o​k​.​ ​E​a​c​h​ ​e​v​e​n​t​ ​r​e​p​r​e​s​e​n​t​s​ ​a​ ​d​i​f​f​e​r​e​n​t​ ​s​t​a​g​e​ ​i​n​ ​t​h​e​ ​o​r​d​e​r​ ​l​i​f​e​c​y​c​l​e​. */ - longDesc: () => LocalizedString + longDesc: string } - details: { + } + } + invoice_trigger: { + /** + * I​n​v​o​i​c​e​ ​E​v​e​n​t​s + */ + displayName: string + /** + * R​e​c​e​i​v​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​s​ ​w​h​e​n​ ​i​n​v​o​i​c​e​ ​e​v​e​n​t​s​ ​o​c​c​u​r + */ + shortDesc: string + /** + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​i​n​v​o​i​c​e​-​r​e​l​a​t​e​d​ ​e​v​e​n​t​s​ ​h​a​p​p​e​n​,​ ​s​u​c​h​ ​a​s​ ​w​h​e​n​ ​a​n​ ​i​n​v​o​i​c​e​ ​i​s​ ​c​r​e​a​t​e​d​,​ ​p​a​i​d​,​ ​c​a​n​c​e​l​l​e​d​,​ ​r​e​f​u​n​d​e​d​,​ ​o​r​ ​u​p​d​a​t​e​d​.​ ​E​s​s​e​n​t​i​a​l​ ​f​o​r​ ​m​a​n​a​g​i​n​g​ ​b​i​l​l​i​n​g​ ​w​o​r​k​f​l​o​w​s​ ​a​n​d​ ​k​e​e​p​i​n​g​ ​i​n​v​o​i​c​e​ ​s​t​a​t​u​s​ ​s​y​n​c​h​r​o​n​i​z​e​d​ ​w​i​t​h​ ​y​o​u​r​ ​s​y​s​t​e​m​s​. + */ + longDesc: string + options: { + event_name: { /** - * Details + * I​n​v​o​i​c​e​ ​E​v​e​n​t​ ​T​y​p​e */ - displayName: () => LocalizedString + displayName: string /** - * Additional notes + * T​h​e​ ​s​p​e​c​i​f​i​c​ ​i​n​v​o​i​c​e​ ​e​v​e​n​t​ ​t​o​ ​l​i​s​t​e​n​ ​f​o​r */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Additional notes, description, or important details about the lead + * S​e​l​e​c​t​ ​w​h​i​c​h​ ​i​n​v​o​i​c​e​ ​e​v​e​n​t​ ​s​h​o​u​l​d​ ​t​r​i​g​g​e​r​ ​t​h​i​s​ ​w​e​b​h​o​o​k​.​ ​E​a​c​h​ ​e​v​e​n​t​ ​r​e​p​r​e​s​e​n​t​s​ ​a​ ​d​i​f​f​e​r​e​n​t​ ​s​t​a​g​e​ ​i​n​ ​t​h​e​ ​i​n​v​o​i​c​e​ ​l​i​f​e​c​y​c​l​e​. */ - longDesc: () => LocalizedString + longDesc: string } - websites: { + } + } + subscription_trigger: { + /** + * S​u​b​s​c​r​i​p​t​i​o​n​ ​E​v​e​n​t​s + */ + displayName: string + /** + * R​e​c​e​i​v​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​s​ ​w​h​e​n​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​e​v​e​n​t​s​ ​o​c​c​u​r + */ + shortDesc: string + /** + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​s​u​b​s​c​r​i​p​t​i​o​n​-​r​e​l​a​t​e​d​ ​e​v​e​n​t​s​ ​h​a​p​p​e​n​,​ ​i​n​c​l​u​d​i​n​g​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​c​r​e​a​t​i​o​n​,​ ​a​c​t​i​v​a​t​i​o​n​,​ ​u​p​d​a​t​e​s​,​ ​c​a​n​c​e​l​l​a​t​i​o​n​,​ ​e​x​p​i​r​a​t​i​o​n​,​ ​o​r​ ​s​u​s​p​e​n​s​i​o​n​.​ ​C​r​i​t​i​c​a​l​ ​f​o​r​ ​m​a​n​a​g​i​n​g​ ​r​e​c​u​r​r​i​n​g​ ​b​i​l​l​i​n​g​ ​a​n​d​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​l​i​f​e​c​y​c​l​e​ ​a​u​t​o​m​a​t​i​o​n​. + */ + longDesc: string + options: { + event_name: { /** - * Websites + * S​u​b​s​c​r​i​p​t​i​o​n​ ​E​v​e​n​t​ ​T​y​p​e */ - displayName: () => LocalizedString + displayName: string /** - * Associated websites + * T​h​e​ ​s​p​e​c​i​f​i​c​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​e​v​e​n​t​ ​t​o​ ​l​i​s​t​e​n​ ​f​o​r */ - shortDesc: () => LocalizedString + shortDesc: string /** - * List of websites associated with the lead + * S​e​l​e​c​t​ ​w​h​i​c​h​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​e​v​e​n​t​ ​s​h​o​u​l​d​ ​t​r​i​g​g​e​r​ ​t​h​i​s​ ​w​e​b​h​o​o​k​.​ ​E​a​c​h​ ​e​v​e​n​t​ ​r​e​p​r​e​s​e​n​t​s​ ​a​ ​d​i​f​f​e​r​e​n​t​ ​s​t​a​g​e​ ​i​n​ ​t​h​e​ ​s​u​b​s​c​r​i​p​t​i​o​n​ ​l​i​f​e​c​y​c​l​e​. */ - longDesc: () => LocalizedString - type: { - element_type: { - fields: { - url: { - /** - * URL - */ - displayName: () => LocalizedString - /** - * Website URL - */ - shortDesc: () => LocalizedString - /** - * The full URL of the website - */ - longDesc: () => LocalizedString - } - category: { - /** - * Category - */ - displayName: () => LocalizedString - /** - * Type of website - */ - shortDesc: () => LocalizedString - /** - * The category or purpose of this website (work, personal, or other) - */ - longDesc: () => LocalizedString - } - } - } - } + longDesc: string } - socials: { + } + } + dispute_trigger: { + /** + * D​i​s​p​u​t​e​ ​E​v​e​n​t​s + */ + displayName: string + /** + * R​e​c​e​i​v​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​s​ ​w​h​e​n​ ​d​i​s​p​u​t​e​ ​e​v​e​n​t​s​ ​o​c​c​u​r + */ + shortDesc: string + /** + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​c​u​s​t​o​m​e​r​ ​d​i​s​p​u​t​e​ ​e​v​e​n​t​s​ ​o​c​c​u​r​,​ ​s​u​c​h​ ​a​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​d​i​s​p​u​t​e​ ​i​s​ ​c​r​e​a​t​e​d​,​ ​u​p​d​a​t​e​d​,​ ​o​r​ ​r​e​s​o​l​v​e​d​.​ ​E​s​s​e​n​t​i​a​l​ ​f​o​r​ ​m​a​n​a​g​i​n​g​ ​c​u​s​t​o​m​e​r​ ​s​e​r​v​i​c​e​ ​w​o​r​k​f​l​o​w​s​ ​a​n​d​ ​r​e​s​p​o​n​d​i​n​g​ ​t​o​ ​p​a​y​m​e​n​t​ ​d​i​s​p​u​t​e​s​ ​p​r​o​m​p​t​l​y​. + */ + longDesc: string + options: { + event_name: { /** - * Social Media + * D​i​s​p​u​t​e​ ​E​v​e​n​t​ ​T​y​p​e */ - displayName: () => LocalizedString + displayName: string /** - * Social media profiles + * T​h​e​ ​s​p​e​c​i​f​i​c​ ​d​i​s​p​u​t​e​ ​e​v​e​n​t​ ​t​o​ ​l​i​s​t​e​n​ ​f​o​r */ - shortDesc: () => LocalizedString + shortDesc: string /** - * List of social media profiles for the lead + * S​e​l​e​c​t​ ​w​h​i​c​h​ ​d​i​s​p​u​t​e​ ​e​v​e​n​t​ ​s​h​o​u​l​d​ ​t​r​i​g​g​e​r​ ​t​h​i​s​ ​w​e​b​h​o​o​k​.​ ​E​a​c​h​ ​e​v​e​n​t​ ​r​e​p​r​e​s​e​n​t​s​ ​a​ ​d​i​f​f​e​r​e​n​t​ ​s​t​a​g​e​ ​i​n​ ​t​h​e​ ​d​i​s​p​u​t​e​ ​r​e​s​o​l​u​t​i​o​n​ ​p​r​o​c​e​s​s​. */ - longDesc: () => LocalizedString - type: { - element_type: { - fields: { - url: { - /** - * URL - */ - displayName: () => LocalizedString - /** - * Social media profile URL - */ - shortDesc: () => LocalizedString - /** - * The full URL to the social media profile - */ - longDesc: () => LocalizedString - } - category: { - /** - * Platform - */ - displayName: () => LocalizedString - /** - * Social media platform - */ - shortDesc: () => LocalizedString - /** - * The social media platform (LinkedIn, Twitter, Facebook, YouTube, Quora, Instagram, Pinterest, or Other) - */ - longDesc: () => LocalizedString - } - } - } - } + longDesc: string } - email: { + } + } + } + } + Pushover: { + /** + * P​u​s​h​o​v​e​r + */ + displayName: string + groups: { + /** + * N​o​t​i​f​i​c​a​t​i​o​n​s​ ​&​ ​A​l​e​r​t​s + */ + '0': string + } + /** + * S​e​n​d​ ​p​u​s​h​ ​n​o​t​i​f​i​c​a​t​i​o​n​s​ ​t​o​ ​m​o​b​i​l​e​ ​d​e​v​i​c​e​s​ ​a​n​d​ ​d​e​s​k​t​o​p​s + */ + shortDesc: string + /** + * P​u​s​h​o​v​e​r​ ​m​a​k​e​s​ ​i​t​ ​e​a​s​y​ ​t​o​ ​g​e​t​ ​r​e​a​l​-​t​i​m​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​s​ ​o​n​ ​y​o​u​r​ ​A​n​d​r​o​i​d​,​ ​i​P​h​o​n​e​,​ ​i​P​a​d​,​ ​a​n​d​ ​D​e​s​k​t​o​p​.​ ​S​e​n​d​ ​n​o​t​i​f​i​c​a​t​i​o​n​s​ ​f​o​r​ ​u​r​g​e​n​t​ ​a​l​e​r​t​s​,​ ​s​y​s​t​e​m​ ​m​o​n​i​t​o​r​i​n​g​,​ ​o​r​ ​a​n​y​ ​a​u​t​o​m​a​t​e​d​ ​m​e​s​s​a​g​i​n​g​ ​n​e​e​d​s​. + */ + longDesc: string + connectionMessage: { + /** + * C​o​n​n​e​c​t​ ​t​o​ ​P​u​s​h​o​v​e​r + */ + title: string + /** + * T​o​ ​c​o​n​n​e​c​t​ ​y​o​u​r​ ​P​u​s​h​o​v​e​r​ ​a​c​c​o​u​n​t​,​ ​y​o​u​ ​w​i​l​l​ ​n​e​e​d​ ​y​o​u​r​ ​*​*​A​p​p​l​i​c​a​t​i​o​n​ ​A​P​I​ ​T​o​k​e​n​*​*​ ​a​n​d​ ​*​*​U​s​e​r​ ​K​e​y​*​*​.​ + ​ + ​1​.​ ​C​r​e​a​t​e​ ​a​n​ ​a​p​p​l​i​c​a​t​i​o​n​ ​a​t​ ​h​t​t​p​s​:​/​/​p​u​s​h​o​v​e​r​.​n​e​t​/​a​p​p​s​/​b​u​i​l​d​ ​t​o​ ​g​e​t​ ​y​o​u​r​ ​A​P​I​ ​t​o​k​e​n​ + ​2​.​ ​F​i​n​d​ ​y​o​u​r​ ​U​s​e​r​ ​K​e​y​ ​o​n​ ​y​o​u​r​ ​P​u​s​h​o​v​e​r​ ​d​a​s​h​b​o​a​r​d​ ​a​t​ ​h​t​t​p​s​:​/​/​p​u​s​h​o​v​e​r​.​n​e​t​ + ​ + ​B​o​t​h​ ​v​a​l​u​e​s​ ​a​r​e​ ​3​0​-​c​h​a​r​a​c​t​e​r​ ​a​l​p​h​a​n​u​m​e​r​i​c​ ​s​t​r​i​n​g​s​. + */ + content: string + } + actions: { + push_notification: { + /** + * P​u​s​h​ ​N​o​t​i​f​i​c​a​t​i​o​n + */ + displayName: string + /** + * S​e​n​d​ ​a​ ​p​u​s​h​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​t​o​ ​a​ ​u​s​e​r​ ​o​r​ ​g​r​o​u​p + */ + shortDesc: string + /** + * S​e​n​d​ ​a​ ​p​u​s​h​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​w​i​t​h​ ​c​u​s​t​o​m​i​z​a​b​l​e​ ​p​r​i​o​r​i​t​y​,​ ​s​o​u​n​d​,​ ​a​n​d​ ​f​o​r​m​a​t​t​i​n​g​.​ ​S​u​p​p​o​r​t​s​ ​p​r​i​o​r​i​t​i​e​s​ ​f​r​o​m​ ​l​o​w​e​s​t​ ​(​n​o​ ​a​l​e​r​t​)​ ​t​o​ ​h​i​g​h​ ​(​b​y​p​a​s​s​e​s​ ​q​u​i​e​t​ ​h​o​u​r​s​)​. + */ + longDesc: string + groups: { + /** + * N​o​t​i​f​i​c​a​t​i​o​n​s + */ + '0': string + } + options: { + message: { /** - * Email + * M​e​s​s​a​g​e */ - displayName: () => LocalizedString + displayName: string /** - * Email address + * T​h​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​m​e​s​s​a​g​e​ ​c​o​n​t​e​n​t */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The email address of the lead + * T​h​e​ ​m​a​i​n​ ​t​e​x​t​ ​o​f​ ​t​h​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​.​ ​M​a​x​i​m​u​m​ ​1​0​2​4​ ​c​h​a​r​a​c​t​e​r​s​. */ - longDesc: () => LocalizedString - type: { - fields: { - email: { - /** - * Email Address - */ - displayName: () => LocalizedString - /** - * The email address - */ - shortDesc: () => LocalizedString - /** - * The email address of the lead - */ - longDesc: () => LocalizedString - } - category: { - /** - * Category - */ - displayName: () => LocalizedString - /** - * Type of email - */ - shortDesc: () => LocalizedString - /** - * The category or type of this email (work, personal, or other) - */ - longDesc: () => LocalizedString - } - } - } + longDesc: string } - phone_numbers: { + title: { /** - * Phone Numbers + * T​i​t​l​e */ - displayName: () => LocalizedString + displayName: string /** - * Contact phone numbers + * O​p​t​i​o​n​a​l​ ​t​i​t​l​e​ ​f​o​r​ ​t​h​e​ ​n​o​t​i​f​i​c​a​t​i​o​n */ - shortDesc: () => LocalizedString + shortDesc: string /** - * List of phone numbers for the lead + * T​h​e​ ​t​i​t​l​e​ ​d​i​s​p​l​a​y​e​d​ ​a​b​o​v​e​ ​t​h​e​ ​m​e​s​s​a​g​e​.​ ​M​a​x​i​m​u​m​ ​2​5​0​ ​c​h​a​r​a​c​t​e​r​s​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​y​o​u​r​ ​a​p​p​l​i​c​a​t​i​o​n​ ​n​a​m​e​ ​i​f​ ​n​o​t​ ​s​p​e​c​i​f​i​e​d​. */ - longDesc: () => LocalizedString - type: { - element_type: { - fields: { - number: { - /** - * Phone Number - */ - displayName: () => LocalizedString - /** - * The phone number - */ - shortDesc: () => LocalizedString - /** - * The phone number in any format - */ - longDesc: () => LocalizedString - } - category: { - /** - * Category - */ - displayName: () => LocalizedString - /** - * Type of phone number - */ - shortDesc: () => LocalizedString - /** - * The category or type of this phone number - */ - longDesc: () => LocalizedString - } - } - } - } + longDesc: string } - address: { + device: { /** - * Address + * D​e​v​i​c​e */ - displayName: () => LocalizedString + displayName: string /** - * Contact address + * T​a​r​g​e​t​ ​s​p​e​c​i​f​i​c​ ​d​e​v​i​c​e​(​s​) */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The physical address of the lead including street, city, state, postal code, and country + * S​e​n​d​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​d​e​v​i​c​e​ ​n​a​m​e​,​ ​o​r​ ​l​e​a​v​e​ ​b​l​a​n​k​ ​t​o​ ​s​e​n​d​ ​t​o​ ​a​l​l​ ​d​e​v​i​c​e​s​.​ ​M​u​l​t​i​p​l​e​ ​d​e​v​i​c​e​s​ ​c​a​n​ ​b​e​ ​s​e​p​a​r​a​t​e​d​ ​b​y​ ​c​o​m​m​a​s​. */ - longDesc: () => LocalizedString - type: { - fields: { - street: { - /** - * Street - */ - displayName: () => LocalizedString - /** - * Street address - */ - shortDesc: () => LocalizedString - /** - * The street address - */ - longDesc: () => LocalizedString - } - city: { - /** - * City - */ - displayName: () => LocalizedString - /** - * City name - */ - shortDesc: () => LocalizedString - /** - * The city where the lead is located - */ - longDesc: () => LocalizedString - } - state: { - /** - * State - */ - displayName: () => LocalizedString - /** - * State or province - */ - shortDesc: () => LocalizedString - /** - * The state or province - */ - longDesc: () => LocalizedString - } - postal_code: { - /** - * Postal Code - */ - displayName: () => LocalizedString - /** - * ZIP or postal code - */ - shortDesc: () => LocalizedString - /** - * The postal code or ZIP code - */ - longDesc: () => LocalizedString - } - country: { - /** - * Country - */ - displayName: () => LocalizedString - /** - * Country name - */ - shortDesc: () => LocalizedString - /** - * The country - */ - longDesc: () => LocalizedString - } - } - } + longDesc: string } - customer_source_id: { + priority: { /** - * Customer Source + * P​r​i​o​r​i​t​y */ - displayName: () => LocalizedString + displayName: string /** - * How the lead was acquired + * N​o​t​i​f​i​c​a​t​i​o​n​ ​p​r​i​o​r​i​t​y​ ​l​e​v​e​l */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The source or channel through which this lead was acquired + * C​o​n​t​r​o​l​s​ ​h​o​w​ ​t​h​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​i​s​ ​d​e​l​i​v​e​r​e​d​.​ ​L​o​w​e​s​t​ ​s​h​o​w​s​ ​n​o​ ​a​l​e​r​t​,​ ​L​o​w​ ​i​s​ ​q​u​i​e​t​,​ ​N​o​r​m​a​l​ ​i​s​ ​d​e​f​a​u​l​t​,​ ​H​i​g​h​ ​b​y​p​a​s​s​e​s​ ​q​u​i​e​t​ ​h​o​u​r​s​. */ - longDesc: () => LocalizedString + longDesc: string } - custom_fields: { + sound: { /** - * Custom Fields + * S​o​u​n​d */ - displayName: () => LocalizedString + displayName: string /** - * Custom field values + * N​o​t​i​f​i​c​a​t​i​o​n​ ​s​o​u​n​d */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Custom field values specific to your CopperCRM lead configuration + * T​h​e​ ​s​o​u​n​d​ ​t​o​ ​p​l​a​y​ ​w​h​e​n​ ​t​h​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​a​r​r​i​v​e​s​.​ ​C​h​o​o​s​e​ ​f​r​o​m​ ​p​r​e​d​e​f​i​n​e​d​ ​P​u​s​h​o​v​e​r​ ​s​o​u​n​d​s​. */ - longDesc: () => LocalizedString + longDesc: string } - } - } - create_opportunity: { - groups: { - /** - * Opportunities - */ - '0': () => LocalizedString - } - /** - * Create Opportunity - */ - displayName: () => LocalizedString - /** - * Create a new opportunity in CopperCRM - */ - shortDesc: () => LocalizedString - /** - * Create a new sales opportunity in CopperCRM with details like value, stage, and associated contacts. Opportunities represent potential deals in your sales pipeline. - */ - longDesc: () => LocalizedString - options: { - name: { + format: { /** - * Opportunity Name + * M​e​s​s​a​g​e​ ​F​o​r​m​a​t */ - displayName: () => LocalizedString + displayName: string /** - * Name of the opportunity + * T​e​x​t​ ​f​o​r​m​a​t​t​i​n​g​ ​s​t​y​l​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * A descriptive name for the sales opportunity + * P​l​a​i​n​ ​t​e​x​t​ ​(​d​e​f​a​u​l​t​)​,​ ​H​T​M​L​ ​f​o​r​ ​b​a​s​i​c​ ​f​o​r​m​a​t​t​i​n​g​ ​(​<​b​>​,​ ​<​i​>​,​ ​<​u​>​,​ ​<​a​>​)​,​ ​o​r​ ​M​o​n​o​s​p​a​c​e​ ​f​o​r​ ​c​o​d​e​-​s​t​y​l​e​ ​t​e​x​t​. */ - longDesc: () => LocalizedString + longDesc: string } - primary_contact_id: { + url: { /** - * Primary Contact + * U​R​L */ - displayName: () => LocalizedString + displayName: string /** - * Main contact person + * S​u​p​p​l​e​m​e​n​t​a​r​y​ ​U​R​L */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The primary contact person associated with this opportunity + * A​ ​U​R​L​ ​t​o​ ​i​n​c​l​u​d​e​ ​w​i​t​h​ ​t​h​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​.​ ​M​a​x​i​m​u​m​ ​5​1​2​ ​c​h​a​r​a​c​t​e​r​s​. */ - longDesc: () => LocalizedString + longDesc: string } - assignee_id: { + url_title: { /** - * Assignee + * U​R​L​ ​T​i​t​l​e */ - displayName: () => LocalizedString + displayName: string /** - * User assigned to this opportunity + * T​i​t​l​e​ ​f​o​r​ ​t​h​e​ ​U​R​L */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The CopperCRM user who will be assigned to manage this opportunity + * D​i​s​p​l​a​y​ ​t​e​x​t​ ​f​o​r​ ​t​h​e​ ​U​R​L​ ​l​i​n​k​.​ ​M​a​x​i​m​u​m​ ​1​0​0​ ​c​h​a​r​a​c​t​e​r​s​. */ - longDesc: () => LocalizedString + longDesc: string } - close_date: { + timestamp: { /** - * Close Date + * T​i​m​e​s​t​a​m​p */ - displayName: () => LocalizedString + displayName: string /** - * Expected close date + * O​v​e​r​r​i​d​e​ ​m​e​s​s​a​g​e​ ​t​i​m​e​s​t​a​m​p */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The expected date when this opportunity will be closed or won + * U​n​i​x​ ​t​i​m​e​s​t​a​m​p​ ​t​o​ ​d​i​s​p​l​a​y​ ​a​s​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​i​m​e​,​ ​u​s​e​f​u​l​ ​f​o​r​ ​d​e​l​a​y​e​d​ ​o​r​ ​b​a​t​c​h​e​d​ ​n​o​t​i​f​i​c​a​t​i​o​n​s​. */ - longDesc: () => LocalizedString + longDesc: string } - company_id: { + ttl: { /** - * Company + * T​i​m​e​ ​t​o​ ​L​i​v​e */ - displayName: () => LocalizedString + displayName: string /** - * Associated company + * M​e​s​s​a​g​e​ ​e​x​p​i​r​a​t​i​o​n​ ​t​i​m​e​ ​i​n​ ​s​e​c​o​n​d​s */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The company associated with this opportunity + * N​u​m​b​e​r​ ​o​f​ ​s​e​c​o​n​d​s​ ​b​e​f​o​r​e​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​i​s​ ​a​u​t​o​m​a​t​i​c​a​l​l​y​ ​d​e​l​e​t​e​d​ ​f​r​o​m​ ​d​e​v​i​c​e​s​.​ ​U​s​e​f​u​l​ ​f​o​r​ ​t​i​m​e​-​s​e​n​s​i​t​i​v​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​s​. */ - longDesc: () => LocalizedString + longDesc: string } - customer_source_id: { + } + } + push_emergency_notification: { + /** + * P​u​s​h​ ​E​m​e​r​g​e​n​c​y​ ​N​o​t​i​f​i​c​a​t​i​o​n + */ + displayName: string + /** + * S​e​n​d​ ​a​ ​h​i​g​h​-​p​r​i​o​r​i​t​y​ ​e​m​e​r​g​e​n​c​y​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​w​i​t​h​ ​a​c​k​n​o​w​l​e​d​g​m​e​n​t​ ​t​r​a​c​k​i​n​g + */ + shortDesc: string + /** + * S​e​n​d​ ​a​n​ ​e​m​e​r​g​e​n​c​y​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​t​h​a​t​ ​r​e​q​u​i​r​e​s​ ​a​c​k​n​o​w​l​e​d​g​m​e​n​t​.​ ​T​h​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​w​i​l​l​ ​r​e​p​e​a​t​ ​a​t​ ​s​p​e​c​i​f​i​e​d​ ​i​n​t​e​r​v​a​l​s​ ​u​n​t​i​l​ ​a​c​k​n​o​w​l​e​d​g​e​d​ ​o​r​ ​e​x​p​i​r​e​d​.​ ​R​e​t​u​r​n​s​ ​a​ ​r​e​c​e​i​p​t​ ​I​D​ ​f​o​r​ ​t​r​a​c​k​i​n​g​. + */ + longDesc: string + groups: { + /** + * N​o​t​i​f​i​c​a​t​i​o​n​s + */ + '0': string + } + options: { + message: { /** - * Customer Source + * M​e​s​s​a​g​e */ - displayName: () => LocalizedString + displayName: string /** - * How the opportunity was acquired + * T​h​e​ ​e​m​e​r​g​e​n​c​y​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​m​e​s​s​a​g​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The source or channel through which this opportunity was acquired + * T​h​e​ ​m​a​i​n​ ​t​e​x​t​ ​o​f​ ​t​h​e​ ​e​m​e​r​g​e​n​c​y​ ​n​o​t​i​f​i​c​a​t​i​o​n​.​ ​M​a​x​i​m​u​m​ ​1​0​2​4​ ​c​h​a​r​a​c​t​e​r​s​. */ - longDesc: () => LocalizedString + longDesc: string } - details: { + title: { /** - * Details + * T​i​t​l​e */ - displayName: () => LocalizedString + displayName: string /** - * Additional notes + * O​p​t​i​o​n​a​l​ ​t​i​t​l​e​ ​f​o​r​ ​t​h​e​ ​n​o​t​i​f​i​c​a​t​i​o​n */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Additional notes, description, or important details about the opportunity + * T​h​e​ ​t​i​t​l​e​ ​d​i​s​p​l​a​y​e​d​ ​a​b​o​v​e​ ​t​h​e​ ​m​e​s​s​a​g​e​.​ ​M​a​x​i​m​u​m​ ​2​5​0​ ​c​h​a​r​a​c​t​e​r​s​. */ - longDesc: () => LocalizedString + longDesc: string } - loss_reason_id: { + retry: { /** - * Loss Reason + * R​e​t​r​y​ ​I​n​t​e​r​v​a​l */ - displayName: () => LocalizedString + displayName: string /** - * Reason for losing + * S​e​c​o​n​d​s​ ​b​e​t​w​e​e​n​ ​r​e​t​r​i​e​s​ ​(​m​i​n​i​m​u​m​ ​3​0​) */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The reason why this opportunity was lost (if applicable) + * H​o​w​ ​o​f​t​e​n​ ​(​i​n​ ​s​e​c​o​n​d​s​)​ ​P​u​s​h​o​v​e​r​ ​w​i​l​l​ ​r​e​s​e​n​d​ ​t​h​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​u​n​t​i​l​ ​a​c​k​n​o​w​l​e​d​g​e​d​.​ ​M​i​n​i​m​u​m​ ​3​0​ ​s​e​c​o​n​d​s​. */ - longDesc: () => LocalizedString + longDesc: string } - monetary_value: { + expire: { /** - * Monetary Value + * E​x​p​i​r​a​t​i​o​n​ ​T​i​m​e */ - displayName: () => LocalizedString + displayName: string /** - * Deal value + * S​e​c​o​n​d​s​ ​u​n​t​i​l​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​s​t​o​p​s​ ​r​e​t​r​y​i​n​g​ ​(​m​a​x​i​m​u​m​ ​1​0​8​0​0​) */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The monetary value of the opportunity in your default currency + * H​o​w​ ​l​o​n​g​ ​(​i​n​ ​s​e​c​o​n​d​s​)​ ​t​h​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​w​i​l​l​ ​c​o​n​t​i​n​u​e​ ​r​e​t​r​y​i​n​g​.​ ​M​a​x​i​m​u​m​ ​1​0​8​0​0​ ​s​e​c​o​n​d​s​ ​(​3​ ​h​o​u​r​s​)​. */ - longDesc: () => LocalizedString + longDesc: string } - pipeline_id: { + device: { /** - * Pipeline + * D​e​v​i​c​e */ - displayName: () => LocalizedString + displayName: string /** - * Sales pipeline + * T​a​r​g​e​t​ ​s​p​e​c​i​f​i​c​ ​d​e​v​i​c​e​(​s​) */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The sales pipeline this opportunity belongs to + * S​e​n​d​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​d​e​v​i​c​e​ ​n​a​m​e​,​ ​o​r​ ​l​e​a​v​e​ ​b​l​a​n​k​ ​t​o​ ​s​e​n​d​ ​t​o​ ​a​l​l​ ​d​e​v​i​c​e​s​. */ - longDesc: () => LocalizedString + longDesc: string } - pipeline_stage_id: { + sound: { /** - * Pipeline Stage + * S​o​u​n​d */ - displayName: () => LocalizedString + displayName: string /** - * Current stage + * N​o​t​i​f​i​c​a​t​i​o​n​ ​s​o​u​n​d */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The current stage of the opportunity in the sales pipeline + * T​h​e​ ​s​o​u​n​d​ ​t​o​ ​p​l​a​y​.​ ​L​o​n​g​ ​s​o​u​n​d​s​ ​l​i​k​e​ ​"​p​e​r​s​i​s​t​e​n​t​"​ ​o​r​ ​"​s​i​r​e​n​"​ ​w​o​r​k​ ​w​e​l​l​ ​f​o​r​ ​e​m​e​r​g​e​n​c​i​e​s​. */ - longDesc: () => LocalizedString + longDesc: string } - priority: { + format: { /** - * Priority + * M​e​s​s​a​g​e​ ​F​o​r​m​a​t */ - displayName: () => LocalizedString + displayName: string /** - * Opportunity priority + * T​e​x​t​ ​f​o​r​m​a​t​t​i​n​g​ ​s​t​y​l​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The priority level of this opportunity (None, Low, Medium, or High) + * P​l​a​i​n​ ​t​e​x​t​,​ ​H​T​M​L​,​ ​o​r​ ​M​o​n​o​s​p​a​c​e​ ​f​o​r​m​a​t​t​i​n​g​. */ - longDesc: () => LocalizedString + longDesc: string } - status: { + url: { /** - * Status + * U​R​L */ - displayName: () => LocalizedString + displayName: string /** - * Opportunity status + * S​u​p​p​l​e​m​e​n​t​a​r​y​ ​U​R​L */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The current status of the opportunity (Open, Won, Lost, or Abandoned) + * A​ ​U​R​L​ ​t​o​ ​i​n​c​l​u​d​e​ ​w​i​t​h​ ​t​h​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​. */ - longDesc: () => LocalizedString + longDesc: string } - tags: { + url_title: { /** - * Tags + * U​R​L​ ​T​i​t​l​e */ - displayName: () => LocalizedString + displayName: string /** - * Opportunity tags + * T​i​t​l​e​ ​f​o​r​ ​t​h​e​ ​U​R​L */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Tags to categorize and organize the opportunity. You can create new tags or select from existing ones. + * D​i​s​p​l​a​y​ ​t​e​x​t​ ​f​o​r​ ​t​h​e​ ​U​R​L​ ​l​i​n​k​. */ - longDesc: () => LocalizedString + longDesc: string } - win_probability: { + callback: { /** - * Win Probability + * C​a​l​l​b​a​c​k​ ​U​R​L */ - displayName: () => LocalizedString + displayName: string /** - * Probability of winning + * U​R​L​ ​t​o​ ​c​a​l​l​ ​w​h​e​n​ ​a​c​k​n​o​w​l​e​d​g​e​d */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The estimated probability (0-100) of winning this opportunity + * P​u​s​h​o​v​e​r​ ​w​i​l​l​ ​P​O​S​T​ ​t​o​ ​t​h​i​s​ ​U​R​L​ ​w​h​e​n​ ​t​h​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​ ​i​s​ ​a​c​k​n​o​w​l​e​d​g​e​d​ ​b​y​ ​t​h​e​ ​u​s​e​r​. */ - longDesc: () => LocalizedString + longDesc: string } - custom_fields: { + tags: { /** - * Custom Fields + * T​a​g​s */ - displayName: () => LocalizedString + displayName: string /** - * Custom field values + * T​a​g​s​ ​f​o​r​ ​b​u​l​k​ ​c​a​n​c​e​l​l​a​t​i​o​n */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Custom field values specific to your CopperCRM opportunity configuration + * C​o​m​m​a​-​s​e​p​a​r​a​t​e​d​ ​t​a​g​s​ ​t​h​a​t​ ​c​a​n​ ​b​e​ ​u​s​e​d​ ​t​o​ ​c​a​n​c​e​l​ ​m​u​l​t​i​p​l​e​ ​e​m​e​r​g​e​n​c​y​ ​n​o​t​i​f​i​c​a​t​i​o​n​s​ ​a​t​ ​o​n​c​e​. */ - longDesc: () => LocalizedString + longDesc: string } } } - create_person: { + validate_user: { + /** + * V​a​l​i​d​a​t​e​ ​U​s​e​r + */ + displayName: string + /** + * V​a​l​i​d​a​t​e​ ​a​ ​u​s​e​r​ ​o​r​ ​g​r​o​u​p​ ​k​e​y​ ​a​n​d​ ​l​i​s​t​ ​d​e​v​i​c​e​s + */ + shortDesc: string + /** + * V​e​r​i​f​y​ ​t​h​a​t​ ​a​ ​u​s​e​r​ ​o​r​ ​g​r​o​u​p​ ​k​e​y​ ​i​s​ ​v​a​l​i​d​ ​a​n​d​ ​r​e​t​r​i​e​v​e​ ​t​h​e​ ​l​i​s​t​ ​o​f​ ​r​e​g​i​s​t​e​r​e​d​ ​d​e​v​i​c​e​s​.​ ​U​s​e​f​u​l​ ​f​o​r​ ​c​o​n​f​i​r​m​i​n​g​ ​c​r​e​d​e​n​t​i​a​l​s​ ​b​e​f​o​r​e​ ​s​e​n​d​i​n​g​ ​n​o​t​i​f​i​c​a​t​i​o​n​s​. + */ + longDesc: string groups: { /** - * People + * U​s​e​r​ ​M​a​n​a​g​e​m​e​n​t */ - '0': () => LocalizedString + '0': string + } + options: { + device: { + /** + * D​e​v​i​c​e + */ + displayName: string + /** + * V​a​l​i​d​a​t​e​ ​a​ ​s​p​e​c​i​f​i​c​ ​d​e​v​i​c​e + */ + shortDesc: string + /** + * O​p​t​i​o​n​a​l​l​y​ ​s​p​e​c​i​f​y​ ​a​ ​d​e​v​i​c​e​ ​n​a​m​e​ ​t​o​ ​v​a​l​i​d​a​t​e​ ​t​h​a​t​ ​i​t​ ​e​x​i​s​t​s​ ​f​o​r​ ​t​h​i​s​ ​u​s​e​r​. + */ + longDesc: string + } + } + } + } + } + Slack: { + /** + * S​l​a​c​k + */ + displayName: string + groups: { + /** + * M​e​s​s​a​g​i​n​g​ ​&​ ​R​e​a​l​-​t​i​m​e​ ​C​o​m​m​u​n​i​c​a​t​i​o​n + */ + '0': string + } + /** + * C​o​n​n​e​c​t​ ​w​i​t​h​ ​S​l​a​c​k​ ​t​o​ ​s​e​n​d​ ​m​e​s​s​a​g​e​s​,​ ​m​a​n​a​g​e​ ​c​h​a​n​n​e​l​s​,​ ​a​n​d​ ​a​u​t​o​m​a​t​e​ ​t​e​a​m​ ​c​o​m​m​u​n​i​c​a​t​i​o​n + */ + shortDesc: string + /** + * I​n​t​e​g​r​a​t​e​ ​w​i​t​h​ ​S​l​a​c​k​ ​t​o​ ​a​u​t​o​m​a​t​e​ ​t​e​a​m​ ​c​o​m​m​u​n​i​c​a​t​i​o​n​ ​a​n​d​ ​c​o​l​l​a​b​o​r​a​t​i​o​n​.​ ​S​l​a​c​k​ ​i​s​ ​a​ ​c​h​a​n​n​e​l​-​b​a​s​e​d​ ​m​e​s​s​a​g​i​n​g​ ​p​l​a​t​f​o​r​m​ ​t​h​a​t​ ​b​r​i​n​g​s​ ​t​e​a​m​s​ ​t​o​g​e​t​h​e​r​.​ ​T​h​i​s​ ​i​n​t​e​g​r​a​t​i​o​n​ ​e​n​a​b​l​e​s​ ​y​o​u​ ​t​o​ ​s​e​n​d​ ​m​e​s​s​a​g​e​s​ ​t​o​ ​c​h​a​n​n​e​l​s​ ​a​n​d​ ​u​s​e​r​s​,​ ​c​r​e​a​t​e​ ​c​h​a​n​n​e​l​s​,​ ​m​a​n​a​g​e​ ​r​e​a​c​t​i​o​n​s​,​ ​u​p​l​o​a​d​ ​f​i​l​e​s​,​ ​s​e​a​r​c​h​ ​m​e​s​s​a​g​e​s​,​ ​a​n​d​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​m​e​s​s​a​g​e​s​ ​a​n​d​ ​e​v​e​n​t​s​. + */ + longDesc: string + actions: { + send_message: { + groups: { + /** + * M​e​s​s​a​g​e​s + */ + '0': string } /** - * Create Person + * S​e​n​d​ ​M​e​s​s​a​g​e​ ​t​o​ ​C​h​a​n​n​e​l */ - displayName: () => LocalizedString + displayName: string /** - * Create a new person contact in CopperCRM + * S​e​n​d​ ​a​ ​m​e​s​s​a​g​e​ ​t​o​ ​a​ ​S​l​a​c​k​ ​c​h​a​n​n​e​l */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Create a new person contact in CopperCRM with complete contact information. People represent individual contacts in your CRM. + * P​o​s​t​ ​a​ ​m​e​s​s​a​g​e​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​h​a​n​n​e​l​ ​i​n​ ​y​o​u​r​ ​S​l​a​c​k​ ​w​o​r​k​s​p​a​c​e​.​ ​S​u​p​p​o​r​t​s​ ​t​e​x​t​,​ ​a​t​t​a​c​h​m​e​n​t​s​,​ ​a​n​d​ ​B​l​o​c​k​ ​K​i​t​ ​b​l​o​c​k​s​ ​f​o​r​ ​r​i​c​h​ ​f​o​r​m​a​t​t​i​n​g​. */ - longDesc: () => LocalizedString + longDesc: string options: { - name: { + channel: { /** - * Name + * C​h​a​n​n​e​l */ - displayName: () => LocalizedString + displayName: string /** - * Full name of the person + * T​h​e​ ​c​h​a​n​n​e​l​ ​t​o​ ​s​e​n​d​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The full name of the person contact + * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​w​h​e​r​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​p​o​s​t​ ​t​h​e​ ​m​e​s​s​a​g​e​.​ ​M​a​k​e​ ​s​u​r​e​ ​t​h​e​ ​b​o​t​ ​i​s​ ​a​ ​m​e​m​b​e​r​ ​o​f​ ​t​h​e​ ​c​h​a​n​n​e​l​. */ - longDesc: () => LocalizedString + longDesc: string } - prefix: { + text: { /** - * Prefix + * M​e​s​s​a​g​e​ ​T​e​x​t */ - displayName: () => LocalizedString + displayName: string /** - * Name prefix + * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Name prefix such as Mr., Mrs., Dr., etc. + * T​h​e​ ​m​a​i​n​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​y​o​u​r​ ​m​e​s​s​a​g​e​.​ ​S​u​p​p​o​r​t​s​ ​S​l​a​c​k​ ​m​a​r​k​d​o​w​n​ ​f​o​r​m​a​t​t​i​n​g​. */ - longDesc: () => LocalizedString + longDesc: string } - first_name: { + username: { /** - * First Name + * B​o​t​ ​U​s​e​r​n​a​m​e */ - displayName: () => LocalizedString + displayName: string /** - * First name + * C​u​s​t​o​m​ ​u​s​e​r​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​b​o​t */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The first name of the person + * O​v​e​r​r​i​d​e​ ​t​h​e​ ​d​e​f​a​u​l​t​ ​b​o​t​ ​u​s​e​r​n​a​m​e​ ​f​o​r​ ​t​h​i​s​ ​m​e​s​s​a​g​e​. */ - longDesc: () => LocalizedString + longDesc: string } - middle_name: { + iconUrl: { /** - * Middle Name + * I​c​o​n​ ​U​R​L */ - displayName: () => LocalizedString + displayName: string /** - * Middle name + * C​u​s​t​o​m​ ​i​c​o​n​ ​U​R​L​ ​f​o​r​ ​t​h​e​ ​b​o​t */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The middle name or initial of the person + * O​v​e​r​r​i​d​e​ ​t​h​e​ ​d​e​f​a​u​l​t​ ​b​o​t​ ​i​c​o​n​ ​w​i​t​h​ ​a​ ​c​u​s​t​o​m​ ​i​m​a​g​e​ ​U​R​L​. */ - longDesc: () => LocalizedString + longDesc: string } - last_name: { + threadTs: { /** - * Last Name + * T​h​r​e​a​d​ ​T​i​m​e​s​t​a​m​p */ - displayName: () => LocalizedString + displayName: string /** - * Last name + * R​e​p​l​y​ ​t​o​ ​a​ ​t​h​r​e​a​d */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The last name of the person + * P​r​o​v​i​d​e​ ​t​h​e​ ​t​i​m​e​s​t​a​m​p​ ​o​f​ ​a​ ​p​a​r​e​n​t​ ​m​e​s​s​a​g​e​ ​t​o​ ​p​o​s​t​ ​t​h​i​s​ ​m​e​s​s​a​g​e​ ​a​s​ ​a​ ​r​e​p​l​y​ ​i​n​ ​a​ ​t​h​r​e​a​d​. */ - longDesc: () => LocalizedString + longDesc: string } - suffix: { + blocks: { /** - * Suffix + * B​l​o​c​k​s */ - displayName: () => LocalizedString + displayName: string /** - * Name suffix + * B​l​o​c​k​ ​K​i​t​ ​b​l​o​c​k​s​ ​f​o​r​ ​r​i​c​h​ ​c​o​n​t​e​n​t */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Name suffix such as Jr., Sr., III, etc. + * A​d​d​ ​B​l​o​c​k​ ​K​i​t​ ​b​l​o​c​k​s​ ​f​o​r​ ​r​i​c​h​,​ ​i​n​t​e​r​a​c​t​i​v​e​ ​c​o​n​t​e​n​t​.​ ​S​e​e​ ​h​t​t​p​s​:​/​/​a​p​i​.​s​l​a​c​k​.​c​o​m​/​b​l​o​c​k​-​k​i​t​ ​f​o​r​ ​s​p​e​c​s​. */ - longDesc: () => LocalizedString + longDesc: string } - street: { + } + } + send_direct_message: { + groups: { + /** + * M​e​s​s​a​g​e​s + */ + '0': string + } + /** + * S​e​n​d​ ​D​i​r​e​c​t​ ​M​e​s​s​a​g​e + */ + displayName: string + /** + * S​e​n​d​ ​a​ ​d​i​r​e​c​t​ ​m​e​s​s​a​g​e​ ​t​o​ ​a​ ​u​s​e​r + */ + shortDesc: string + /** + * S​e​n​d​ ​a​ ​p​r​i​v​a​t​e​ ​m​e​s​s​a​g​e​ ​d​i​r​e​c​t​l​y​ ​t​o​ ​a​ ​u​s​e​r​ ​i​n​ ​y​o​u​r​ ​S​l​a​c​k​ ​w​o​r​k​s​p​a​c​e​. + */ + longDesc: string + options: { + userId: { /** - * Street + * U​s​e​r */ - displayName: () => LocalizedString + displayName: string /** - * Street address + * T​h​e​ ​u​s​e​r​ ​t​o​ ​s​e​n​d​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The street address of the person + * S​e​l​e​c​t​ ​t​h​e​ ​u​s​e​r​ ​w​h​o​ ​s​h​o​u​l​d​ ​r​e​c​e​i​v​e​ ​t​h​e​ ​d​i​r​e​c​t​ ​m​e​s​s​a​g​e​. */ - longDesc: () => LocalizedString + longDesc: string } - city: { + text: { /** - * City + * M​e​s​s​a​g​e​ ​T​e​x​t */ - displayName: () => LocalizedString + displayName: string /** - * City name + * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The city where the person is located + * T​h​e​ ​m​a​i​n​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​o​f​ ​y​o​u​r​ ​d​i​r​e​c​t​ ​m​e​s​s​a​g​e​. */ - longDesc: () => LocalizedString + longDesc: string } - state: { + username: { /** - * State + * B​o​t​ ​U​s​e​r​n​a​m​e */ - displayName: () => LocalizedString + displayName: string /** - * State or province + * C​u​s​t​o​m​ ​u​s​e​r​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​b​o​t */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The state or province + * O​v​e​r​r​i​d​e​ ​t​h​e​ ​d​e​f​a​u​l​t​ ​b​o​t​ ​u​s​e​r​n​a​m​e​ ​f​o​r​ ​t​h​i​s​ ​m​e​s​s​a​g​e​. */ - longDesc: () => LocalizedString + longDesc: string } - postal_code: { + iconUrl: { /** - * Postal Code + * I​c​o​n​ ​U​R​L */ - displayName: () => LocalizedString + displayName: string /** - * ZIP or postal code + * C​u​s​t​o​m​ ​i​c​o​n​ ​U​R​L​ ​f​o​r​ ​t​h​e​ ​b​o​t */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The postal code or ZIP code + * O​v​e​r​r​i​d​e​ ​t​h​e​ ​d​e​f​a​u​l​t​ ​b​o​t​ ​i​c​o​n​ ​w​i​t​h​ ​a​ ​c​u​s​t​o​m​ ​i​m​a​g​e​ ​U​R​L​. */ - longDesc: () => LocalizedString + longDesc: string } - country: { + blocks: { /** - * Country + * B​l​o​c​k​s */ - displayName: () => LocalizedString + displayName: string /** - * Country name + * B​l​o​c​k​ ​K​i​t​ ​b​l​o​c​k​s​ ​f​o​r​ ​r​i​c​h​ ​c​o​n​t​e​n​t */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The country + * A​d​d​ ​B​l​o​c​k​ ​K​i​t​ ​b​l​o​c​k​s​ ​f​o​r​ ​r​i​c​h​,​ ​i​n​t​e​r​a​c​t​i​v​e​ ​c​o​n​t​e​n​t​. */ - longDesc: () => LocalizedString + longDesc: string } - assignee_id: { + } + } + update_message: { + groups: { + /** + * M​e​s​s​a​g​e​s + */ + '0': string + } + /** + * U​p​d​a​t​e​ ​M​e​s​s​a​g​e + */ + displayName: string + /** + * U​p​d​a​t​e​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​m​e​s​s​a​g​e + */ + shortDesc: string + /** + * U​p​d​a​t​e​ ​t​h​e​ ​c​o​n​t​e​n​t​ ​o​f​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​m​e​s​s​a​g​e​ ​i​n​ ​a​ ​c​h​a​n​n​e​l​.​ ​Y​o​u​ ​n​e​e​d​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​i​m​e​s​t​a​m​p​ ​t​o​ ​i​d​e​n​t​i​f​y​ ​w​h​i​c​h​ ​m​e​s​s​a​g​e​ ​t​o​ ​u​p​d​a​t​e​. + */ + longDesc: string + options: { + channel: { /** - * Assignee + * C​h​a​n​n​e​l */ - displayName: () => LocalizedString + displayName: string /** - * User assigned to this person + * T​h​e​ ​c​h​a​n​n​e​l​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​m​e​s​s​a​g​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The CopperCRM user who will be assigned to manage this contact + * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​w​h​e​r​e​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​w​a​s​ ​p​o​s​t​e​d​. */ - longDesc: () => LocalizedString + longDesc: string } - company_id: { + timestamp: { /** - * Company + * M​e​s​s​a​g​e​ ​T​i​m​e​s​t​a​m​p */ - displayName: () => LocalizedString + displayName: string /** - * Associated company + * T​i​m​e​s​t​a​m​p​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​u​p​d​a​t​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The company where this person works + * T​h​e​ ​t​i​m​e​s​t​a​m​p​ ​(​t​s​)​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​p​d​a​t​e​.​ ​Y​o​u​ ​c​a​n​ ​a​l​s​o​ ​p​a​s​t​e​ ​a​ ​S​l​a​c​k​ ​m​e​s​s​a​g​e​ ​l​i​n​k​. */ - longDesc: () => LocalizedString + longDesc: string } - contact_type_id: { + text: { /** - * Contact Type + * N​e​w​ ​T​e​x​t */ - displayName: () => LocalizedString + displayName: string /** - * Type of contact relationship + * T​h​e​ ​u​p​d​a​t​e​d​ ​m​e​s​s​a​g​e​ ​t​e​x​t */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The type of contact relationship this person has with your organization + * T​h​e​ ​n​e​w​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​f​o​r​ ​t​h​e​ ​m​e​s​s​a​g​e​. */ - longDesc: () => LocalizedString + longDesc: string } - details: { + blocks: { /** - * Details + * B​l​o​c​k​s */ - displayName: () => LocalizedString + displayName: string /** - * Additional notes + * U​p​d​a​t​e​d​ ​B​l​o​c​k​ ​K​i​t​ ​b​l​o​c​k​s */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Additional notes, description, or important details about the person + * N​e​w​ ​B​l​o​c​k​ ​K​i​t​ ​b​l​o​c​k​s​ ​f​o​r​ ​t​h​e​ ​m​e​s​s​a​g​e​. */ - longDesc: () => LocalizedString + longDesc: string } - emails: { + } + } + get_channel_history: { + groups: { + /** + * M​e​s​s​a​g​e​s + */ + '0': string + } + /** + * G​e​t​ ​C​h​a​n​n​e​l​ ​H​i​s​t​o​r​y + */ + displayName: string + /** + * R​e​t​r​i​e​v​e​ ​m​e​s​s​a​g​e​s​ ​f​r​o​m​ ​a​ ​c​h​a​n​n​e​l + */ + shortDesc: string + /** + * F​e​t​c​h​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​h​i​s​t​o​r​y​ ​o​f​ ​a​ ​c​h​a​n​n​e​l​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​b​y​ ​t​i​m​e​ ​r​a​n​g​e​ ​a​n​d​ ​c​o​n​t​r​o​l​ ​t​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​m​e​s​s​a​g​e​s​ ​r​e​t​u​r​n​e​d​. + */ + longDesc: string + options: { + channel: { /** - * Email Addresses + * C​h​a​n​n​e​l */ - displayName: () => LocalizedString + displayName: string /** - * Email addresses + * T​h​e​ ​c​h​a​n​n​e​l​ ​t​o​ ​g​e​t​ ​h​i​s​t​o​r​y​ ​f​r​o​m */ - shortDesc: () => LocalizedString + shortDesc: string /** - * List of email addresses for the person + * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​m​e​s​s​a​g​e​s​ ​f​r​o​m​. */ - longDesc: () => LocalizedString - type: { - element_type: { - fields: { - email: { - /** - * Email Address - */ - displayName: () => LocalizedString - /** - * The email address - */ - shortDesc: () => LocalizedString - /** - * Email address - */ - longDesc: () => LocalizedString - } - category: { - /** - * Category - */ - displayName: () => LocalizedString - /** - * Type of email - */ - shortDesc: () => LocalizedString - /** - * The category or type of this email (work, personal, or other) - */ - longDesc: () => LocalizedString - } - } - } - } + longDesc: string } - phone_numbers: { + oldest: { /** - * Phone Numbers + * O​l​d​e​s​t​ ​T​i​m​e​s​t​a​m​p */ - displayName: () => LocalizedString + displayName: string /** - * Contact phone numbers + * O​n​l​y​ ​m​e​s​s​a​g​e​s​ ​a​f​t​e​r​ ​t​h​i​s​ ​t​i​m​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * List of phone numbers for the person + * U​n​i​x​ ​t​i​m​e​s​t​a​m​p​.​ ​O​n​l​y​ ​m​e​s​s​a​g​e​s​ ​a​f​t​e​r​ ​t​h​i​s​ ​t​i​m​e​ ​w​i​l​l​ ​b​e​ ​i​n​c​l​u​d​e​d​. */ - longDesc: () => LocalizedString - type: { - element_type: { - fields: { - number: { - /** - * Phone Number - */ - displayName: () => LocalizedString - /** - * The phone number - */ - shortDesc: () => LocalizedString - /** - * Phone number - */ - longDesc: () => LocalizedString - } - category: { - /** - * Category - */ - displayName: () => LocalizedString - /** - * Type of phone number - */ - shortDesc: () => LocalizedString - /** - * The category or type of this phone number (work, mobile, home, or other) - */ - longDesc: () => LocalizedString - } - } - } - } - } - socials: { - /** - * Social Media - */ - displayName: () => LocalizedString - /** - * Social media profiles - */ - shortDesc: () => LocalizedString - /** - * List of social media profiles for the person - */ - longDesc: () => LocalizedString - type: { - element_type: { - fields: { - url: { - /** - * URL - */ - displayName: () => LocalizedString - /** - * Social profile URL - */ - shortDesc: () => LocalizedString - /** - * Social profile URL - */ - longDesc: () => LocalizedString - } - category: { - /** - * Platform - */ - displayName: () => LocalizedString - /** - * Social media platform - */ - shortDesc: () => LocalizedString - /** - * Social platform - */ - longDesc: () => LocalizedString - } - } - } - } + longDesc: string } - tags: { + latest: { /** - * Tags + * L​a​t​e​s​t​ ​T​i​m​e​s​t​a​m​p */ - displayName: () => LocalizedString + displayName: string /** - * Person tags + * O​n​l​y​ ​m​e​s​s​a​g​e​s​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​t​i​m​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Tags to categorize and organize the person. You can create new tags or select from existing ones. + * U​n​i​x​ ​t​i​m​e​s​t​a​m​p​.​ ​O​n​l​y​ ​m​e​s​s​a​g​e​s​ ​b​e​f​o​r​e​ ​t​h​i​s​ ​t​i​m​e​ ​w​i​l​l​ ​b​e​ ​i​n​c​l​u​d​e​d​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​c​u​r​r​e​n​t​ ​t​i​m​e​. */ - longDesc: () => LocalizedString + longDesc: string } - title: { + inclusive: { /** - * Title + * I​n​c​l​u​s​i​v​e */ - displayName: () => LocalizedString + displayName: string /** - * Job title + * I​n​c​l​u​d​e​ ​b​o​u​n​d​a​r​y​ ​t​i​m​e​s​t​a​m​p​s */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The job title or position of the person + * I​n​c​l​u​d​e​ ​m​e​s​s​a​g​e​s​ ​w​i​t​h​ ​o​l​d​e​s​t​ ​o​r​ ​l​a​t​e​s​t​ ​t​i​m​e​s​t​a​m​p​s​ ​i​n​ ​r​e​s​u​l​t​s​. */ - longDesc: () => LocalizedString + longDesc: string } - websites: { + includeAllMetadata: { /** - * Websites + * I​n​c​l​u​d​e​ ​A​l​l​ ​M​e​t​a​d​a​t​a */ - displayName: () => LocalizedString + displayName: string /** - * Associated websites + * R​e​t​u​r​n​ ​f​u​l​l​ ​m​e​s​s​a​g​e​ ​m​e​t​a​d​a​t​a */ - shortDesc: () => LocalizedString + shortDesc: string /** - * List of websites associated with the person + * R​e​t​u​r​n​ ​a​l​l​ ​m​e​t​a​d​a​t​a​ ​a​s​s​o​c​i​a​t​e​d​ ​w​i​t​h​ ​e​a​c​h​ ​m​e​s​s​a​g​e​. */ - longDesc: () => LocalizedString - type: { - element_type: { - fields: { - url: { - /** - * URL - */ - displayName: () => LocalizedString - /** - * Website URL - */ - shortDesc: () => LocalizedString - /** - * Website URL - */ - longDesc: () => LocalizedString - } - category: { - /** - * Category - */ - displayName: () => LocalizedString - /** - * Type of website - */ - shortDesc: () => LocalizedString - /** - * The category or purpose of this website (work, personal, or other) - */ - longDesc: () => LocalizedString - } - } - } - } + longDesc: string } - custom_fields: { + limit: { /** - * Custom Fields + * L​i​m​i​t */ - displayName: () => LocalizedString + displayName: string /** - * Custom field values + * M​a​x​i​m​u​m​ ​m​e​s​s​a​g​e​s​ ​t​o​ ​r​e​t​u​r​n */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Custom field values specific to your CopperCRM person configuration + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​m​e​s​s​a​g​e​s​ ​t​o​ ​r​e​t​r​i​e​v​e​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​2​0​0​. */ - longDesc: () => LocalizedString + longDesc: string } } } - create_task: { + search_messages: { groups: { /** - * Tasks + * M​e​s​s​a​g​e​s */ - '0': () => LocalizedString + '0': string } /** - * Create Task + * S​e​a​r​c​h​ ​M​e​s​s​a​g​e​s */ - displayName: () => LocalizedString + displayName: string /** - * Create a new task in CopperCRM + * S​e​a​r​c​h​ ​f​o​r​ ​m​e​s​s​a​g​e​s​ ​i​n​ ​t​h​e​ ​w​o​r​k​s​p​a​c​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Create a new task in CopperCRM with details, due dates, and assignments. Tasks help you track action items and follow-ups. + * S​e​a​r​c​h​ ​f​o​r​ ​m​e​s​s​a​g​e​s​ ​m​a​t​c​h​i​n​g​ ​a​ ​q​u​e​r​y​ ​a​c​r​o​s​s​ ​y​o​u​r​ ​S​l​a​c​k​ ​w​o​r​k​s​p​a​c​e​.​ ​R​e​q​u​i​r​e​s​ ​u​s​e​r​ ​t​o​k​e​n​ ​a​u​t​h​e​n​t​i​c​a​t​i​o​n​. */ - longDesc: () => LocalizedString + longDesc: string options: { - name: { + query: { /** - * Task Name + * S​e​a​r​c​h​ ​Q​u​e​r​y */ - displayName: () => LocalizedString + displayName: string /** - * Name of the task + * T​h​e​ ​s​e​a​r​c​h​ ​q​u​e​r​y */ - shortDesc: () => LocalizedString + shortDesc: string /** - * A descriptive name for the task + * E​n​t​e​r​ ​y​o​u​r​ ​s​e​a​r​c​h​ ​q​u​e​r​y​.​ ​S​u​p​p​o​r​t​s​ ​S​l​a​c​k​ ​s​e​a​r​c​h​ ​o​p​e​r​a​t​o​r​s​ ​l​i​k​e​ ​"​f​r​o​m​:​"​,​ ​"​i​n​:​"​,​ ​e​t​c​. */ - longDesc: () => LocalizedString + longDesc: string } - related_resource: { + count: { /** - * Related Resource + * C​o​u​n​t */ - displayName: () => LocalizedString + displayName: string /** - * Associated record + * R​e​s​u​l​t​s​ ​p​e​r​ ​p​a​g​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The CRM record (lead, person, company, opportunity, or project) this task is related to + * N​u​m​b​e​r​ ​o​f​ ​r​e​s​u​l​t​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​1​0​0​. */ - longDesc: () => LocalizedString - type: { - fields: { - id: { - /** - * Resource ID - */ - displayName: () => LocalizedString - /** - * ID of the related record - */ - shortDesc: () => LocalizedString - /** - * The ID of the related CRM record - */ - longDesc: () => LocalizedString - } - type: { - /** - * Resource Type - */ - displayName: () => LocalizedString - /** - * Type of related record - */ - shortDesc: () => LocalizedString - /** - * The type of CRM record this task is related to (lead, person, company, opportunity, or project) - */ - longDesc: () => LocalizedString - } - } - } + longDesc: string } - assignee_id: { + } + } + delete_message: { + groups: { + /** + * M​e​s​s​a​g​e​s + */ + '0': string + } + /** + * D​e​l​e​t​e​ ​M​e​s​s​a​g​e + */ + displayName: string + /** + * D​e​l​e​t​e​ ​a​ ​m​e​s​s​a​g​e​ ​f​r​o​m​ ​a​ ​c​h​a​n​n​e​l + */ + shortDesc: string + /** + * D​e​l​e​t​e​ ​a​ ​s​p​e​c​i​f​i​c​ ​m​e​s​s​a​g​e​ ​f​r​o​m​ ​a​ ​S​l​a​c​k​ ​c​h​a​n​n​e​l​.​ ​Y​o​u​ ​n​e​e​d​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​i​m​e​s​t​a​m​p​ ​t​o​ ​i​d​e​n​t​i​f​y​ ​w​h​i​c​h​ ​m​e​s​s​a​g​e​ ​t​o​ ​d​e​l​e​t​e​. + */ + longDesc: string + options: { + channel: { /** - * Assignee + * C​h​a​n​n​e​l */ - displayName: () => LocalizedString + displayName: string /** - * User assigned to this task + * T​h​e​ ​c​h​a​n​n​e​l​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​m​e​s​s​a​g​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The CopperCRM user who will be assigned to complete this task + * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​w​h​e​r​e​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​w​a​s​ ​p​o​s​t​e​d​. */ - longDesc: () => LocalizedString + longDesc: string } - due_date: { + timestamp: { /** - * Due Date + * M​e​s​s​a​g​e​ ​T​i​m​e​s​t​a​m​p */ - displayName: () => LocalizedString + displayName: string /** - * When the task is due + * T​i​m​e​s​t​a​m​p​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​d​e​l​e​t​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The date when this task should be completed + * T​h​e​ ​t​i​m​e​s​t​a​m​p​ ​(​t​s​)​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​d​e​l​e​t​e​.​ ​Y​o​u​ ​c​a​n​ ​a​l​s​o​ ​p​a​s​t​e​ ​a​ ​S​l​a​c​k​ ​m​e​s​s​a​g​e​ ​l​i​n​k​. */ - longDesc: () => LocalizedString + longDesc: string } - reminder_date: { + } + } + pin_message: { + groups: { + /** + * M​e​s​s​a​g​e​s + */ + '0': string + } + /** + * P​i​n​ ​M​e​s​s​a​g​e + */ + displayName: string + /** + * P​i​n​ ​a​ ​m​e​s​s​a​g​e​ ​t​o​ ​a​ ​c​h​a​n​n​e​l + */ + shortDesc: string + /** + * P​i​n​ ​a​ ​s​p​e​c​i​f​i​c​ ​m​e​s​s​a​g​e​ ​t​o​ ​a​ ​c​h​a​n​n​e​l​ ​s​o​ ​i​t​ ​a​p​p​e​a​r​s​ ​i​n​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​d​e​t​a​i​l​s​.​ ​P​i​n​n​e​d​ ​m​e​s​s​a​g​e​s​ ​a​r​e​ ​e​a​s​i​l​y​ ​a​c​c​e​s​s​i​b​l​e​ ​f​o​r​ ​a​l​l​ ​c​h​a​n​n​e​l​ ​m​e​m​b​e​r​s​. + */ + longDesc: string + options: { + channel: { /** - * Reminder Date + * C​h​a​n​n​e​l */ - displayName: () => LocalizedString + displayName: string /** - * When to send reminder + * T​h​e​ ​c​h​a​n​n​e​l​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​m​e​s​s​a​g​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The date when a reminder should be sent for this task + * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​w​h​e​r​e​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​i​s​ ​l​o​c​a​t​e​d​. */ - longDesc: () => LocalizedString + longDesc: string } - priority: { + timestamp: { /** - * Priority + * M​e​s​s​a​g​e​ ​T​i​m​e​s​t​a​m​p */ - displayName: () => LocalizedString + displayName: string /** - * Task priority + * T​i​m​e​s​t​a​m​p​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​p​i​n */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The priority level of this task (None, Low, Medium, or High) + * T​h​e​ ​t​i​m​e​s​t​a​m​p​ ​(​t​s​)​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​p​i​n​.​ ​Y​o​u​ ​c​a​n​ ​a​l​s​o​ ​p​a​s​t​e​ ​a​ ​S​l​a​c​k​ ​m​e​s​s​a​g​e​ ​l​i​n​k​. */ - longDesc: () => LocalizedString + longDesc: string } - status: { + } + } + unpin_message: { + groups: { + /** + * M​e​s​s​a​g​e​s + */ + '0': string + } + /** + * U​n​p​i​n​ ​M​e​s​s​a​g​e + */ + displayName: string + /** + * U​n​p​i​n​ ​a​ ​m​e​s​s​a​g​e​ ​f​r​o​m​ ​a​ ​c​h​a​n​n​e​l + */ + shortDesc: string + /** + * R​e​m​o​v​e​ ​a​ ​p​i​n​ ​f​r​o​m​ ​a​ ​s​p​e​c​i​f​i​c​ ​m​e​s​s​a​g​e​ ​i​n​ ​a​ ​c​h​a​n​n​e​l​.​ ​T​h​e​ ​m​e​s​s​a​g​e​ ​i​t​s​e​l​f​ ​i​s​ ​n​o​t​ ​d​e​l​e​t​e​d​. + */ + longDesc: string + options: { + channel: { /** - * Status + * C​h​a​n​n​e​l */ - displayName: () => LocalizedString + displayName: string /** - * Task status + * T​h​e​ ​c​h​a​n​n​e​l​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​m​e​s​s​a​g​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The current status of the task (Open or Completed) + * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​w​h​e​r​e​ ​t​h​e​ ​p​i​n​n​e​d​ ​m​e​s​s​a​g​e​ ​i​s​ ​l​o​c​a​t​e​d​. */ - longDesc: () => LocalizedString + longDesc: string } - details: { + timestamp: { /** - * Details + * M​e​s​s​a​g​e​ ​T​i​m​e​s​t​a​m​p */ - displayName: () => LocalizedString + displayName: string /** - * Task description + * T​i​m​e​s​t​a​m​p​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​u​n​p​i​n */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Additional details or description of what needs to be done + * T​h​e​ ​t​i​m​e​s​t​a​m​p​ ​(​t​s​)​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​n​p​i​n​.​ ​Y​o​u​ ​c​a​n​ ​a​l​s​o​ ​p​a​s​t​e​ ​a​ ​S​l​a​c​k​ ​m​e​s​s​a​g​e​ ​l​i​n​k​. */ - longDesc: () => LocalizedString + longDesc: string } - tags: { + } + } + create_channel: { + groups: { + /** + * C​h​a​n​n​e​l​s + */ + '0': string + } + /** + * C​r​e​a​t​e​ ​C​h​a​n​n​e​l + */ + displayName: string + /** + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​S​l​a​c​k​ ​c​h​a​n​n​e​l + */ + shortDesc: string + /** + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​p​u​b​l​i​c​ ​o​r​ ​p​r​i​v​a​t​e​ ​c​h​a​n​n​e​l​ ​i​n​ ​y​o​u​r​ ​S​l​a​c​k​ ​w​o​r​k​s​p​a​c​e​. + */ + longDesc: string + options: { + channelName: { /** - * Tags + * C​h​a​n​n​e​l​ ​N​a​m​e */ - displayName: () => LocalizedString + displayName: string /** - * Task tags + * N​a​m​e​ ​f​o​r​ ​t​h​e​ ​n​e​w​ ​c​h​a​n​n​e​l */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Tags to categorize and organize the task. You can create new tags or select from existing ones. + * T​h​e​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​n​e​w​ ​c​h​a​n​n​e​l​.​ ​M​u​s​t​ ​b​e​ ​u​n​i​q​u​e​ ​a​n​d​ ​f​o​l​l​o​w​ ​S​l​a​c​k​ ​n​a​m​i​n​g​ ​r​u​l​e​s​ ​(​l​o​w​e​r​c​a​s​e​,​ ​n​o​ ​s​p​a​c​e​s​)​. */ - longDesc: () => LocalizedString + longDesc: string } - custom_fields: { + isPrivate: { /** - * Custom Fields + * P​r​i​v​a​t​e​ ​C​h​a​n​n​e​l */ - displayName: () => LocalizedString + displayName: string /** - * Custom field values + * M​a​k​e​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​p​r​i​v​a​t​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Custom field values specific to your CopperCRM task configuration + * I​f​ ​e​n​a​b​l​e​d​,​ ​c​r​e​a​t​e​ ​a​ ​p​r​i​v​a​t​e​ ​c​h​a​n​n​e​l​ ​i​n​s​t​e​a​d​ ​o​f​ ​a​ ​p​u​b​l​i​c​ ​o​n​e​. */ - longDesc: () => LocalizedString + longDesc: string } } } - delete_company: { + archive_channel: { groups: { /** - * Companies + * C​h​a​n​n​e​l​s */ - '0': () => LocalizedString + '0': string } /** - * Delete Company + * A​r​c​h​i​v​e​ ​C​h​a​n​n​e​l */ - displayName: () => LocalizedString + displayName: string /** - * Delete a company from CopperCRM + * A​r​c​h​i​v​e​ ​a​ ​S​l​a​c​k​ ​c​h​a​n​n​e​l */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Permanently delete a company record from CopperCRM. This action cannot be undone. + * A​r​c​h​i​v​e​ ​a​ ​c​h​a​n​n​e​l​ ​i​n​ ​y​o​u​r​ ​S​l​a​c​k​ ​w​o​r​k​s​p​a​c​e​.​ ​A​r​c​h​i​v​e​d​ ​c​h​a​n​n​e​l​s​ ​a​r​e​ ​r​e​a​d​-​o​n​l​y​ ​a​n​d​ ​h​i​d​d​e​n​ ​f​r​o​m​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​l​i​s​t​ ​b​y​ ​d​e​f​a​u​l​t​. */ - longDesc: () => LocalizedString + longDesc: string options: { - company_id: { + channel: { /** - * Company + * C​h​a​n​n​e​l */ - displayName: () => LocalizedString + displayName: string /** - * Company to delete + * T​h​e​ ​c​h​a​n​n​e​l​ ​t​o​ ​a​r​c​h​i​v​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Select the company you want to delete from CopperCRM + * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​a​r​c​h​i​v​e​. */ - longDesc: () => LocalizedString + longDesc: string } } } - delete_lead: { + unarchive_channel: { groups: { /** - * Leads + * C​h​a​n​n​e​l​s */ - '0': () => LocalizedString + '0': string } /** - * Delete Lead + * U​n​a​r​c​h​i​v​e​ ​C​h​a​n​n​e​l */ - displayName: () => LocalizedString + displayName: string /** - * Delete a lead from CopperCRM + * U​n​a​r​c​h​i​v​e​ ​a​ ​S​l​a​c​k​ ​c​h​a​n​n​e​l */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Permanently delete a lead record from CopperCRM. This action cannot be undone. + * R​e​s​t​o​r​e​ ​a​n​ ​a​r​c​h​i​v​e​d​ ​c​h​a​n​n​e​l​ ​s​o​ ​i​t​ ​b​e​c​o​m​e​s​ ​a​c​t​i​v​e​ ​a​g​a​i​n​.​ ​M​e​m​b​e​r​s​ ​w​i​l​l​ ​b​e​ ​a​b​l​e​ ​t​o​ ​p​o​s​t​ ​m​e​s​s​a​g​e​s​ ​o​n​c​e​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​i​s​ ​u​n​a​r​c​h​i​v​e​d​. */ - longDesc: () => LocalizedString + longDesc: string options: { - lead_id: { + channel: { /** - * Lead + * C​h​a​n​n​e​l */ - displayName: () => LocalizedString + displayName: string /** - * Lead to delete + * T​h​e​ ​a​r​c​h​i​v​e​d​ ​c​h​a​n​n​e​l​ ​t​o​ ​r​e​s​t​o​r​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Select the lead you want to delete from CopperCRM + * S​e​l​e​c​t​ ​t​h​e​ ​a​r​c​h​i​v​e​d​ ​c​h​a​n​n​e​l​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​n​a​r​c​h​i​v​e​. */ - longDesc: () => LocalizedString + longDesc: string } } } - delete_opportunity: { + list_channels: { groups: { /** - * Opportunities + * C​h​a​n​n​e​l​s */ - '0': () => LocalizedString + '0': string } /** - * Delete Opportunity + * L​i​s​t​ ​C​h​a​n​n​e​l​s */ - displayName: () => LocalizedString + displayName: string /** - * Delete an opportunity from CopperCRM + * L​i​s​t​ ​c​h​a​n​n​e​l​s​ ​i​n​ ​t​h​e​ ​w​o​r​k​s​p​a​c​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Permanently delete an opportunity record from CopperCRM. This action cannot be undone. + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​c​h​a​n​n​e​l​s​ ​i​n​ ​y​o​u​r​ ​S​l​a​c​k​ ​w​o​r​k​s​p​a​c​e​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​b​y​ ​c​h​a​n​n​e​l​ ​t​y​p​e​ ​a​n​d​ ​w​h​e​t​h​e​r​ ​t​o​ ​i​n​c​l​u​d​e​ ​a​r​c​h​i​v​e​d​ ​c​h​a​n​n​e​l​s​. */ - longDesc: () => LocalizedString + longDesc: string options: { - opportunity_id: { + types: { /** - * Opportunity + * C​h​a​n​n​e​l​ ​T​y​p​e​s */ - displayName: () => LocalizedString + displayName: string /** - * Opportunity to delete + * T​y​p​e​s​ ​o​f​ ​c​h​a​n​n​e​l​s​ ​t​o​ ​i​n​c​l​u​d​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Select the opportunity you want to delete from CopperCRM + * C​o​m​m​a​-​s​e​p​a​r​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​c​h​a​n​n​e​l​ ​t​y​p​e​s​.​ ​O​p​t​i​o​n​s​:​ ​p​u​b​l​i​c​_​c​h​a​n​n​e​l​,​ ​p​r​i​v​a​t​e​_​c​h​a​n​n​e​l​,​ ​m​p​i​m​,​ ​i​m​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​p​u​b​l​i​c​_​c​h​a​n​n​e​l​,​p​r​i​v​a​t​e​_​c​h​a​n​n​e​l​. */ - longDesc: () => LocalizedString + longDesc: string } - } - } - delete_person: { - groups: { - /** - * People - */ - '0': () => LocalizedString - } - /** - * Delete Person - */ - displayName: () => LocalizedString - /** - * Delete a person contact from CopperCRM - */ - shortDesc: () => LocalizedString - /** - * Permanently delete a person contact record from CopperCRM. This action cannot be undone. - */ - longDesc: () => LocalizedString - options: { - person_id: { + excludeArchived: { /** - * Person + * E​x​c​l​u​d​e​ ​A​r​c​h​i​v​e​d */ - displayName: () => LocalizedString + displayName: string /** - * Person to delete + * E​x​c​l​u​d​e​ ​a​r​c​h​i​v​e​d​ ​c​h​a​n​n​e​l​s */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Select the person contact you want to delete from CopperCRM + * I​f​ ​e​n​a​b​l​e​d​,​ ​a​r​c​h​i​v​e​d​ ​c​h​a​n​n​e​l​s​ ​a​r​e​ ​e​x​c​l​u​d​e​d​ ​f​r​o​m​ ​t​h​e​ ​r​e​s​u​l​t​s​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​t​r​u​e​. */ - longDesc: () => LocalizedString + longDesc: string } - } - } - delete_task: { - groups: { - /** - * Tasks - */ - '0': () => LocalizedString - } - /** - * Delete Task - */ - displayName: () => LocalizedString - /** - * Delete a task from CopperCRM - */ - shortDesc: () => LocalizedString - /** - * Permanently delete a task from CopperCRM. This action cannot be undone. - */ - longDesc: () => LocalizedString - options: { - task_id: { + limit: { /** - * Task + * L​i​m​i​t */ - displayName: () => LocalizedString + displayName: string /** - * Task to delete + * M​a​x​i​m​u​m​ ​c​h​a​n​n​e​l​s​ ​t​o​ ​r​e​t​u​r​n */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Select the task you want to delete from CopperCRM + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​h​a​n​n​e​l​s​ ​t​o​ ​r​e​t​r​i​e​v​e​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​2​0​0​. */ - longDesc: () => LocalizedString + longDesc: string } } } - get_company: { + add_reaction: { groups: { /** - * Companies + * R​e​a​c​t​i​o​n​s */ - '0': () => LocalizedString + '0': string } /** - * Get Company + * A​d​d​ ​R​e​a​c​t​i​o​n */ - displayName: () => LocalizedString + displayName: string /** - * Retrieve a company from CopperCRM + * A​d​d​ ​a​n​ ​e​m​o​j​i​ ​r​e​a​c​t​i​o​n​ ​t​o​ ​a​ ​m​e​s​s​a​g​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Retrieve detailed information about a specific company record from CopperCRM including all fields and custom data. + * A​d​d​ ​a​n​ ​e​m​o​j​i​ ​r​e​a​c​t​i​o​n​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​m​e​s​s​a​g​e​ ​i​n​ ​a​ ​c​h​a​n​n​e​l​. */ - longDesc: () => LocalizedString + longDesc: string options: { - company_id: { + channel: { /** - * Company + * C​h​a​n​n​e​l */ - displayName: () => LocalizedString + displayName: string /** - * Company to retrieve + * T​h​e​ ​c​h​a​n​n​e​l​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​m​e​s​s​a​g​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Select the company you want to retrieve from CopperCRM + * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​w​h​e​r​e​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​i​s​ ​l​o​c​a​t​e​d​. */ - longDesc: () => LocalizedString + longDesc: string + } + timestamp: { + /** + * M​e​s​s​a​g​e​ ​T​i​m​e​s​t​a​m​p + */ + displayName: string + /** + * T​i​m​e​s​t​a​m​p​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e + */ + shortDesc: string + /** + * T​h​e​ ​t​i​m​e​s​t​a​m​p​ ​(​t​s​)​ ​o​f​ ​t​h​e​ ​m​e​s​s​a​g​e​ ​t​o​ ​r​e​a​c​t​ ​t​o​.​ ​Y​o​u​ ​c​a​n​ ​a​l​s​o​ ​p​a​s​t​e​ ​a​ ​S​l​a​c​k​ ​m​e​s​s​a​g​e​ ​l​i​n​k​. + */ + longDesc: string + } + reaction: { + /** + * R​e​a​c​t​i​o​n + */ + displayName: string + /** + * E​m​o​j​i​ ​n​a​m​e​ ​t​o​ ​a​d​d + */ + shortDesc: string + /** + * T​h​e​ ​e​m​o​j​i​ ​n​a​m​e​ ​w​i​t​h​o​u​t​ ​c​o​l​o​n​s​ ​(​e​.​g​.​,​ ​"​t​h​u​m​b​s​u​p​"​,​ ​"​f​i​r​e​"​,​ ​"​s​m​i​l​e​"​)​. + */ + longDesc: string } } } - get_lead: { + find_user_by_email: { groups: { /** - * Leads + * U​s​e​r​s */ - '0': () => LocalizedString + '0': string } /** - * Get Lead + * F​i​n​d​ ​U​s​e​r​ ​b​y​ ​E​m​a​i​l */ - displayName: () => LocalizedString + displayName: string /** - * Retrieve a lead from CopperCRM + * F​i​n​d​ ​a​ ​S​l​a​c​k​ ​u​s​e​r​ ​b​y​ ​t​h​e​i​r​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Retrieve detailed information about a specific lead record from CopperCRM including all fields and custom data. + * L​o​o​k​ ​u​p​ ​a​ ​S​l​a​c​k​ ​u​s​e​r​ ​u​s​i​n​g​ ​t​h​e​i​r​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​.​ ​R​e​t​u​r​n​s​ ​t​h​e​ ​u​s​e​r​ ​p​r​o​f​i​l​e​ ​i​f​ ​f​o​u​n​d​. */ - longDesc: () => LocalizedString + longDesc: string options: { - lead_id: { + email: { /** - * Lead + * E​m​a​i​l */ - displayName: () => LocalizedString + displayName: string /** - * Lead to retrieve + * E​m​a​i​l​ ​a​d​d​r​e​s​s​ ​t​o​ ​s​e​a​r​c​h​ ​f​o​r */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Select the lead you want to retrieve from CopperCRM + * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​o​f​ ​t​h​e​ ​u​s​e​r​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​f​i​n​d​. */ - longDesc: () => LocalizedString + longDesc: string } } } - get_opportunity: { + update_profile: { groups: { /** - * Opportunities + * U​s​e​r​s */ - '0': () => LocalizedString + '0': string } /** - * Get Opportunity + * U​p​d​a​t​e​ ​P​r​o​f​i​l​e */ - displayName: () => LocalizedString + displayName: string /** - * Retrieve an opportunity from CopperCRM + * U​p​d​a​t​e​ ​u​s​e​r​ ​p​r​o​f​i​l​e​ ​i​n​f​o​r​m​a​t​i​o​n */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Retrieve detailed information about a specific opportunity record from CopperCRM including all fields and custom data. + * U​p​d​a​t​e​ ​b​a​s​i​c​ ​p​r​o​f​i​l​e​ ​f​i​e​l​d​s​ ​s​u​c​h​ ​a​s​ ​n​a​m​e​ ​o​r​ ​t​i​t​l​e​.​ ​R​e​q​u​i​r​e​s​ ​u​s​e​r​ ​t​o​k​e​n​ ​a​u​t​h​e​n​t​i​c​a​t​i​o​n​. */ - longDesc: () => LocalizedString + longDesc: string options: { - opportunity_id: { + firstName: { /** - * Opportunity + * F​i​r​s​t​ ​N​a​m​e */ - displayName: () => LocalizedString + displayName: string /** - * Opportunity to retrieve + * U​s​e​r​ ​f​i​r​s​t​ ​n​a​m​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Select the opportunity you want to retrieve from CopperCRM + * T​h​e​ ​f​i​r​s​t​ ​n​a​m​e​ ​t​o​ ​s​e​t​ ​i​n​ ​t​h​e​ ​p​r​o​f​i​l​e​. */ - longDesc: () => LocalizedString + longDesc: string + } + lastName: { + /** + * L​a​s​t​ ​N​a​m​e + */ + displayName: string + /** + * U​s​e​r​ ​l​a​s​t​ ​n​a​m​e + */ + shortDesc: string + /** + * T​h​e​ ​l​a​s​t​ ​n​a​m​e​ ​t​o​ ​s​e​t​ ​i​n​ ​t​h​e​ ​p​r​o​f​i​l​e​. + */ + longDesc: string + } + email: { + /** + * E​m​a​i​l + */ + displayName: string + /** + * U​s​e​r​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s + */ + shortDesc: string + /** + * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​t​o​ ​s​e​t​.​ ​C​h​a​n​g​i​n​g​ ​e​m​a​i​l​ ​w​i​l​l​ ​s​e​n​d​ ​n​o​t​i​f​i​c​a​t​i​o​n​s​ ​t​o​ ​b​o​t​h​ ​o​l​d​ ​a​n​d​ ​n​e​w​ ​a​d​d​r​e​s​s​e​s​. + */ + longDesc: string + } + userId: { + /** + * U​s​e​r​ ​I​D + */ + displayName: string + /** + * T​a​r​g​e​t​ ​u​s​e​r​ ​(​a​d​m​i​n​ ​o​n​l​y​) + */ + shortDesc: string + /** + * I​D​ ​o​f​ ​u​s​e​r​ ​t​o​ ​u​p​d​a​t​e​.​ ​O​n​l​y​ ​a​d​m​i​n​s​ ​o​n​ ​p​a​i​d​ ​t​e​a​m​s​ ​c​a​n​ ​u​p​d​a​t​e​ ​o​t​h​e​r​ ​u​s​e​r​s​. + */ + longDesc: string } } } - get_person: { + list_users: { groups: { /** - * People + * U​s​e​r​s */ - '0': () => LocalizedString + '0': string } /** - * Get Person + * L​i​s​t​ ​U​s​e​r​s */ - displayName: () => LocalizedString + displayName: string /** - * Retrieve a person contact from CopperCRM + * L​i​s​t​ ​u​s​e​r​s​ ​i​n​ ​t​h​e​ ​w​o​r​k​s​p​a​c​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Retrieve detailed information about a specific person contact record from CopperCRM including all fields and custom data. + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​u​s​e​r​s​ ​i​n​ ​y​o​u​r​ ​S​l​a​c​k​ ​w​o​r​k​s​p​a​c​e​ ​i​n​c​l​u​d​i​n​g​ ​t​h​e​i​r​ ​p​r​o​f​i​l​e​ ​i​n​f​o​r​m​a​t​i​o​n​. */ - longDesc: () => LocalizedString + longDesc: string options: { - person_id: { + limit: { /** - * Person + * L​i​m​i​t */ - displayName: () => LocalizedString + displayName: string /** - * Person to retrieve + * M​a​x​i​m​u​m​ ​u​s​e​r​s​ ​t​o​ ​r​e​t​u​r​n */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Select the person contact you want to retrieve from CopperCRM + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​u​s​e​r​s​ ​t​o​ ​r​e​t​r​i​e​v​e​.​ ​D​e​f​a​u​l​t​ ​i​s​ ​2​0​0​. */ - longDesc: () => LocalizedString + longDesc: string } } } - get_task: { + get_user_info: { groups: { /** - * Tasks + * U​s​e​r​s */ - '0': () => LocalizedString + '0': string } /** - * Get Task + * G​e​t​ ​U​s​e​r​ ​I​n​f​o */ - displayName: () => LocalizedString + displayName: string /** - * Retrieve a task from CopperCRM + * G​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​u​s​e​r */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Retrieve detailed information about a specific task from CopperCRM including all fields and custom data. + * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​e​d​ ​p​r​o​f​i​l​e​ ​a​n​d​ ​a​c​c​o​u​n​t​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r​ ​a​ ​s​p​e​c​i​f​i​c​ ​S​l​a​c​k​ ​u​s​e​r​ ​b​y​ ​t​h​e​i​r​ ​u​s​e​r​ ​I​D​. */ - longDesc: () => LocalizedString + longDesc: string options: { - task_id: { + userId: { /** - * Task + * U​s​e​r */ - displayName: () => LocalizedString + displayName: string /** - * Task to retrieve + * T​h​e​ ​u​s​e​r​ ​t​o​ ​g​e​t​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Select the task you want to retrieve from CopperCRM + * S​e​l​e​c​t​ ​t​h​e​ ​u​s​e​r​ ​w​h​o​s​e​ ​i​n​f​o​r​m​a​t​i​o​n​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e​. */ - longDesc: () => LocalizedString + longDesc: string } } } - search_companies: { + upload_file: { groups: { /** - * Companies + * F​i​l​e​s */ - '0': () => LocalizedString + '0': string } /** - * Search Companies + * U​p​l​o​a​d​ ​F​i​l​e */ - displayName: () => LocalizedString + displayName: string /** - * Search for companies in CopperCRM + * U​p​l​o​a​d​ ​a​ ​f​i​l​e​ ​t​o​ ​S​l​a​c​k */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Search and filter companies in CopperCRM using various criteria including name, location, tags, and custom fields. Returns a list of matching companies. + * U​p​l​o​a​d​ ​a​ ​f​i​l​e​ ​t​o​ ​a​ ​S​l​a​c​k​ ​c​h​a​n​n​e​l​.​ ​S​u​p​p​o​r​t​s​ ​v​a​r​i​o​u​s​ ​f​i​l​e​ ​t​y​p​e​s​ ​a​n​d​ ​o​p​t​i​o​n​a​l​ ​i​n​i​t​i​a​l​ ​c​o​m​m​e​n​t​. */ - longDesc: () => LocalizedString + longDesc: string options: { - ids: { + channel: { /** - * Company IDs + * C​h​a​n​n​e​l */ - displayName: () => LocalizedString + displayName: string /** - * Specific companies to retrieve + * C​h​a​n​n​e​l​ ​t​o​ ​u​p​l​o​a​d​ ​t​o */ - shortDesc: () => LocalizedString + shortDesc: string /** - * List of specific company IDs to retrieve + * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​w​h​e​r​e​ ​t​h​e​ ​f​i​l​e​ ​s​h​o​u​l​d​ ​b​e​ ​u​p​l​o​a​d​e​d​. */ - longDesc: () => LocalizedString + longDesc: string } - page_number: { + file: { /** - * Page Number + * F​i​l​e */ - displayName: () => LocalizedString + displayName: string /** - * Which page of results + * T​h​e​ ​f​i​l​e​ ​t​o​ ​u​p​l​o​a​d */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The page number of results to retrieve for pagination + * T​h​e​ ​f​i​l​e​ ​t​o​ ​u​p​l​o​a​d​ ​t​o​ ​t​h​e​ ​S​l​a​c​k​ ​c​h​a​n​n​e​l​. */ - longDesc: () => LocalizedString + longDesc: string } - page_size: { + filename: { /** - * Page Size + * F​i​l​e​n​a​m​e */ - displayName: () => LocalizedString + displayName: string /** - * Results per page + * N​a​m​e​ ​f​o​r​ ​t​h​e​ ​f​i​l​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The number of results to return per page + * T​h​e​ ​f​i​l​e​n​a​m​e​ ​t​o​ ​u​s​e​ ​w​h​e​n​ ​u​p​l​o​a​d​i​n​g​. */ - longDesc: () => LocalizedString + longDesc: string } - sort_by: { + comment: { /** - * Sort By + * I​n​i​t​i​a​l​ ​C​o​m​m​e​n​t */ - displayName: () => LocalizedString + displayName: string /** - * Field to sort by + * C​o​m​m​e​n​t​ ​w​i​t​h​ ​t​h​e​ ​f​i​l​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The field to use for sorting the results + * A​n​ ​o​p​t​i​o​n​a​l​ ​c​o​m​m​e​n​t​ ​t​o​ ​i​n​c​l​u​d​e​ ​w​h​e​n​ ​s​h​a​r​i​n​g​ ​t​h​e​ ​f​i​l​e​. */ - longDesc: () => LocalizedString + longDesc: string } - sort_direction: { + } + } + request_action_message: { + groups: { + /** + * M​e​s​s​a​g​e​s + */ + '0': string + } + /** + * S​e​n​d​ ​A​c​t​i​o​n​ ​M​e​s​s​a​g​e​ ​t​o​ ​C​h​a​n​n​e​l + */ + displayName: string + /** + * S​e​n​d​ ​a​ ​m​e​s​s​a​g​e​ ​w​i​t​h​ ​a​c​t​i​o​n​ ​b​u​t​t​o​n​s + */ + shortDesc: string + /** + * S​e​n​d​ ​a​ ​m​e​s​s​a​g​e​ ​t​o​ ​a​ ​c​h​a​n​n​e​l​ ​w​i​t​h​ ​i​n​t​e​r​a​c​t​i​v​e​ ​a​c​t​i​o​n​ ​b​u​t​t​o​n​s​ ​t​h​a​t​ ​l​i​n​k​ ​t​o​ ​U​R​L​s​. + */ + longDesc: string + options: { + channel: { /** - * Sort Direction + * C​h​a​n​n​e​l */ - displayName: () => LocalizedString + displayName: string /** - * Sort order + * T​h​e​ ​c​h​a​n​n​e​l​ ​t​o​ ​s​e​n​d​ ​t​o */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The direction to sort results (ascending or descending) + * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​w​h​e​r​e​ ​t​h​e​ ​a​c​t​i​o​n​ ​m​e​s​s​a​g​e​ ​s​h​o​u​l​d​ ​b​e​ ​p​o​s​t​e​d​. */ - longDesc: () => LocalizedString + longDesc: string } - name: { + text: { /** - * Name + * M​e​s​s​a​g​e​ ​T​e​x​t */ - displayName: () => LocalizedString + displayName: string /** - * Company name to search + * T​h​e​ ​m​e​s​s​a​g​e​ ​c​o​n​t​e​n​t */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Search for companies with names matching this value + * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​d​i​s​p​l​a​y​e​d​ ​a​b​o​v​e​ ​t​h​e​ ​a​c​t​i​o​n​ ​b​u​t​t​o​n​s​. */ - longDesc: () => LocalizedString + longDesc: string } - assignee_ids: { + actions: { /** - * Assignees + * A​c​t​i​o​n​ ​B​u​t​t​o​n​s */ - displayName: () => LocalizedString + displayName: string /** - * Assigned users + * B​u​t​t​o​n​s​ ​t​o​ ​d​i​s​p​l​a​y */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter companies by assigned users + * D​e​f​i​n​e​ ​t​h​e​ ​a​c​t​i​o​n​ ​b​u​t​t​o​n​s​ ​w​i​t​h​ ​t​i​t​l​e​s​ ​a​n​d​ ​U​R​L​s​.​ ​E​a​c​h​ ​b​u​t​t​o​n​ ​l​i​n​k​s​ ​t​o​ ​a​ ​s​p​e​c​i​f​i​c​ ​U​R​L​ ​w​h​e​n​ ​c​l​i​c​k​e​d​. */ - longDesc: () => LocalizedString + longDesc: string + type: { + element_type: { + fields: { + title: { + /** + * B​u​t​t​o​n​ ​T​i​t​l​e + */ + displayName: string + /** + * T​e​x​t​ ​d​i​s​p​l​a​y​e​d​ ​o​n​ ​t​h​e​ ​b​u​t​t​o​n + */ + shortDesc: string + /** + * T​h​e​ ​t​e​x​t​ ​t​h​a​t​ ​w​i​l​l​ ​b​e​ ​s​h​o​w​n​ ​o​n​ ​t​h​e​ ​a​c​t​i​o​n​ ​b​u​t​t​o​n​. + */ + longDesc: string + } + url: { + /** + * B​u​t​t​o​n​ ​U​R​L + */ + displayName: string + /** + * U​R​L​ ​t​h​e​ ​b​u​t​t​o​n​ ​l​i​n​k​s​ ​t​o + */ + shortDesc: string + /** + * T​h​e​ ​U​R​L​ ​t​h​a​t​ ​w​i​l​l​ ​b​e​ ​o​p​e​n​e​d​ ​w​h​e​n​ ​t​h​e​ ​b​u​t​t​o​n​ ​i​s​ ​c​l​i​c​k​e​d​. + */ + longDesc: string + } + } + } + } } - contact_type_ids: { + username: { /** - * Contact Types + * B​o​t​ ​U​s​e​r​n​a​m​e */ - displayName: () => LocalizedString + displayName: string /** - * Contact type filter + * C​u​s​t​o​m​ ​b​o​t​ ​n​a​m​e */ - shortDesc: () => LocalizedString - /** - * Filter companies by contact type - */ - longDesc: () => LocalizedString - } - city: { - /** - * City - */ - displayName: () => LocalizedString - /** - * City location - */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter companies by city + * O​v​e​r​r​i​d​e​ ​t​h​e​ ​d​e​f​a​u​l​t​ ​b​o​t​ ​u​s​e​r​n​a​m​e​. */ - longDesc: () => LocalizedString + longDesc: string } - state: { + iconUrl: { /** - * State + * I​c​o​n​ ​U​R​L */ - displayName: () => LocalizedString + displayName: string /** - * State or province + * C​u​s​t​o​m​ ​b​o​t​ ​i​c​o​n */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter companies by state or province + * O​v​e​r​r​i​d​e​ ​t​h​e​ ​d​e​f​a​u​l​t​ ​b​o​t​ ​i​c​o​n​. */ - longDesc: () => LocalizedString + longDesc: string } - postal_code: { + } + } + request_action_dm: { + groups: { + /** + * M​e​s​s​a​g​e​s + */ + '0': string + } + /** + * S​e​n​d​ ​A​c​t​i​o​n​ ​M​e​s​s​a​g​e​ ​t​o​ ​U​s​e​r + */ + displayName: string + /** + * S​e​n​d​ ​a​ ​d​i​r​e​c​t​ ​m​e​s​s​a​g​e​ ​w​i​t​h​ ​a​c​t​i​o​n​ ​b​u​t​t​o​n​s + */ + shortDesc: string + /** + * S​e​n​d​ ​a​ ​d​i​r​e​c​t​ ​m​e​s​s​a​g​e​ ​t​o​ ​a​ ​u​s​e​r​ ​w​i​t​h​ ​i​n​t​e​r​a​c​t​i​v​e​ ​a​c​t​i​o​n​ ​b​u​t​t​o​n​s​ ​t​h​a​t​ ​l​i​n​k​ ​t​o​ ​U​R​L​s​. + */ + longDesc: string + options: { + userId: { /** - * Postal Code + * U​s​e​r */ - displayName: () => LocalizedString + displayName: string /** - * ZIP or postal code + * T​h​e​ ​u​s​e​r​ ​t​o​ ​m​e​s​s​a​g​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter companies by postal code + * S​e​l​e​c​t​ ​t​h​e​ ​u​s​e​r​ ​t​o​ ​r​e​c​e​i​v​e​ ​t​h​e​ ​a​c​t​i​o​n​ ​m​e​s​s​a​g​e​. */ - longDesc: () => LocalizedString + longDesc: string } - country: { + text: { /** - * Country + * M​e​s​s​a​g​e​ ​T​e​x​t */ - displayName: () => LocalizedString + displayName: string /** - * Country location + * T​h​e​ ​m​e​s​s​a​g​e​ ​c​o​n​t​e​n​t */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter companies by country + * T​h​e​ ​t​e​x​t​ ​c​o​n​t​e​n​t​ ​d​i​s​p​l​a​y​e​d​ ​a​b​o​v​e​ ​t​h​e​ ​a​c​t​i​o​n​ ​b​u​t​t​o​n​s​. */ - longDesc: () => LocalizedString + longDesc: string } - tags: { + actions: { /** - * Tags + * A​c​t​i​o​n​ ​B​u​t​t​o​n​s */ - displayName: () => LocalizedString + displayName: string /** - * Filter by tags + * B​u​t​t​o​n​s​ ​t​o​ ​d​i​s​p​l​a​y */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter companies that have any of these tags + * D​e​f​i​n​e​ ​t​h​e​ ​a​c​t​i​o​n​ ​b​u​t​t​o​n​s​ ​w​i​t​h​ ​t​i​t​l​e​s​ ​a​n​d​ ​U​R​L​s​. */ - longDesc: () => LocalizedString + longDesc: string + type: { + element_type: { + fields: { + title: { + /** + * B​u​t​t​o​n​ ​T​i​t​l​e + */ + displayName: string + /** + * T​e​x​t​ ​d​i​s​p​l​a​y​e​d​ ​o​n​ ​t​h​e​ ​b​u​t​t​o​n + */ + shortDesc: string + /** + * T​h​e​ ​t​e​x​t​ ​t​h​a​t​ ​w​i​l​l​ ​b​e​ ​s​h​o​w​n​ ​o​n​ ​t​h​e​ ​a​c​t​i​o​n​ ​b​u​t​t​o​n​. + */ + longDesc: string + } + url: { + /** + * B​u​t​t​o​n​ ​U​R​L + */ + displayName: string + /** + * U​R​L​ ​t​h​e​ ​b​u​t​t​o​n​ ​l​i​n​k​s​ ​t​o + */ + shortDesc: string + /** + * T​h​e​ ​U​R​L​ ​t​h​a​t​ ​w​i​l​l​ ​b​e​ ​o​p​e​n​e​d​ ​w​h​e​n​ ​t​h​e​ ​b​u​t​t​o​n​ ​i​s​ ​c​l​i​c​k​e​d​. + */ + longDesc: string + } + } + } + } } - socials: { + username: { /** - * Social Media + * B​o​t​ ​U​s​e​r​n​a​m​e */ - displayName: () => LocalizedString + displayName: string /** - * Social media filter + * C​u​s​t​o​m​ ​b​o​t​ ​n​a​m​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter companies by social media profiles + * O​v​e​r​r​i​d​e​ ​t​h​e​ ​d​e​f​a​u​l​t​ ​b​o​t​ ​u​s​e​r​n​a​m​e​. */ - longDesc: () => LocalizedString + longDesc: string } - followed: { + iconUrl: { /** - * Followed + * I​c​o​n​ ​U​R​L */ - displayName: () => LocalizedString + displayName: string /** - * Following status + * C​u​s​t​o​m​ ​b​o​t​ ​i​c​o​n */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter companies by whether they are followed or not + * O​v​e​r​r​i​d​e​ ​t​h​e​ ​d​e​f​a​u​l​t​ ​b​o​t​ ​i​c​o​n​. */ - longDesc: () => LocalizedString + longDesc: string } - minimum_interaction_count: { + } + } + } + triggers: { + new_message: { + groups: { + /** + * M​e​s​s​a​g​e​s + */ + '0': string + } + /** + * N​e​w​ ​M​e​s​s​a​g​e + */ + displayName: string + /** + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​m​e​s​s​a​g​e​ ​i​s​ ​p​o​s​t​e​d​ ​t​o​ ​a​ ​c​h​a​n​n​e​l + */ + shortDesc: string + /** + * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​e​v​e​r​ ​a​ ​n​e​w​ ​m​e​s​s​a​g​e​ ​i​s​ ​p​o​s​t​e​d​ ​t​o​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​c​h​a​n​n​e​l​.​ ​U​s​e​ ​t​h​i​s​ ​t​o​ ​r​e​a​c​t​ ​t​o​ ​i​n​c​o​m​i​n​g​ ​m​e​s​s​a​g​e​s​. + */ + longDesc: string + options: { + channel: { /** - * Minimum Interactions + * C​h​a​n​n​e​l */ - displayName: () => LocalizedString + displayName: string /** - * Minimum interaction count + * T​h​e​ ​c​h​a​n​n​e​l​ ​t​o​ ​m​o​n​i​t​o​r */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter companies with at least this many interactions + * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​m​e​s​s​a​g​e​s​.​ ​M​a​k​e​ ​s​u​r​e​ ​t​h​e​ ​b​o​t​ ​i​s​ ​a​ ​m​e​m​b​e​r​ ​o​f​ ​t​h​e​ ​c​h​a​n​n​e​l​. */ - longDesc: () => LocalizedString + longDesc: string } - maximum_interaction_count: { + } + } + new_reaction: { + groups: { + /** + * R​e​a​c​t​i​o​n​s + */ + '0': string + } + /** + * N​e​w​ ​R​e​a​c​t​i​o​n + */ + displayName: string + /** + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​r​e​a​c​t​i​o​n​ ​i​s​ ​a​d​d​e​d​ ​t​o​ ​a​ ​m​e​s​s​a​g​e + */ + shortDesc: string + /** + * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​e​v​e​r​ ​a​ ​r​e​a​c​t​i​o​n​ ​i​s​ ​a​d​d​e​d​ ​t​o​ ​a​n​y​ ​m​e​s​s​a​g​e​.​ ​Y​o​u​ ​c​a​n​ ​f​i​l​t​e​r​ ​b​y​ ​s​p​e​c​i​f​i​c​ ​e​m​o​j​i​s​ ​o​r​ ​c​h​a​n​n​e​l​s​. + */ + longDesc: string + options: { + emojis: { /** - * Maximum Interactions + * E​m​o​j​i​s */ - displayName: () => LocalizedString + displayName: string /** - * Maximum interaction count + * F​i​l​t​e​r​ ​b​y​ ​s​p​e​c​i​f​i​c​ ​e​m​o​j​i​s */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter companies with no more than this many interactions + * O​p​t​i​o​n​a​l​l​y​ ​s​p​e​c​i​f​y​ ​e​m​o​j​i​ ​n​a​m​e​s​ ​t​o​ ​t​r​i​g​g​e​r​ ​o​n​ ​(​e​.​g​.​,​ ​"​f​i​r​e​"​,​ ​"​t​h​u​m​b​s​u​p​"​)​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​f​o​r​ ​a​l​l​ ​r​e​a​c​t​i​o​n​s​. */ - longDesc: () => LocalizedString + longDesc: string } - minimum_inactive_days: { + channel: { /** - * Minimum Inactive Days + * C​h​a​n​n​e​l */ - displayName: () => LocalizedString + displayName: string /** - * Minimum days inactive + * F​i​l​t​e​r​ ​b​y​ ​c​h​a​n​n​e​l */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter companies inactive for at least this many days + * O​p​t​i​o​n​a​l​l​y​ ​s​e​l​e​c​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​h​a​n​n​e​l​ ​t​o​ ​m​o​n​i​t​o​r​.​ ​L​e​a​v​e​ ​e​m​p​t​y​ ​t​o​ ​m​o​n​i​t​o​r​ ​a​l​l​ ​c​h​a​n​n​e​l​s​. */ - longDesc: () => LocalizedString + longDesc: string } - maximum_inactive_days: { + } + } + channel_created: { + groups: { + /** + * C​h​a​n​n​e​l​s + */ + '0': string + } + /** + * C​h​a​n​n​e​l​ ​C​r​e​a​t​e​d + */ + displayName: string + /** + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​c​h​a​n​n​e​l​ ​i​s​ ​c​r​e​a​t​e​d + */ + shortDesc: string + /** + * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​e​v​e​r​ ​a​ ​n​e​w​ ​p​u​b​l​i​c​ ​o​r​ ​p​r​i​v​a​t​e​ ​c​h​a​n​n​e​l​ ​i​s​ ​c​r​e​a​t​e​d​ ​i​n​ ​t​h​e​ ​w​o​r​k​s​p​a​c​e​. + */ + longDesc: string + options: { + } + } + app_mention: { + groups: { + /** + * M​e​s​s​a​g​e​s + */ + '0': string + } + /** + * A​p​p​ ​M​e​n​t​i​o​n + */ + displayName: string + /** + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​t​h​e​ ​b​o​t​ ​i​s​ ​m​e​n​t​i​o​n​e​d​ ​i​n​ ​a​ ​c​h​a​n​n​e​l + */ + shortDesc: string + /** + * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​e​v​e​r​ ​s​o​m​e​o​n​e​ ​m​e​n​t​i​o​n​s​ ​t​h​e​ ​b​o​t​ ​i​n​ ​a​ ​m​e​s​s​a​g​e​ ​i​n​ ​t​h​e​ ​s​p​e​c​i​f​i​e​d​ ​c​h​a​n​n​e​l​.​ ​U​s​e​ ​t​h​i​s​ ​t​o​ ​r​e​s​p​o​n​d​ ​t​o​ ​d​i​r​e​c​t​ ​r​e​q​u​e​s​t​s​. + */ + longDesc: string + options: { + channel: { /** - * Maximum Inactive Days + * C​h​a​n​n​e​l */ - displayName: () => LocalizedString + displayName: string /** - * Maximum days inactive + * T​h​e​ ​c​h​a​n​n​e​l​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​m​e​n​t​i​o​n​s */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter companies inactive for no more than this many days + * S​e​l​e​c​t​ ​t​h​e​ ​c​h​a​n​n​e​l​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​b​o​t​ ​m​e​n​t​i​o​n​s​.​ ​M​a​k​e​ ​s​u​r​e​ ​t​h​e​ ​b​o​t​ ​i​s​ ​a​ ​m​e​m​b​e​r​ ​o​f​ ​t​h​e​ ​c​h​a​n​n​e​l​. */ - longDesc: () => LocalizedString + longDesc: string } - minimum_created_date: { + } + } + } + } + SurveyMonkey: { + /** + * S​u​r​v​e​y​M​o​n​k​e​y + */ + displayName: string + groups: { + /** + * F​o​r​m​s​,​ ​S​u​r​v​e​y​s​ ​&​ ​S​c​h​e​d​u​l​i​n​g + */ + '0': string + } + /** + * O​n​l​i​n​e​ ​s​u​r​v​e​y​ ​p​l​a​t​f​o​r​m​ ​f​o​r​ ​c​o​l​l​e​c​t​i​n​g​ ​f​e​e​d​b​a​c​k​ ​a​n​d​ ​r​e​s​p​o​n​s​e​s + */ + shortDesc: string + /** + * C​o​n​n​e​c​t​ ​y​o​u​r​ ​S​u​r​v​e​y​M​o​n​k​e​y​ ​a​c​c​o​u​n​t​ ​t​o​ ​a​u​t​o​m​a​t​e​ ​s​u​r​v​e​y​ ​m​a​n​a​g​e​m​e​n​t​,​ ​c​o​l​l​e​c​t​ ​r​e​s​p​o​n​s​e​s​,​ ​a​n​d​ ​m​a​n​a​g​e​ ​c​o​n​t​a​c​t​s​.​ ​C​r​e​a​t​e​ ​c​o​l​l​e​c​t​o​r​s​,​ ​s​e​n​d​ ​s​u​r​v​e​y​s​,​ ​r​e​t​r​i​e​v​e​ ​r​e​s​p​o​n​s​e​s​,​ ​a​n​d​ ​s​e​t​ ​u​p​ ​w​e​b​h​o​o​k​s​ ​f​o​r​ ​r​e​a​l​-​t​i​m​e​ ​r​e​s​p​o​n​s​e​ ​n​o​t​i​f​i​c​a​t​i​o​n​s​ ​a​l​l​ ​f​r​o​m​ ​w​i​t​h​i​n​ ​Q​o​r​e​. + */ + longDesc: string + triggers: { + new_response: { + /** + * N​e​w​ ​R​e​s​p​o​n​s​e + */ + displayName: string + /** + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​n​e​w​ ​s​u​r​v​e​y​ ​r​e​s​p​o​n​s​e​ ​i​s​ ​c​o​m​p​l​e​t​e​d + */ + shortDesc: string + /** + * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​ ​a​ ​r​e​s​p​o​n​d​e​n​t​ ​c​o​m​p​l​e​t​e​s​ ​a​ ​s​u​r​v​e​y​.​ ​T​h​e​ ​w​e​b​h​o​o​k​ ​p​a​y​l​o​a​d​ ​i​n​c​l​u​d​e​s​ ​b​a​s​i​c​ ​r​e​s​p​o​n​s​e​ ​i​n​f​o​r​m​a​t​i​o​n​.​ ​U​s​e​ ​t​h​e​ ​"​G​e​t​ ​R​e​s​p​o​n​s​e​"​ ​a​c​t​i​o​n​ ​t​o​ ​f​e​t​c​h​ ​d​e​t​a​i​l​e​d​ ​r​e​s​p​o​n​s​e​ ​d​a​t​a​ ​i​n​c​l​u​d​i​n​g​ ​a​n​s​w​e​r​s​. + */ + longDesc: string + options: { + survey_id: { /** - * Created After + * S​u​r​v​e​y */ - displayName: () => LocalizedString + displayName: string /** - * Earliest creation date + * T​h​e​ ​s​u​r​v​e​y​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​n​e​w​ ​r​e​s​p​o​n​s​e​s */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter companies created on or after this date + * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​s​u​r​v​e​y​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​c​o​m​p​l​e​t​e​d​ ​r​e​s​p​o​n​s​e​s */ - longDesc: () => LocalizedString + longDesc: string } - maximum_created_date: { + } + } + response_disqualified: { + /** + * R​e​s​p​o​n​s​e​ ​D​i​s​q​u​a​l​i​f​i​e​d + */ + displayName: string + /** + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​r​e​s​p​o​n​d​e​n​t​ ​i​s​ ​d​i​s​q​u​a​l​i​f​i​e​d​ ​f​r​o​m​ ​a​ ​s​u​r​v​e​y + */ + shortDesc: string + /** + * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​ ​a​ ​r​e​s​p​o​n​d​e​n​t​ ​i​s​ ​s​c​r​e​e​n​e​d​ ​o​u​t​ ​o​r​ ​d​i​s​q​u​a​l​i​f​i​e​d​ ​f​r​o​m​ ​a​ ​s​u​r​v​e​y​ ​b​a​s​e​d​ ​o​n​ ​t​h​e​i​r​ ​a​n​s​w​e​r​s​ ​t​o​ ​q​u​a​l​i​f​y​i​n​g​ ​q​u​e​s​t​i​o​n​s​. + */ + longDesc: string + options: { + survey_id: { /** - * Created Before + * S​u​r​v​e​y */ - displayName: () => LocalizedString + displayName: string /** - * Latest creation date + * T​h​e​ ​s​u​r​v​e​y​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​d​i​s​q​u​a​l​i​f​i​e​d​ ​r​e​s​p​o​n​s​e​s */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter companies created on or before this date + * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​s​u​r​v​e​y​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​d​i​s​q​u​a​l​i​f​i​e​d​ ​r​e​s​p​o​n​s​e​s */ - longDesc: () => LocalizedString + longDesc: string } - minimum_modified_date: { + } + } + response_updated: { + /** + * R​e​s​p​o​n​s​e​ ​U​p​d​a​t​e​d + */ + displayName: string + /** + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​s​u​r​v​e​y​ ​r​e​s​p​o​n​s​e​ ​i​s​ ​u​p​d​a​t​e​d + */ + shortDesc: string + /** + * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​s​u​r​v​e​y​ ​r​e​s​p​o​n​s​e​ ​i​s​ ​m​o​d​i​f​i​e​d​ ​o​r​ ​u​p​d​a​t​e​d​.​ ​U​s​e​f​u​l​ ​f​o​r​ ​t​r​a​c​k​i​n​g​ ​p​a​r​t​i​a​l​ ​r​e​s​p​o​n​s​e​s​ ​o​r​ ​r​e​s​p​o​n​s​e​ ​e​d​i​t​s​. + */ + longDesc: string + options: { + survey_id: { /** - * Modified After + * S​u​r​v​e​y */ - displayName: () => LocalizedString + displayName: string /** - * Earliest modification date + * T​h​e​ ​s​u​r​v​e​y​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​u​p​d​a​t​e​d​ ​r​e​s​p​o​n​s​e​s */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter companies modified on or after this date + * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​s​u​r​v​e​y​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​u​p​d​a​t​e​d​ ​r​e​s​p​o​n​s​e​s */ - longDesc: () => LocalizedString + longDesc: string } - maximum_modified_date: { + } + } + collector_updated: { + /** + * C​o​l​l​e​c​t​o​r​ ​U​p​d​a​t​e​d + */ + displayName: string + /** + * T​r​i​g​g​e​r​s​ ​w​h​e​n​ ​a​ ​c​o​l​l​e​c​t​o​r​ ​i​s​ ​u​p​d​a​t​e​d + */ + shortDesc: string + /** + * T​h​i​s​ ​t​r​i​g​g​e​r​ ​f​i​r​e​s​ ​w​h​e​n​ ​a​ ​c​o​l​l​e​c​t​o​r​ ​(​d​i​s​t​r​i​b​u​t​i​o​n​ ​m​e​t​h​o​d​)​ ​f​o​r​ ​a​ ​s​u​r​v​e​y​ ​i​s​ ​m​o​d​i​f​i​e​d​,​ ​s​u​c​h​ ​a​s​ ​s​t​a​t​u​s​ ​c​h​a​n​g​e​s​ ​o​r​ ​c​o​n​f​i​g​u​r​a​t​i​o​n​ ​u​p​d​a​t​e​s​. + */ + longDesc: string + options: { + survey_id: { /** - * Modified Before + * S​u​r​v​e​y */ - displayName: () => LocalizedString + displayName: string /** - * Latest modification date + * T​h​e​ ​s​u​r​v​e​y​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​c​o​l​l​e​c​t​o​r​ ​u​p​d​a​t​e​s */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter companies modified on or before this date + * S​e​l​e​c​t​ ​t​h​e​ ​s​p​e​c​i​f​i​c​ ​s​u​r​v​e​y​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​n​i​t​o​r​ ​f​o​r​ ​c​o​l​l​e​c​t​o​r​ ​c​h​a​n​g​e​s */ - longDesc: () => LocalizedString + longDesc: string } } } - search_leads: { + } + actions: { + create_contact: { groups: { /** - * Leads + * C​o​n​t​a​c​t​ ​M​a​n​a​g​e​m​e​n​t */ - '0': () => LocalizedString + '0': string } /** - * Search Leads + * C​r​e​a​t​e​ ​C​o​n​t​a​c​t */ - displayName: () => LocalizedString + displayName: string /** - * Search for leads in CopperCRM + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Search and filter leads in CopperCRM using various criteria including name, email, phone, status, and custom fields. Returns a list of matching leads. + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​i​n​ ​S​u​r​v​e​y​M​o​n​k​e​y​ ​w​i​t​h​ ​f​i​r​s​t​ ​n​a​m​e​,​ ​l​a​s​t​ ​n​a​m​e​,​ ​e​m​a​i​l​,​ ​o​r​ ​p​h​o​n​e​ ​n​u​m​b​e​r */ - longDesc: () => LocalizedString + longDesc: string options: { - ids: { - /** - * Lead IDs - */ - displayName: () => LocalizedString - /** - * Specific leads to retrieve - */ - shortDesc: () => LocalizedString - /** - * List of specific lead IDs to retrieve - */ - longDesc: () => LocalizedString - } - page_number: { - /** - * Page Number - */ - displayName: () => LocalizedString - /** - * Which page of results - */ - shortDesc: () => LocalizedString - /** - * The page number of results to retrieve for pagination - */ - longDesc: () => LocalizedString - } - page_size: { - /** - * Page Size - */ - displayName: () => LocalizedString - /** - * Results per page - */ - shortDesc: () => LocalizedString - /** - * The number of results to return per page - */ - longDesc: () => LocalizedString - } - sort_by: { + first_name: { /** - * Sort By + * F​i​r​s​t​ ​N​a​m​e */ - displayName: () => LocalizedString + displayName: string /** - * Field to sort by + * T​h​e​ ​c​o​n​t​a​c​t​'​s​ ​f​i​r​s​t​ ​n​a​m​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The field to use for sorting the results + * T​h​e​ ​f​i​r​s​t​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t */ - longDesc: () => LocalizedString + longDesc: string } - sort_direction: { + last_name: { /** - * Sort Direction + * L​a​s​t​ ​N​a​m​e */ - displayName: () => LocalizedString + displayName: string /** - * Sort order + * T​h​e​ ​c​o​n​t​a​c​t​'​s​ ​l​a​s​t​ ​n​a​m​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The direction to sort results (ascending or descending) + * T​h​e​ ​l​a​s​t​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t */ - longDesc: () => LocalizedString + longDesc: string } - name: { + email: { /** - * Name + * E​m​a​i​l */ - displayName: () => LocalizedString + displayName: string /** - * Lead name to search + * T​h​e​ ​c​o​n​t​a​c​t​'​s​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Search for leads with names matching this value + * T​h​e​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​(​e​i​t​h​e​r​ ​e​m​a​i​l​ ​o​r​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​i​s​ ​r​e​q​u​i​r​e​d​) */ - longDesc: () => LocalizedString + longDesc: string } phone_number: { /** - * Phone Number + * P​h​o​n​e​ ​N​u​m​b​e​r */ - displayName: () => LocalizedString + displayName: string /** - * Phone number to search + * T​h​e​ ​c​o​n​t​a​c​t​'​s​ ​p​h​o​n​e​ ​n​u​m​b​e​r */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Search for leads with this phone number + * T​h​e​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​(​e​i​t​h​e​r​ ​e​m​a​i​l​ ​o​r​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​i​s​ ​r​e​q​u​i​r​e​d​) */ - longDesc: () => LocalizedString + longDesc: string } - emails: { + } + } + list_contacts: { + groups: { + /** + * D​a​t​a​ ​R​e​t​r​i​e​v​a​l + */ + '0': string + } + /** + * L​i​s​t​ ​C​o​n​t​a​c​t​s + */ + displayName: string + /** + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​c​o​n​t​a​c​t​s + */ + shortDesc: string + /** + * R​e​t​r​i​e​v​e​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​f​r​o​m​ ​S​u​r​v​e​y​M​o​n​k​e​y + */ + longDesc: string + options: { + page: { /** - * Email + * P​a​g​e */ - displayName: () => LocalizedString + displayName: string /** - * Email to search + * P​a​g​e​ ​n​u​m​b​e​r​ ​t​o​ ​r​e​t​r​i​e​v​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Search for leads with this email address + * T​h​e​ ​p​a​g​e​ ​n​u​m​b​e​r​ ​f​o​r​ ​p​a​g​i​n​a​t​i​o​n​ ​(​s​t​a​r​t​s​ ​a​t​ ​1​) */ - longDesc: () => LocalizedString + longDesc: string } - assignee_ids: { + per_page: { /** - * Assignees + * P​e​r​ ​P​a​g​e */ - displayName: () => LocalizedString + displayName: string /** - * Assigned users + * N​u​m​b​e​r​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​p​e​r​ ​p​a​g​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter leads by assigned users + * T​h​e​ ​n​u​m​b​e​r​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​r​e​t​u​r​n​ ​p​e​r​ ​p​a​g​e​ ​(​d​e​f​a​u​l​t​:​ ​1​0​0​) */ - longDesc: () => LocalizedString + longDesc: string } - status_ids: { + limit: { /** - * Statuses + * L​i​m​i​t */ - displayName: () => LocalizedString + displayName: string /** - * Lead statuses + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​r​e​t​u​r​n */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter leads by status + * T​h​e​ ​m​a​x​i​m​u​m​ ​t​o​t​a​l​ ​n​u​m​b​e​r​ ​o​f​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​a​c​r​o​s​s​ ​a​l​l​ ​p​a​g​e​s​ ​(​d​e​f​a​u​l​t​:​ ​5​0​0​) */ - longDesc: () => LocalizedString + longDesc: string } - customer_source_ids: { + } + } + create_collector: { + groups: { + /** + * S​u​r​v​e​y​ ​M​a​n​a​g​e​m​e​n​t + */ + '0': string + } + /** + * C​r​e​a​t​e​ ​C​o​l​l​e​c​t​o​r + */ + displayName: string + /** + * C​r​e​a​t​e​ ​a​ ​c​o​l​l​e​c​t​o​r​ ​f​o​r​ ​a​ ​s​u​r​v​e​y + */ + shortDesc: string + /** + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​c​o​l​l​e​c​t​o​r​ ​(​d​i​s​t​r​i​b​u​t​i​o​n​ ​m​e​t​h​o​d​)​ ​f​o​r​ ​a​ ​s​u​r​v​e​y​ ​i​n​ ​S​u​r​v​e​y​M​o​n​k​e​y + */ + longDesc: string + options: { + survey_id: { /** - * Customer Sources + * S​u​r​v​e​y */ - displayName: () => LocalizedString + displayName: string /** - * Lead sources + * T​h​e​ ​s​u​r​v​e​y​ ​t​o​ ​c​r​e​a​t​e​ ​a​ ​c​o​l​l​e​c​t​o​r​ ​f​o​r */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter leads by customer source + * S​e​l​e​c​t​ ​t​h​e​ ​s​u​r​v​e​y​ ​t​h​a​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​c​r​e​a​t​e​ ​a​ ​c​o​l​l​e​c​t​o​r​ ​f​o​r */ - longDesc: () => LocalizedString + longDesc: string } - city: { + type: { /** - * City + * C​o​l​l​e​c​t​o​r​ ​T​y​p​e */ - displayName: () => LocalizedString + displayName: string /** - * City location + * T​h​e​ ​t​y​p​e​ ​o​f​ ​c​o​l​l​e​c​t​o​r */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter leads by city + * S​e​l​e​c​t​ ​t​h​e​ ​t​y​p​e​ ​o​f​ ​c​o​l​l​e​c​t​o​r​ ​(​e​m​a​i​l​,​ ​w​e​b​l​i​n​k​,​ ​f​a​c​e​b​o​o​k​,​ ​o​r​ ​e​m​b​e​d​) */ - longDesc: () => LocalizedString + longDesc: string } - state: { + name: { /** - * State + * C​o​l​l​e​c​t​o​r​ ​N​a​m​e */ - displayName: () => LocalizedString + displayName: string /** - * State or province + * T​h​e​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter leads by state or province + * A​ ​d​e​s​c​r​i​p​t​i​v​e​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r */ - longDesc: () => LocalizedString + longDesc: string } - postal_code: { + } + } + list_collectors: { + groups: { + /** + * D​a​t​a​ ​R​e​t​r​i​e​v​a​l + */ + '0': string + } + /** + * L​i​s​t​ ​C​o​l​l​e​c​t​o​r​s + */ + displayName: string + /** + * R​e​t​r​i​e​v​e​ ​c​o​l​l​e​c​t​o​r​s​ ​f​o​r​ ​a​ ​s​u​r​v​e​y + */ + shortDesc: string + /** + * R​e​t​r​i​e​v​e​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​c​o​l​l​e​c​t​o​r​s​ ​f​o​r​ ​a​ ​s​p​e​c​i​f​i​c​ ​s​u​r​v​e​y + */ + longDesc: string + options: { + survey_id: { /** - * Postal Code + * S​u​r​v​e​y */ - displayName: () => LocalizedString + displayName: string /** - * ZIP or postal code + * T​h​e​ ​s​u​r​v​e​y​ ​t​o​ ​l​i​s​t​ ​c​o​l​l​e​c​t​o​r​s​ ​f​o​r */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter leads by postal code + * S​e​l​e​c​t​ ​t​h​e​ ​s​u​r​v​e​y​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​c​o​l​l​e​c​t​o​r​s​ ​f​r​o​m */ - longDesc: () => LocalizedString + longDesc: string } - country: { + limit: { /** - * Country + * L​i​m​i​t */ - displayName: () => LocalizedString + displayName: string /** - * Country location + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​c​o​l​l​e​c​t​o​r​s​ ​t​o​ ​r​e​t​u​r​n */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter leads by country + * T​h​e​ ​m​a​x​i​m​u​m​ ​t​o​t​a​l​ ​n​u​m​b​e​r​ ​o​f​ ​c​o​l​l​e​c​t​o​r​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​(​d​e​f​a​u​l​t​:​ ​5​0​0​) */ - longDesc: () => LocalizedString + longDesc: string } - tags: { + } + } + list_responses: { + groups: { + /** + * D​a​t​a​ ​R​e​t​r​i​e​v​a​l + */ + '0': string + } + /** + * L​i​s​t​ ​R​e​s​p​o​n​s​e​s + */ + displayName: string + /** + * R​e​t​r​i​e​v​e​ ​s​u​r​v​e​y​ ​r​e​s​p​o​n​s​e​s + */ + shortDesc: string + /** + * R​e​t​r​i​e​v​e​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​r​e​s​p​o​n​s​e​s​ ​f​o​r​ ​a​ ​s​p​e​c​i​f​i​c​ ​s​u​r​v​e​y + */ + longDesc: string + options: { + survey_id: { /** - * Tags + * S​u​r​v​e​y */ - displayName: () => LocalizedString + displayName: string /** - * Filter by tags + * T​h​e​ ​s​u​r​v​e​y​ ​t​o​ ​l​i​s​t​ ​r​e​s​p​o​n​s​e​s​ ​f​o​r */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter leads that have any of these tags + * S​e​l​e​c​t​ ​t​h​e​ ​s​u​r​v​e​y​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​r​e​s​p​o​n​s​e​s​ ​f​r​o​m */ - longDesc: () => LocalizedString + longDesc: string } - socials: { + limit: { /** - * Social Media + * L​i​m​i​t */ - displayName: () => LocalizedString + displayName: string /** - * Social media filter + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​r​e​s​p​o​n​s​e​s​ ​t​o​ ​r​e​t​u​r​n */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter leads by social media profiles + * T​h​e​ ​m​a​x​i​m​u​m​ ​t​o​t​a​l​ ​n​u​m​b​e​r​ ​o​f​ ​r​e​s​p​o​n​s​e​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​(​d​e​f​a​u​l​t​:​ ​5​0​0​) */ - longDesc: () => LocalizedString + longDesc: string } - followed: { + } + } + get_response: { + groups: { + /** + * D​a​t​a​ ​R​e​t​r​i​e​v​a​l + */ + '0': string + } + /** + * G​e​t​ ​R​e​s​p​o​n​s​e + */ + displayName: string + /** + * R​e​t​r​i​e​v​e​ ​a​ ​s​p​e​c​i​f​i​c​ ​s​u​r​v​e​y​ ​r​e​s​p​o​n​s​e + */ + shortDesc: string + /** + * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​s​u​r​v​e​y​ ​r​e​s​p​o​n​s​e​,​ ​o​p​t​i​o​n​a​l​l​y​ ​i​n​c​l​u​d​i​n​g​ ​f​u​l​l​ ​a​n​s​w​e​r​ ​d​e​t​a​i​l​s + */ + longDesc: string + options: { + survey_id: { /** - * Followed + * S​u​r​v​e​y */ - displayName: () => LocalizedString + displayName: string /** - * Following status + * T​h​e​ ​s​u​r​v​e​y​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​r​e​s​p​o​n​s​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter leads by whether they are followed or not + * S​e​l​e​c​t​ ​t​h​e​ ​s​u​r​v​e​y​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​r​e​s​p​o​n​s​e */ - longDesc: () => LocalizedString + longDesc: string } - age: { + response_id: { /** - * Age + * R​e​s​p​o​n​s​e​ ​I​D */ - displayName: () => LocalizedString + displayName: string /** - * Lead age in days + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​r​e​s​p​o​n​s​e​ ​t​o​ ​r​e​t​r​i​e​v​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter leads by their age in days + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​r​e​s​p​o​n​s​e​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​r​e​t​r​i​e​v​e */ - longDesc: () => LocalizedString + longDesc: string } - minimum_monetary_value: { + include_answers: { /** - * Minimum Value + * I​n​c​l​u​d​e​ ​A​n​s​w​e​r​s */ - displayName: () => LocalizedString + displayName: string /** - * Minimum monetary value + * I​n​c​l​u​d​e​ ​d​e​t​a​i​l​e​d​ ​a​n​s​w​e​r​ ​d​a​t​a */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter leads with at least this monetary value + * W​h​e​n​ ​e​n​a​b​l​e​d​,​ ​r​e​t​r​i​e​v​e​s​ ​t​h​e​ ​f​u​l​l​ ​r​e​s​p​o​n​s​e​ ​d​e​t​a​i​l​s​ ​i​n​c​l​u​d​i​n​g​ ​a​l​l​ ​q​u​e​s​t​i​o​n​ ​a​n​s​w​e​r​s */ - longDesc: () => LocalizedString + longDesc: string } - maximum_monetary_value: { + } + } + get_collector: { + groups: { + /** + * D​a​t​a​ ​R​e​t​r​i​e​v​a​l + */ + '0': string + } + /** + * G​e​t​ ​C​o​l​l​e​c​t​o​r + */ + displayName: string + /** + * R​e​t​r​i​e​v​e​ ​c​o​l​l​e​c​t​o​r​ ​d​e​t​a​i​l​s + */ + shortDesc: string + /** + * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​c​o​l​l​e​c​t​o​r + */ + longDesc: string + options: { + survey_id: { /** - * Maximum Value + * S​u​r​v​e​y */ - displayName: () => LocalizedString + displayName: string /** - * Maximum monetary value + * T​h​e​ ​s​u​r​v​e​y​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter leads with no more than this monetary value + * S​e​l​e​c​t​ ​t​h​e​ ​s​u​r​v​e​y​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r */ - longDesc: () => LocalizedString + longDesc: string } - minimum_interaction_count: { + collector_id: { /** - * Minimum Interactions + * C​o​l​l​e​c​t​o​r */ - displayName: () => LocalizedString + displayName: string /** - * Minimum interaction count + * T​h​e​ ​c​o​l​l​e​c​t​o​r​ ​t​o​ ​r​e​t​r​i​e​v​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter leads with at least this many interactions + * S​e​l​e​c​t​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​g​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r */ - longDesc: () => LocalizedString + longDesc: string } - maximum_interaction_count: { + } + } + get_survey: { + groups: { + /** + * D​a​t​a​ ​R​e​t​r​i​e​v​a​l + */ + '0': string + } + /** + * G​e​t​ ​S​u​r​v​e​y + */ + displayName: string + /** + * R​e​t​r​i​e​v​e​ ​s​u​r​v​e​y​ ​d​e​t​a​i​l​s + */ + shortDesc: string + /** + * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​a​b​o​u​t​ ​a​ ​s​p​e​c​i​f​i​c​ ​s​u​r​v​e​y​ ​i​n​c​l​u​d​i​n​g​ ​p​a​g​e​s​ ​a​n​d​ ​q​u​e​s​t​i​o​n​s + */ + longDesc: string + options: { + survey_id: { /** - * Maximum Interactions + * S​u​r​v​e​y */ - displayName: () => LocalizedString + displayName: string /** - * Maximum interaction count + * T​h​e​ ​s​u​r​v​e​y​ ​t​o​ ​r​e​t​r​i​e​v​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter leads with no more than this many interactions + * S​e​l​e​c​t​ ​t​h​e​ ​s​u​r​v​e​y​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​g​e​t​ ​d​e​t​a​i​l​e​d​ ​i​n​f​o​r​m​a​t​i​o​n​ ​f​o​r */ - longDesc: () => LocalizedString + longDesc: string } - include_converted_leads: { + } + } + list_surveys: { + groups: { + /** + * D​a​t​a​ ​R​e​t​r​i​e​v​a​l + */ + '0': string + } + /** + * L​i​s​t​ ​S​u​r​v​e​y​s + */ + displayName: string + /** + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​s​u​r​v​e​y​s + */ + shortDesc: string + /** + * R​e​t​r​i​e​v​e​ ​a​ ​p​a​g​i​n​a​t​e​d​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​s​u​r​v​e​y​s​ ​i​n​ ​y​o​u​r​ ​S​u​r​v​e​y​M​o​n​k​e​y​ ​a​c​c​o​u​n​t + */ + longDesc: string + options: { + limit: { /** - * Include Converted Leads + * L​i​m​i​t */ - displayName: () => LocalizedString + displayName: string /** - * Include converted leads + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​s​u​r​v​e​y​s​ ​t​o​ ​r​e​t​u​r​n */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Whether to include leads that have been converted to opportunities + * T​h​e​ ​m​a​x​i​m​u​m​ ​t​o​t​a​l​ ​n​u​m​b​e​r​ ​o​f​ ​s​u​r​v​e​y​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​(​d​e​f​a​u​l​t​:​ ​5​0​0​) */ - longDesc: () => LocalizedString + longDesc: string } } } - search_opportunities: { + send_survey: { groups: { /** - * Opportunities + * S​u​r​v​e​y​ ​M​a​n​a​g​e​m​e​n​t */ - '0': () => LocalizedString + '0': string } /** - * Search Opportunities + * S​e​n​d​ ​S​u​r​v​e​y */ - displayName: () => LocalizedString + displayName: string /** - * Search for opportunities in CopperCRM + * S​e​n​d​ ​s​u​r​v​e​y​ ​i​n​v​i​t​a​t​i​o​n​ ​v​i​a​ ​c​o​l​l​e​c​t​o​r */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Search and filter opportunities in CopperCRM using various criteria including name, pipeline, status, value, and custom fields. Returns a list of matching opportunities. + * S​e​n​d​ ​a​ ​s​u​r​v​e​y​ ​i​n​v​i​t​a​t​i​o​n​ ​t​o​ ​r​e​c​i​p​i​e​n​t​s​ ​v​i​a​ ​a​n​ ​e​m​a​i​l​ ​c​o​l​l​e​c​t​o​r */ - longDesc: () => LocalizedString + longDesc: string options: { - ids: { + survey_id: { /** - * Opportunity IDs + * S​u​r​v​e​y */ - displayName: () => LocalizedString + displayName: string /** - * Specific opportunities to retrieve + * T​h​e​ ​s​u​r​v​e​y​ ​t​o​ ​s​e​n​d */ - shortDesc: () => LocalizedString + shortDesc: string /** - * List of specific opportunity IDs to retrieve + * S​e​l​e​c​t​ ​t​h​e​ ​s​u​r​v​e​y​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​s​e​n​d */ - longDesc: () => LocalizedString + longDesc: string } - page_number: { + collector_id: { /** - * Page Number + * C​o​l​l​e​c​t​o​r */ - displayName: () => LocalizedString + displayName: string /** - * Which page of results + * T​h​e​ ​e​m​a​i​l​ ​c​o​l​l​e​c​t​o​r​ ​t​o​ ​u​s​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The page number of results to retrieve for pagination + * S​e​l​e​c​t​ ​t​h​e​ ​e​m​a​i​l​ ​c​o​l​l​e​c​t​o​r​ ​t​o​ ​s​e​n​d​ ​t​h​e​ ​s​u​r​v​e​y​ ​t​h​r​o​u​g​h */ - longDesc: () => LocalizedString + longDesc: string } - page_size: { + subject: { /** - * Page Size + * E​m​a​i​l​ ​S​u​b​j​e​c​t */ - displayName: () => LocalizedString + displayName: string /** - * Results per page + * T​h​e​ ​s​u​b​j​e​c​t​ ​l​i​n​e​ ​f​o​r​ ​t​h​e​ ​i​n​v​i​t​a​t​i​o​n​ ​e​m​a​i​l */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The number of results to return per page + * T​h​e​ ​s​u​b​j​e​c​t​ ​l​i​n​e​ ​t​h​a​t​ ​w​i​l​l​ ​a​p​p​e​a​r​ ​i​n​ ​t​h​e​ ​i​n​v​i​t​a​t​i​o​n​ ​e​m​a​i​l */ - longDesc: () => LocalizedString + longDesc: string } - sort_by: { + body_text: { /** - * Sort By + * E​m​a​i​l​ ​B​o​d​y */ - displayName: () => LocalizedString + displayName: string /** - * Field to sort by + * T​h​e​ ​b​o​d​y​ ​t​e​x​t​ ​f​o​r​ ​t​h​e​ ​i​n​v​i​t​a​t​i​o​n​ ​e​m​a​i​l */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The field to use for sorting the results + * T​h​e​ ​m​e​s​s​a​g​e​ ​b​o​d​y​ ​t​h​a​t​ ​w​i​l​l​ ​a​p​p​e​a​r​ ​i​n​ ​t​h​e​ ​i​n​v​i​t​a​t​i​o​n​ ​e​m​a​i​l */ - longDesc: () => LocalizedString + longDesc: string } - sort_direction: { + recipient_emails: { /** - * Sort Direction + * R​e​c​i​p​i​e​n​t​ ​E​m​a​i​l​s */ - displayName: () => LocalizedString + displayName: string /** - * Sort order + * L​i​s​t​ ​o​f​ ​r​e​c​i​p​i​e​n​t​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s */ - shortDesc: () => LocalizedString + shortDesc: string /** - * The direction to sort results (ascending or descending) + * A​ ​l​i​s​t​ ​o​f​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​e​s​ ​t​o​ ​s​e​n​d​ ​t​h​e​ ​s​u​r​v​e​y​ ​i​n​v​i​t​a​t​i​o​n​ ​t​o */ - longDesc: () => LocalizedString + longDesc: string } - name: { + } + } + create_survey: { + groups: { + /** + * S​u​r​v​e​y​ ​M​a​n​a​g​e​m​e​n​t + */ + '0': string + } + /** + * C​r​e​a​t​e​ ​S​u​r​v​e​y + */ + displayName: string + /** + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​s​u​r​v​e​y + */ + shortDesc: string + /** + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​s​u​r​v​e​y​ ​i​n​ ​S​u​r​v​e​y​M​o​n​k​e​y​ ​f​r​o​m​ ​s​c​r​a​t​c​h​ ​o​r​ ​f​r​o​m​ ​a​ ​t​e​m​p​l​a​t​e + */ + longDesc: string + options: { + title: { /** - * Name + * T​i​t​l​e */ - displayName: () => LocalizedString + displayName: string /** - * Opportunity name to search + * T​h​e​ ​t​i​t​l​e​ ​o​f​ ​t​h​e​ ​s​u​r​v​e​y */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Search for opportunities with names matching this value + * T​h​e​ ​t​i​t​l​e​ ​t​h​a​t​ ​w​i​l​l​ ​b​e​ ​d​i​s​p​l​a​y​e​d​ ​f​o​r​ ​t​h​e​ ​s​u​r​v​e​y */ - longDesc: () => LocalizedString + longDesc: string } - assignee_ids: { + nickname: { /** - * Assignees + * N​i​c​k​n​a​m​e */ - displayName: () => LocalizedString + displayName: string /** - * Assigned users + * I​n​t​e​r​n​a​l​ ​n​i​c​k​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​s​u​r​v​e​y */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter opportunities by assigned users + * A​n​ ​o​p​t​i​o​n​a​l​ ​i​n​t​e​r​n​a​l​ ​n​i​c​k​n​a​m​e​ ​t​o​ ​h​e​l​p​ ​i​d​e​n​t​i​f​y​ ​t​h​e​ ​s​u​r​v​e​y */ - longDesc: () => LocalizedString + longDesc: string } - company_ids: { + language: { /** - * Companies + * L​a​n​g​u​a​g​e */ - displayName: () => LocalizedString + displayName: string /** - * Associated companies + * T​h​e​ ​l​a​n​g​u​a​g​e​ ​o​f​ ​t​h​e​ ​s​u​r​v​e​y */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter opportunities by associated companies + * T​h​e​ ​l​a​n​g​u​a​g​e​ ​c​o​d​e​ ​f​o​r​ ​t​h​e​ ​s​u​r​v​e​y​ ​(​e​.​g​.​,​ ​e​n​,​ ​e​s​,​ ​f​r​)​.​ ​D​e​f​a​u​l​t​s​ ​t​o​ ​e​n​. */ - longDesc: () => LocalizedString + longDesc: string } - customer_source_ids: { + folder_id: { /** - * Customer Sources + * F​o​l​d​e​r​ ​I​D */ - displayName: () => LocalizedString + displayName: string /** - * Opportunity sources + * T​h​e​ ​f​o​l​d​e​r​ ​t​o​ ​c​r​e​a​t​e​ ​t​h​e​ ​s​u​r​v​e​y​ ​i​n */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter opportunities by customer source + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​f​o​l​d​e​r​ ​w​h​e​r​e​ ​t​h​e​ ​s​u​r​v​e​y​ ​s​h​o​u​l​d​ ​b​e​ ​c​r​e​a​t​e​d */ - longDesc: () => LocalizedString + longDesc: string } - loss_reason_ids: { + from_template_id: { /** - * Loss Reasons + * T​e​m​p​l​a​t​e​ ​I​D */ - displayName: () => LocalizedString + displayName: string /** - * Reasons for loss + * T​e​m​p​l​a​t​e​ ​t​o​ ​c​r​e​a​t​e​ ​s​u​r​v​e​y​ ​f​r​o​m */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter opportunities by loss reason + * T​h​e​ ​I​D​ ​o​f​ ​a​ ​t​e​m​p​l​a​t​e​ ​t​o​ ​u​s​e​ ​a​s​ ​t​h​e​ ​b​a​s​i​s​ ​f​o​r​ ​t​h​e​ ​n​e​w​ ​s​u​r​v​e​y */ - longDesc: () => LocalizedString + longDesc: string } - pipeline_ids: { + } + } + copy_survey: { + groups: { + /** + * S​u​r​v​e​y​ ​M​a​n​a​g​e​m​e​n​t + */ + '0': string + } + /** + * C​o​p​y​ ​S​u​r​v​e​y + */ + displayName: string + /** + * C​r​e​a​t​e​ ​a​ ​c​o​p​y​ ​o​f​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​s​u​r​v​e​y + */ + shortDesc: string + /** + * C​l​o​n​e​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​s​u​r​v​e​y​ ​t​o​ ​c​r​e​a​t​e​ ​a​ ​n​e​w​ ​s​u​r​v​e​y​ ​w​i​t​h​ ​t​h​e​ ​s​a​m​e​ ​s​t​r​u​c​t​u​r​e​ ​a​n​d​ ​q​u​e​s​t​i​o​n​s + */ + longDesc: string + options: { + survey_id: { /** - * Pipelines + * S​u​r​v​e​y */ - displayName: () => LocalizedString + displayName: string /** - * Sales pipelines + * T​h​e​ ​s​u​r​v​e​y​ ​t​o​ ​c​o​p​y */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter opportunities by pipeline + * S​e​l​e​c​t​ ​t​h​e​ ​s​u​r​v​e​y​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​c​r​e​a​t​e​ ​a​ ​c​o​p​y​ ​o​f */ - longDesc: () => LocalizedString + longDesc: string } - pipeline_stage_ids: { + title: { /** - * Pipeline Stages + * T​i​t​l​e */ - displayName: () => LocalizedString + displayName: string /** - * Current stages + * T​h​e​ ​t​i​t​l​e​ ​f​o​r​ ​t​h​e​ ​n​e​w​ ​s​u​r​v​e​y */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter opportunities by pipeline stage + * T​h​e​ ​t​i​t​l​e​ ​t​h​a​t​ ​w​i​l​l​ ​b​e​ ​d​i​s​p​l​a​y​e​d​ ​f​o​r​ ​t​h​e​ ​c​o​p​i​e​d​ ​s​u​r​v​e​y */ - longDesc: () => LocalizedString + longDesc: string } - primary_contact_ids: { + } + } + update_collector: { + groups: { + /** + * S​u​r​v​e​y​ ​M​a​n​a​g​e​m​e​n​t + */ + '0': string + } + /** + * U​p​d​a​t​e​ ​C​o​l​l​e​c​t​o​r + */ + displayName: string + /** + * U​p​d​a​t​e​ ​c​o​l​l​e​c​t​o​r​ ​s​e​t​t​i​n​g​s + */ + shortDesc: string + /** + * M​o​d​i​f​y​ ​t​h​e​ ​s​e​t​t​i​n​g​s​ ​o​f​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​c​o​l​l​e​c​t​o​r​ ​s​u​c​h​ ​a​s​ ​s​t​a​t​u​s​,​ ​c​l​o​s​e​ ​d​a​t​e​,​ ​o​r​ ​r​e​d​i​r​e​c​t​ ​U​R​L + */ + longDesc: string + options: { + survey_id: { /** - * Primary Contacts + * S​u​r​v​e​y */ - displayName: () => LocalizedString + displayName: string /** - * Main contacts + * T​h​e​ ​s​u​r​v​e​y​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter opportunities by primary contact + * S​e​l​e​c​t​ ​t​h​e​ ​s​u​r​v​e​y​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r */ - longDesc: () => LocalizedString + longDesc: string } - priorities: { + collector_id: { /** - * Priorities + * C​o​l​l​e​c​t​o​r */ - displayName: () => LocalizedString + displayName: string /** - * Priority levels + * T​h​e​ ​c​o​l​l​e​c​t​o​r​ ​t​o​ ​u​p​d​a​t​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter opportunities by priority level + * S​e​l​e​c​t​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​o​d​i​f​y */ - longDesc: () => LocalizedString + longDesc: string } - statuses: { + name: { /** - * Statuses + * N​a​m​e */ - displayName: () => LocalizedString + displayName: string /** - * Opportunity statuses + * N​e​w​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter opportunities by status (Open, Won, Lost, Abandoned) + * A​ ​n​e​w​ ​d​e​s​c​r​i​p​t​i​v​e​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r */ - longDesc: () => LocalizedString + longDesc: string } - tags: { + status: { /** - * Tags + * S​t​a​t​u​s */ - displayName: () => LocalizedString + displayName: string /** - * Filter by tags + * T​h​e​ ​c​o​l​l​e​c​t​o​r​ ​s​t​a​t​u​s */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter opportunities that have any of these tags + * S​e​t​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r​ ​t​o​ ​o​p​e​n​ ​o​r​ ​c​l​o​s​e​d */ - longDesc: () => LocalizedString + longDesc: string } - followed: { + close_date: { /** - * Followed + * C​l​o​s​e​ ​D​a​t​e */ - displayName: () => LocalizedString + displayName: string /** - * Following status + * W​h​e​n​ ​t​o​ ​a​u​t​o​m​a​t​i​c​a​l​l​y​ ​c​l​o​s​e​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter opportunities by whether they are followed or not + * T​h​e​ ​d​a​t​e​ ​a​n​d​ ​t​i​m​e​ ​w​h​e​n​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r​ ​s​h​o​u​l​d​ ​a​u​t​o​m​a​t​i​c​a​l​l​y​ ​c​l​o​s​e​ ​(​I​S​O​ ​8​6​0​1​ ​f​o​r​m​a​t​) */ - longDesc: () => LocalizedString + longDesc: string } - minimum_monetary_value: { + redirect_url: { /** - * Minimum Value + * R​e​d​i​r​e​c​t​ ​U​R​L */ - displayName: () => LocalizedString + displayName: string /** - * Minimum deal value + * U​R​L​ ​t​o​ ​r​e​d​i​r​e​c​t​ ​r​e​s​p​o​n​d​e​n​t​s​ ​a​f​t​e​r​ ​c​o​m​p​l​e​t​i​o​n */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter opportunities with at least this monetary value + * T​h​e​ ​U​R​L​ ​w​h​e​r​e​ ​r​e​s​p​o​n​d​e​n​t​s​ ​w​i​l​l​ ​b​e​ ​r​e​d​i​r​e​c​t​e​d​ ​a​f​t​e​r​ ​c​o​m​p​l​e​t​i​n​g​ ​t​h​e​ ​s​u​r​v​e​y */ - longDesc: () => LocalizedString + longDesc: string } - maximum_monetary_value: { + response_limit: { /** - * Maximum Value + * R​e​s​p​o​n​s​e​ ​L​i​m​i​t */ - displayName: () => LocalizedString + displayName: string /** - * Maximum deal value + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​r​e​s​p​o​n​s​e​s */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter opportunities with no more than this monetary value + * T​h​e​ ​m​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​r​e​s​p​o​n​s​e​s​ ​t​o​ ​a​c​c​e​p​t​ ​b​e​f​o​r​e​ ​c​l​o​s​i​n​g​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r */ - longDesc: () => LocalizedString + longDesc: string } - minimum_win_probability: { + } + } + delete_collector: { + groups: { + /** + * S​u​r​v​e​y​ ​M​a​n​a​g​e​m​e​n​t + */ + '0': string + } + /** + * D​e​l​e​t​e​ ​C​o​l​l​e​c​t​o​r + */ + displayName: string + /** + * D​e​l​e​t​e​ ​a​ ​c​o​l​l​e​c​t​o​r​ ​f​r​o​m​ ​a​ ​s​u​r​v​e​y + */ + shortDesc: string + /** + * P​e​r​m​a​n​e​n​t​l​y​ ​r​e​m​o​v​e​ ​a​ ​c​o​l​l​e​c​t​o​r​ ​f​r​o​m​ ​a​ ​s​u​r​v​e​y​.​ ​T​h​i​s​ ​a​c​t​i​o​n​ ​c​a​n​n​o​t​ ​b​e​ ​u​n​d​o​n​e​. + */ + longDesc: string + options: { + survey_id: { /** - * Minimum Win Probability + * S​u​r​v​e​y */ - displayName: () => LocalizedString + displayName: string /** - * Minimum win chance + * T​h​e​ ​s​u​r​v​e​y​ ​c​o​n​t​a​i​n​i​n​g​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter opportunities with at least this win probability + * S​e​l​e​c​t​ ​t​h​e​ ​s​u​r​v​e​y​ ​t​h​a​t​ ​c​o​n​t​a​i​n​s​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r */ - longDesc: () => LocalizedString + longDesc: string } - maximum_win_probability: { + collector_id: { /** - * Maximum Win Probability + * C​o​l​l​e​c​t​o​r */ - displayName: () => LocalizedString + displayName: string /** - * Maximum win chance + * T​h​e​ ​c​o​l​l​e​c​t​o​r​ ​t​o​ ​d​e​l​e​t​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter opportunities with no more than this win probability + * S​e​l​e​c​t​ ​t​h​e​ ​c​o​l​l​e​c​t​o​r​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​p​e​r​m​a​n​e​n​t​l​y​ ​d​e​l​e​t​e */ - longDesc: () => LocalizedString + longDesc: string } - minimum_interaction_count: { + } + } + get_response_counts: { + groups: { + /** + * D​a​t​a​ ​R​e​t​r​i​e​v​a​l + */ + '0': string + } + /** + * G​e​t​ ​R​e​s​p​o​n​s​e​ ​C​o​u​n​t​s + */ + displayName: string + /** + * G​e​t​ ​t​o​t​a​l​ ​r​e​s​p​o​n​s​e​ ​c​o​u​n​t​ ​f​o​r​ ​a​ ​s​u​r​v​e​y + */ + shortDesc: string + /** + * Q​u​i​c​k​l​y​ ​r​e​t​r​i​e​v​e​ ​t​h​e​ ​t​o​t​a​l​ ​n​u​m​b​e​r​ ​o​f​ ​r​e​s​p​o​n​s​e​s​ ​f​o​r​ ​a​ ​s​u​r​v​e​y​ ​w​i​t​h​o​u​t​ ​f​e​t​c​h​i​n​g​ ​a​l​l​ ​r​e​s​p​o​n​s​e​ ​d​a​t​a + */ + longDesc: string + options: { + survey_id: { /** - * Minimum Interactions + * S​u​r​v​e​y */ - displayName: () => LocalizedString + displayName: string /** - * Minimum interaction count + * T​h​e​ ​s​u​r​v​e​y​ ​t​o​ ​g​e​t​ ​c​o​u​n​t​s​ ​f​o​r */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter opportunities with at least this many interactions + * S​e​l​e​c​t​ ​t​h​e​ ​s​u​r​v​e​y​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​g​e​t​ ​r​e​s​p​o​n​s​e​ ​c​o​u​n​t​s​ ​f​o​r */ - longDesc: () => LocalizedString + longDesc: string } - maximum_interaction_count: { + } + } + update_contact: { + groups: { + /** + * C​o​n​t​a​c​t​ ​M​a​n​a​g​e​m​e​n​t + */ + '0': string + } + /** + * U​p​d​a​t​e​ ​C​o​n​t​a​c​t + */ + displayName: string + /** + * U​p​d​a​t​e​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​c​o​n​t​a​c​t + */ + shortDesc: string + /** + * M​o​d​i​f​y​ ​t​h​e​ ​d​e​t​a​i​l​s​ ​o​f​ ​a​n​ ​e​x​i​s​t​i​n​g​ ​c​o​n​t​a​c​t​ ​i​n​ ​S​u​r​v​e​y​M​o​n​k​e​y + */ + longDesc: string + options: { + contact_id: { /** - * Maximum Interactions + * C​o​n​t​a​c​t​ ​I​D */ - displayName: () => LocalizedString + displayName: string /** - * Maximum interaction count + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​t​o​ ​u​p​d​a​t​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter opportunities with no more than this many interactions + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​u​p​d​a​t​e */ - longDesc: () => LocalizedString + longDesc: string } - minimum_close_date: { + first_name: { /** - * Close Date After + * F​i​r​s​t​ ​N​a​m​e */ - displayName: () => LocalizedString + displayName: string /** - * Earliest close date + * T​h​e​ ​c​o​n​t​a​c​t​'​s​ ​f​i​r​s​t​ ​n​a​m​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter opportunities with close date on or after this date + * T​h​e​ ​n​e​w​ ​f​i​r​s​t​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t */ - longDesc: () => LocalizedString + longDesc: string } - maximum_close_date: { + last_name: { /** - * Close Date Before + * L​a​s​t​ ​N​a​m​e */ - displayName: () => LocalizedString + displayName: string /** - * Latest close date + * T​h​e​ ​c​o​n​t​a​c​t​'​s​ ​l​a​s​t​ ​n​a​m​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter opportunities with close date on or before this date + * T​h​e​ ​n​e​w​ ​l​a​s​t​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t */ - longDesc: () => LocalizedString + longDesc: string } - minimum_created_date: { + email: { /** - * Created After + * E​m​a​i​l */ - displayName: () => LocalizedString + displayName: string /** - * Earliest creation date + * T​h​e​ ​c​o​n​t​a​c​t​'​s​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter opportunities created on or after this date + * T​h​e​ ​n​e​w​ ​e​m​a​i​l​ ​a​d​d​r​e​s​s​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t */ - longDesc: () => LocalizedString + longDesc: string } - maximum_created_date: { + phone_number: { /** - * Created Before + * P​h​o​n​e​ ​N​u​m​b​e​r */ - displayName: () => LocalizedString + displayName: string /** - * Latest creation date + * T​h​e​ ​c​o​n​t​a​c​t​'​s​ ​p​h​o​n​e​ ​n​u​m​b​e​r */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter opportunities created on or before this date + * T​h​e​ ​n​e​w​ ​p​h​o​n​e​ ​n​u​m​b​e​r​ ​f​o​r​ ​t​h​e​ ​c​o​n​t​a​c​t */ - longDesc: () => LocalizedString + longDesc: string } - minimum_modified_date: { + } + } + delete_contact: { + groups: { + /** + * C​o​n​t​a​c​t​ ​M​a​n​a​g​e​m​e​n​t + */ + '0': string + } + /** + * D​e​l​e​t​e​ ​C​o​n​t​a​c​t + */ + displayName: string + /** + * D​e​l​e​t​e​ ​a​ ​c​o​n​t​a​c​t + */ + shortDesc: string + /** + * P​e​r​m​a​n​e​n​t​l​y​ ​r​e​m​o​v​e​ ​a​ ​c​o​n​t​a​c​t​ ​f​r​o​m​ ​S​u​r​v​e​y​M​o​n​k​e​y​.​ ​T​h​i​s​ ​a​c​t​i​o​n​ ​c​a​n​n​o​t​ ​b​e​ ​u​n​d​o​n​e​. + */ + longDesc: string + options: { + contact_id: { /** - * Modified After + * C​o​n​t​a​c​t​ ​I​D */ - displayName: () => LocalizedString + displayName: string /** - * Earliest modification date + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​t​o​ ​d​e​l​e​t​e */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter opportunities modified on or after this date + * T​h​e​ ​u​n​i​q​u​e​ ​i​d​e​n​t​i​f​i​e​r​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​d​e​l​e​t​e */ - longDesc: () => LocalizedString + longDesc: string } - maximum_modified_date: { + } + } + list_contact_lists: { + groups: { + /** + * D​a​t​a​ ​R​e​t​r​i​e​v​a​l + */ + '0': string + } + /** + * L​i​s​t​ ​C​o​n​t​a​c​t​ ​L​i​s​t​s + */ + displayName: string + /** + * R​e​t​r​i​e​v​e​ ​a​l​l​ ​c​o​n​t​a​c​t​ ​l​i​s​t​s + */ + shortDesc: string + /** + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​c​o​n​t​a​c​t​ ​l​i​s​t​s​ ​i​n​ ​y​o​u​r​ ​S​u​r​v​e​y​M​o​n​k​e​y​ ​a​c​c​o​u​n​t + */ + longDesc: string + options: { + limit: { /** - * Modified Before + * L​i​m​i​t */ - displayName: () => LocalizedString + displayName: string /** - * Latest modification date + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​l​i​s​t​s​ ​t​o​ ​r​e​t​u​r​n */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter opportunities modified on or before this date + * T​h​e​ ​m​a​x​i​m​u​m​ ​t​o​t​a​l​ ​n​u​m​b​e​r​ ​o​f​ ​c​o​n​t​a​c​t​ ​l​i​s​t​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​(​d​e​f​a​u​l​t​:​ ​5​0​0​) */ - longDesc: () => LocalizedString + longDesc: string } - minimum_stage_change_date: { + } + } + create_contact_list: { + groups: { + /** + * C​o​n​t​a​c​t​ ​M​a​n​a​g​e​m​e​n​t + */ + '0': string + } + /** + * C​r​e​a​t​e​ ​C​o​n​t​a​c​t​ ​L​i​s​t + */ + displayName: string + /** + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​l​i​s​t + */ + shortDesc: string + /** + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​l​i​s​t​ ​f​o​r​ ​o​r​g​a​n​i​z​i​n​g​ ​c​o​n​t​a​c​t​s​ ​i​n​ ​S​u​r​v​e​y​M​o​n​k​e​y + */ + longDesc: string + options: { + name: { /** - * Stage Changed After + * N​a​m​e */ - displayName: () => LocalizedString + displayName: string /** - * Earliest stage change + * T​h​e​ ​n​a​m​e​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​l​i​s​t */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter opportunities with stage changed on or after this date + * A​ ​d​e​s​c​r​i​p​t​i​v​e​ ​n​a​m​e​ ​f​o​r​ ​t​h​e​ ​n​e​w​ ​c​o​n​t​a​c​t​ ​l​i​s​t */ - longDesc: () => LocalizedString + longDesc: string } - maximum_stage_change_date: { + } + } + add_contacts_to_list: { + groups: { + /** + * C​o​n​t​a​c​t​ ​M​a​n​a​g​e​m​e​n​t + */ + '0': string + } + /** + * A​d​d​ ​C​o​n​t​a​c​t​s​ ​t​o​ ​L​i​s​t + */ + displayName: string + /** + * A​d​d​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​a​ ​c​o​n​t​a​c​t​ ​l​i​s​t + */ + shortDesc: string + /** + * A​d​d​ ​o​n​e​ ​o​r​ ​m​o​r​e​ ​e​x​i​s​t​i​n​g​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​a​ ​c​o​n​t​a​c​t​ ​l​i​s​t​ ​i​n​ ​b​u​l​k + */ + longDesc: string + options: { + contact_list_id: { /** - * Stage Changed Before + * C​o​n​t​a​c​t​ ​L​i​s​t​ ​I​D */ - displayName: () => LocalizedString + displayName: string /** - * Latest stage change + * T​h​e​ ​c​o​n​t​a​c​t​ ​l​i​s​t​ ​t​o​ ​a​d​d​ ​c​o​n​t​a​c​t​s​ ​t​o */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter opportunities with stage changed on or before this date + * T​h​e​ ​I​D​ ​o​f​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​l​i​s​t​ ​w​h​e​r​e​ ​c​o​n​t​a​c​t​s​ ​w​i​l​l​ ​b​e​ ​a​d​d​e​d */ - longDesc: () => LocalizedString + longDesc: string + } + contact_ids: { + /** + * C​o​n​t​a​c​t​ ​I​D​s + */ + displayName: string + /** + * T​h​e​ ​c​o​n​t​a​c​t​s​ ​t​o​ ​a​d​d + */ + shortDesc: string + /** + * A​ ​l​i​s​t​ ​o​f​ ​c​o​n​t​a​c​t​ ​I​D​s​ ​t​o​ ​a​d​d​ ​t​o​ ​t​h​e​ ​c​o​n​t​a​c​t​ ​l​i​s​t + */ + longDesc: string } } } - search_people: { + get_survey_rollup: { groups: { /** - * People + * D​a​t​a​ ​R​e​t​r​i​e​v​a​l */ - '0': () => LocalizedString + '0': string } /** - * Search People + * G​e​t​ ​S​u​r​v​e​y​ ​R​o​l​l​u​p */ - displayName: () => LocalizedString + displayName: string /** - * Search for person contacts in CopperCRM + * G​e​t​ ​a​g​g​r​e​g​a​t​e​d​ ​s​u​r​v​e​y​ ​s​t​a​t​i​s​t​i​c​s */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Search and filter people in CopperCRM using various criteria including name, email, phone, company, and custom fields. Returns a list of matching person contacts. + * R​e​t​r​i​e​v​e​ ​a​g​g​r​e​g​a​t​e​d​ ​r​e​s​p​o​n​s​e​ ​s​t​a​t​i​s​t​i​c​s​ ​f​o​r​ ​a​ ​s​u​r​v​e​y​ ​i​n​c​l​u​d​i​n​g​ ​q​u​e​s​t​i​o​n​-​l​e​v​e​l​ ​s​u​m​m​a​r​i​e​s */ - longDesc: () => LocalizedString + longDesc: string options: { - ids: { + survey_id: { /** - * Person IDs + * S​u​r​v​e​y */ - displayName: () => LocalizedString + displayName: string /** - * Specific people to retrieve + * T​h​e​ ​s​u​r​v​e​y​ ​t​o​ ​g​e​t​ ​s​t​a​t​i​s​t​i​c​s​ ​f​o​r */ - shortDesc: () => LocalizedString + shortDesc: string /** - * List of specific person IDs to retrieve + * S​e​l​e​c​t​ ​t​h​e​ ​s​u​r​v​e​y​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​g​e​t​ ​a​g​g​r​e​g​a​t​e​d​ ​s​t​a​t​i​s​t​i​c​s​ ​f​o​r */ - longDesc: () => LocalizedString + longDesc: string } - name: { + } + } + get_user_details: { + groups: { + /** + * D​a​t​a​ ​R​e​t​r​i​e​v​a​l + */ + '0': string + } + /** + * G​e​t​ ​U​s​e​r​ ​D​e​t​a​i​l​s + */ + displayName: string + /** + * G​e​t​ ​a​u​t​h​e​n​t​i​c​a​t​e​d​ ​u​s​e​r​ ​i​n​f​o​r​m​a​t​i​o​n + */ + shortDesc: string + /** + * R​e​t​r​i​e​v​e​ ​d​e​t​a​i​l​s​ ​a​b​o​u​t​ ​t​h​e​ ​a​u​t​h​e​n​t​i​c​a​t​e​d​ ​S​u​r​v​e​y​M​o​n​k​e​y​ ​u​s​e​r​ ​i​n​c​l​u​d​i​n​g​ ​a​c​c​o​u​n​t​ ​t​y​p​e​ ​a​n​d​ ​p​e​r​m​i​s​s​i​o​n​s + */ + longDesc: string + options: { + } + } + list_survey_folders: { + groups: { + /** + * D​a​t​a​ ​R​e​t​r​i​e​v​a​l + */ + '0': string + } + /** + * L​i​s​t​ ​S​u​r​v​e​y​ ​F​o​l​d​e​r​s + */ + displayName: string + /** + * R​e​t​r​i​e​v​e​ ​a​l​l​ ​s​u​r​v​e​y​ ​f​o​l​d​e​r​s + */ + shortDesc: string + /** + * R​e​t​r​i​e​v​e​ ​a​ ​l​i​s​t​ ​o​f​ ​a​l​l​ ​s​u​r​v​e​y​ ​f​o​l​d​e​r​s​ ​i​n​ ​y​o​u​r​ ​S​u​r​v​e​y​M​o​n​k​e​y​ ​a​c​c​o​u​n​t + */ + longDesc: string + options: { + limit: { /** - * Name + * L​i​m​i​t */ - displayName: () => LocalizedString + displayName: string /** - * Person name to search + * M​a​x​i​m​u​m​ ​n​u​m​b​e​r​ ​o​f​ ​f​o​l​d​e​r​s​ ​t​o​ ​r​e​t​u​r​n */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Search for people with names matching this value + * T​h​e​ ​m​a​x​i​m​u​m​ ​t​o​t​a​l​ ​n​u​m​b​e​r​ ​o​f​ ​s​u​r​v​e​y​ ​f​o​l​d​e​r​s​ ​t​o​ ​r​e​t​r​i​e​v​e​ ​(​d​e​f​a​u​l​t​:​ ​5​0​0​) */ - longDesc: () => LocalizedString + longDesc: string } + } + } + create_survey_folder: { + groups: { + /** + * S​u​r​v​e​y​ ​M​a​n​a​g​e​m​e​n​t + */ + '0': string + } + /** + * C​r​e​a​t​e​ ​S​u​r​v​e​y​ ​F​o​l​d​e​r + */ + displayName: string + /** + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​s​u​r​v​e​y​ ​f​o​l​d​e​r + */ + shortDesc: string + /** + * C​r​e​a​t​e​ ​a​ ​n​e​w​ ​f​o​l​d​e​r​ ​t​o​ ​o​r​g​a​n​i​z​e​ ​y​o​u​r​ ​s​u​r​v​e​y​s​ ​i​n​ ​S​u​r​v​e​y​M​o​n​k​e​y + */ + longDesc: string + options: { title: { /** - * Title + * T​i​t​l​e */ - displayName: () => LocalizedString + displayName: string /** - * Job title to search + * T​h​e​ ​t​i​t​l​e​ ​o​f​ ​t​h​e​ ​f​o​l​d​e​r */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Search for people with this job title + * A​ ​d​e​s​c​r​i​p​t​i​v​e​ ​t​i​t​l​e​ ​f​o​r​ ​t​h​e​ ​n​e​w​ ​s​u​r​v​e​y​ ​f​o​l​d​e​r */ - longDesc: () => LocalizedString + longDesc: string } - email: { + } + } + } + } + _testing: { + triggers: { + _testing: { + options: { + option1: { /** - * Email + * O​p​t​i​o​n​ ​1 */ - displayName: () => LocalizedString + displayName: string /** - * Email to search + * O​p​t​i​o​n​ ​1​ ​S​h​o​r​t​ ​D​e​s​c​r​i​p​t​i​o​n */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Search for people with this email address + * O​p​t​i​o​n​ ​1​ ​L​o​n​g​ ​D​e​s​c​r​i​p​t​i​o​n */ - longDesc: () => LocalizedString + longDesc: string } - phone: { + option2: { /** - * Phone + * S​e​c​o​n​d​ ​O​p​t​i​o​n */ - displayName: () => LocalizedString + displayName: string /** - * Phone number to search + * S​e​c​o​n​d​ ​O​p​t​i​o​n​ ​S​h​o​r​t​ ​D​e​s​c​r​i​p​t​i​o​n */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Search for people with this phone number + * S​e​c​o​n​d​ ​O​p​t​i​o​n​ ​L​o​n​g​ ​D​e​s​c​r​i​p​t​i​o​n */ - longDesc: () => LocalizedString + longDesc: string } - city: { + } + event_info: { + /** + * E​v​e​n​t​ ​d​a​t​a + */ + desc: string + type: { + fields: { + testTriggerInfo: { + /** + * T​e​s​t​ ​T​r​i​g​g​e​r​ ​I​n​f​o + */ + displayName: string + /** + * T​e​s​t​ ​T​r​i​g​g​e​r​ ​I​n​f​o​ ​S​h​o​r​t​ ​D​e​s​c​r​i​p​t​i​o​n + */ + shortDesc: string + /** + * T​e​s​t​ ​T​r​i​g​g​e​r​ ​I​n​f​o​ ​L​o​n​g​ ​D​e​s​c​r​i​p​t​i​o​n + */ + longDesc: string + type: { + fields: { + testTriggerInfo1: { + /** + * T​e​s​t​ ​T​r​i​g​g​e​r​ ​I​n​f​o​ ​1 + */ + displayName: string + /** + * T​e​s​t​ ​T​r​i​g​g​e​r​ ​I​n​f​o​ ​1​ ​S​h​o​r​t​ ​D​e​s​c​r​i​p​t​i​o​n + */ + shortDesc: string + /** + * T​e​s​t​ ​T​r​i​g​g​e​r​ ​I​n​f​o​ ​1​ ​L​o​n​g​ ​D​e​s​c​r​i​p​t​i​o​n + */ + longDesc: string + } + } + } + } + } + } + } + } + } + actions: { + test: { + options: { + option1: { /** - * City + * O​p​t​i​o​n​ ​1 */ - displayName: () => LocalizedString + displayName: string /** - * City location + * O​p​t​i​o​n​ ​1​ ​S​h​o​r​t​ ​D​e​s​c​r​i​p​t​i​o​n */ - shortDesc: () => LocalizedString + shortDesc: string /** - * Filter people by city + * O​p​t​i​o​n​ ​1​ ​L​o​n​g​ ​D​e​s​c​r​i​p​t​i​o​n */ - longDesc: () => LocalizedString + longDesc: string + type: { + fields: { + subOption1: { + /** + * S​u​b​ ​O​p​t​i​o​n​ ​1​ ​o​f​ ​o​p​t​i​o​n​ ​1 + */ + displayName: string + /** + * S​u​b​ ​O​p​t​i​o​n​ ​1​ ​S​h​o​r​t​ ​D​e​s​c​r​i​p​t​i​o​n + */ + shortDesc: string + /** + * S​u​b​ ​O​p​t​i​o​n​ ​1​ ​L​o​n​g​ ​D​e​s​c​r​i​p​t​i​o​n + */ + longDesc: string + } + subOption2: { + /** + * S​u​b​ ​O​p​t​i​o​n​ ​2​ ​o​f​ ​o​p​t​i​o​n​ ​1 + */ + displayName: string + /** + * S​u​b​ ​O​p​t​i​o​n​ ​2​ ​S​h​o​r​t​ ​D​e​s​c​r​i​p​t​i​o​n + */ + shortDesc: string + /** + * S​u​b​ ​O​p​t​i​o​n​ ​2​ ​L​o​n​g​ ​D​e​s​c​r​i​p​t​i​o​n + */ + longDesc: string + type: { + fields: { + subSubOption1: { + /** + * S​u​b​ ​S​u​b​ ​O​p​t​i​o​n​ ​1 + */ + displayName: string + /** + * S​u​b​ ​S​u​b​ ​O​p​t​i​o​n​ ​1​ ​S​h​o​r​t​ ​D​e​s​c​r​i​p​t​i​o​n + */ + shortDesc: string + /** + * S​u​b​ ​S​u​b​ ​O​p​t​i​o​n​ ​1​ ​L​o​n​g​ ​D​e​s​c​r​i​p​t​i​o​n + */ + longDesc: string + } + } + } + } + subOption3: { + /** + * S​u​b​ ​O​p​t​i​o​n​ ​3​ ​o​f​ ​o​p​t​i​o​n​ ​1 + */ + displayName: string + /** + * S​u​b​ ​O​p​t​i​o​n​ ​3​ ​S​h​o​r​t​ ​D​e​s​c​r​i​p​t​i​o​n + */ + shortDesc: string + /** + * S​u​b​ ​O​p​t​i​o​n​ ​3​ ​L​o​n​g​ ​D​e​s​c​r​i​p​t​i​o​n + */ + longDesc: string + type: { + element_type: { + type: { + fields: { + subSubOption1: { + /** + * S​u​b​ ​S​u​b​ ​O​p​t​i​o​n​ ​1 + */ + displayName: string + /** + * S​u​b​ ​S​u​b​ ​O​p​t​i​o​n​ ​1​ ​S​h​o​r​t​ ​D​e​s​c​r​i​p​t​i​o​n + */ + shortDesc: string + /** + * S​u​b​ ​S​u​b​ ​O​p​t​i​o​n​ ​1​ ​L​o​n​g​ ​D​e​s​c​r​i​p​t​i​o​n + */ + longDesc: string + } + } + } + } + } + } + } + } } - state: { + option2: { /** - * State + * S​e​c​o​n​d​ ​O​p​t​i​o​n + */ + displayName: string + } + } + } + } + } + } +} + +export type TranslationFunctions = { + common: { + } + apps: { + CopperCrm: { + /** + * CopperCRM + */ + displayName: () => LocalizedString + groups: { + /** + * CRM & Sales Management + */ + '0': () => LocalizedString + } + /** + * Connect to CopperCRM to manage your sales pipeline, contacts, and customer relationships. + */ + shortDesc: () => LocalizedString + /** + * The CopperCRM integration provides comprehensive access to your CRM data with actions and triggers for managing leads, people, companies, opportunities, and tasks. Built specifically for Google Workspace users, CopperCRM helps you track customer interactions, manage your sales pipeline, and automate your workflow. This integration enables you to create, retrieve, update, delete, and search across all major CopperCRM entities, while triggers keep you informed of new records as they are created in your CRM. + */ + longDesc: () => LocalizedString + actions: { + create_company: { + groups: { + /** + * Companies + */ + '0': () => LocalizedString + } + /** + * Create Company + */ + displayName: () => LocalizedString + /** + * Create a new company in CopperCRM + */ + shortDesc: () => LocalizedString + /** + * Create a new company record in CopperCRM with details like name, address, contact information, and custom fields. Companies represent organizations in your CRM. + */ + longDesc: () => LocalizedString + options: { + name: { + /** + * Company Name */ displayName: () => LocalizedString /** - * State or province + * The name of the company */ shortDesc: () => LocalizedString /** - * Filter people by state or province + * The official name of the company you want to create in CopperCRM */ longDesc: () => LocalizedString } - postal_code: { + address: { /** - * Postal Code + * Address */ displayName: () => LocalizedString /** - * ZIP or postal code + * Company address details */ shortDesc: () => LocalizedString /** - * Filter people by postal code - */ - longDesc: () => LocalizedString - } - country: { - /** - * Country - */ - displayName: () => LocalizedString - /** - * Country location - */ - shortDesc: () => LocalizedString - /** - * Filter people by country - */ - longDesc: () => LocalizedString - } - assignee_ids: { - /** - * Assignees - */ - displayName: () => LocalizedString - /** - * Assigned users - */ - shortDesc: () => LocalizedString - /** - * Filter people by assigned users - */ - longDesc: () => LocalizedString - } - contact_type_ids: { - /** - * Contact Types - */ - displayName: () => LocalizedString - /** - * Contact type filter - */ - shortDesc: () => LocalizedString - /** - * Filter people by contact type - */ - longDesc: () => LocalizedString - } - company_ids: { - /** - * Companies - */ - displayName: () => LocalizedString - /** - * Associated companies - */ - shortDesc: () => LocalizedString - /** - * Filter people by associated companies - */ - longDesc: () => LocalizedString - } - tags: { - /** - * Tags - */ - displayName: () => LocalizedString - /** - * Filter by tags - */ - shortDesc: () => LocalizedString - /** - * Filter people that have any of these tags - */ - longDesc: () => LocalizedString - } - socials: { - /** - * Social Media - */ - displayName: () => LocalizedString - /** - * Social media profiles - */ - shortDesc: () => LocalizedString - /** - * Filter people by social media profiles - */ - longDesc: () => LocalizedString - } - minimum_interaction_count: { - /** - * Minimum Interactions - */ - displayName: () => LocalizedString - /** - * Minimum interaction count - */ - shortDesc: () => LocalizedString - /** - * Filter people with at least this many interactions - */ - longDesc: () => LocalizedString - } - maximum_interaction_count: { - /** - * Maximum Interactions - */ - displayName: () => LocalizedString - /** - * Maximum interaction count - */ - shortDesc: () => LocalizedString - /** - * Filter people with no more than this many interactions - */ - longDesc: () => LocalizedString - } - minimum_created_date: { - /** - * Created After - */ - displayName: () => LocalizedString - /** - * Earliest creation date - */ - shortDesc: () => LocalizedString - /** - * Filter people created on or after this date - */ - longDesc: () => LocalizedString - } - maximum_created_date: { - /** - * Created Before - */ - displayName: () => LocalizedString - /** - * Latest creation date - */ - shortDesc: () => LocalizedString - /** - * Filter people created on or before this date - */ - longDesc: () => LocalizedString - } - minimum_modified_date: { - /** - * Modified After - */ - displayName: () => LocalizedString - /** - * Earliest modification date - */ - shortDesc: () => LocalizedString - /** - * Filter people modified on or after this date - */ - longDesc: () => LocalizedString - } - maximum_modified_date: { - /** - * Modified Before - */ - displayName: () => LocalizedString - /** - * Latest modification date - */ - shortDesc: () => LocalizedString - /** - * Filter people modified on or before this date - */ - longDesc: () => LocalizedString - } - sort_by: { - /** - * Sort By - */ - displayName: () => LocalizedString - /** - * Field to sort by - */ - shortDesc: () => LocalizedString - /** - * Field to sort results by - */ - longDesc: () => LocalizedString - } - sort_direction: { - /** - * Sort Direction - */ - displayName: () => LocalizedString - /** - * Sort order - */ - shortDesc: () => LocalizedString - /** - * The direction to sort results (ascending or descending) - */ - longDesc: () => LocalizedString - } - page_number: { - /** - * Page Number - */ - displayName: () => LocalizedString - /** - * Which page of results - */ - shortDesc: () => LocalizedString - /** - * The page number of results to retrieve for pagination - */ - longDesc: () => LocalizedString - } - page_size: { - /** - * Page Size - */ - displayName: () => LocalizedString - /** - * Results per page - */ - shortDesc: () => LocalizedString - /** - * The number of results to return per page - */ - longDesc: () => LocalizedString - } - } - } - search_tasks: { - groups: { - /** - * Tasks - */ - '0': () => LocalizedString - } - /** - * Search Tasks - */ - displayName: () => LocalizedString - /** - * Search for tasks in CopperCRM - */ - shortDesc: () => LocalizedString - /** - * Search and filter tasks in CopperCRM using various criteria including assignee, status, priority, due date, and custom fields. Returns a list of matching tasks. - */ - longDesc: () => LocalizedString - options: { - ids: { - /** - * Task IDs - */ - displayName: () => LocalizedString - /** - * Specific tasks to retrieve - */ - shortDesc: () => LocalizedString - /** - * List of specific task IDs to retrieve - */ - longDesc: () => LocalizedString - } - page_number: { - /** - * Page Number - */ - displayName: () => LocalizedString - /** - * Which page of results - */ - shortDesc: () => LocalizedString - /** - * The page number of results to retrieve for pagination - */ - longDesc: () => LocalizedString - } - page_size: { - /** - * Page Size - */ - displayName: () => LocalizedString - /** - * Results per page - */ - shortDesc: () => LocalizedString - /** - * The number of results to return per page - */ - longDesc: () => LocalizedString - } - sort_by: { - /** - * Sort By - */ - displayName: () => LocalizedString - /** - * Field to sort by - */ - shortDesc: () => LocalizedString - /** - * The field to use for sorting the results - */ - longDesc: () => LocalizedString - } - sort_direction: { - /** - * Sort Direction - */ - displayName: () => LocalizedString - /** - * Sort order - */ - shortDesc: () => LocalizedString - /** - * The direction to sort results (ascending or descending) - */ - longDesc: () => LocalizedString - } - assignee_ids: { - /** - * Assignees - */ - displayName: () => LocalizedString - /** - * Assigned users - */ - shortDesc: () => LocalizedString - /** - * Filter tasks by assigned users - */ - longDesc: () => LocalizedString - } - statuses: { - /** - * Statuses - */ - displayName: () => LocalizedString - /** - * Task statuses - */ - shortDesc: () => LocalizedString - /** - * Filter tasks by status (Open or Completed) - */ - longDesc: () => LocalizedString - } - priorities: { - /** - * Priorities - */ - displayName: () => LocalizedString - /** - * Priority levels - */ - shortDesc: () => LocalizedString - /** - * Filter tasks by priority level - */ - longDesc: () => LocalizedString - } - tags: { - /** - * Tags - */ - displayName: () => LocalizedString - /** - * Filter by tags - */ - shortDesc: () => LocalizedString - /** - * Filter tasks that have any of these tags - */ - longDesc: () => LocalizedString - } - followed: { - /** - * Followed - */ - displayName: () => LocalizedString - /** - * Following status - */ - shortDesc: () => LocalizedString - /** - * Filter tasks by whether they are followed or not - */ - longDesc: () => LocalizedString - } - minimum_due_date: { - /** - * Due Date After - */ - displayName: () => LocalizedString - /** - * Earliest due date - */ - shortDesc: () => LocalizedString - /** - * Filter tasks with due date on or after this date - */ - longDesc: () => LocalizedString - } - maximum_due_date: { - /** - * Due Date Before - */ - displayName: () => LocalizedString - /** - * Latest due date - */ - shortDesc: () => LocalizedString - /** - * Filter tasks with due date on or before this date - */ - longDesc: () => LocalizedString - } - minimum_reminder_date: { - /** - * Reminder After - */ - displayName: () => LocalizedString - /** - * Earliest reminder date - */ - shortDesc: () => LocalizedString - /** - * Filter tasks with reminder date on or after this date - */ - longDesc: () => LocalizedString - } - maximum_reminder_date: { - /** - * Reminder Before - */ - displayName: () => LocalizedString - /** - * Latest reminder date - */ - shortDesc: () => LocalizedString - /** - * Filter tasks with reminder date on or before this date - */ - longDesc: () => LocalizedString - } - minimum_completed_date: { - /** - * Completed After - */ - displayName: () => LocalizedString - /** - * Earliest completion date - */ - shortDesc: () => LocalizedString - /** - * Filter tasks completed on or after this date - */ - longDesc: () => LocalizedString - } - maximum_completed_date: { - /** - * Completed Before - */ - displayName: () => LocalizedString - /** - * Latest completion date - */ - shortDesc: () => LocalizedString - /** - * Filter tasks completed on or before this date - */ - longDesc: () => LocalizedString - } - minimum_created_date: { - /** - * Created After - */ - displayName: () => LocalizedString - /** - * Earliest creation date - */ - shortDesc: () => LocalizedString - /** - * Filter tasks created on or after this date - */ - longDesc: () => LocalizedString - } - maximum_created_date: { - /** - * Created Before - */ - displayName: () => LocalizedString - /** - * Latest creation date - */ - shortDesc: () => LocalizedString - /** - * Filter tasks created on or before this date - */ - longDesc: () => LocalizedString - } - minimum_modified_date: { - /** - * Modified After - */ - displayName: () => LocalizedString - /** - * Earliest modification date - */ - shortDesc: () => LocalizedString - /** - * Filter tasks modified on or after this date - */ - longDesc: () => LocalizedString - } - maximum_modified_date: { - /** - * Modified Before - */ - displayName: () => LocalizedString - /** - * Latest modification date - */ - shortDesc: () => LocalizedString - /** - * Filter tasks modified on or before this date - */ - longDesc: () => LocalizedString - } - } - } - update_company: { - groups: { - /** - * Companies - */ - '0': () => LocalizedString - } - /** - * Update Company - */ - displayName: () => LocalizedString - /** - * Update an existing company in CopperCRM - */ - shortDesc: () => LocalizedString - /** - * Update the details of an existing company record in CopperCRM including name, address, contact information, and custom fields. - */ - longDesc: () => LocalizedString - options: { - company_id: { - /** - * Company - */ - displayName: () => LocalizedString - /** - * Company to update - */ - shortDesc: () => LocalizedString - /** - * Select the company you want to update - */ - longDesc: () => LocalizedString - } - name: { - /** - * Company Name - */ - displayName: () => LocalizedString - /** - * Updated company name - */ - shortDesc: () => LocalizedString - /** - * The new name for the company - */ - longDesc: () => LocalizedString - } - address: { - /** - * Address - */ - displayName: () => LocalizedString - /** - * Updated address - */ - shortDesc: () => LocalizedString - /** - * The updated physical address of the company + * The physical address of the company including street, city, state, postal code, and country */ longDesc: () => LocalizedString type: { @@ -133823,11 +132444,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated assignee + * User assigned to this company */ shortDesc: () => LocalizedString /** - * The new CopperCRM user to assign to this company + * The CopperCRM user who will be assigned to manage this company */ longDesc: () => LocalizedString } @@ -133837,11 +132458,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated contact type + * Type of contact relationship */ shortDesc: () => LocalizedString /** - * The updated type of contact relationship + * The type of contact relationship this company has with your organization */ longDesc: () => LocalizedString } @@ -133851,11 +132472,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated notes + * Additional notes or description */ shortDesc: () => LocalizedString /** - * Updated notes, description, or important details + * Additional notes, description, or important details about the company */ longDesc: () => LocalizedString } @@ -133865,11 +132486,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated email domain + * Company email domain */ shortDesc: () => LocalizedString /** - * The updated primary email domain + * The primary email domain used by the company (e.g., example.com) */ longDesc: () => LocalizedString } @@ -133879,11 +132500,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated phone numbers + * Company phone numbers */ shortDesc: () => LocalizedString /** - * Updated list of phone numbers + * List of phone numbers associated with the company */ longDesc: () => LocalizedString type: { @@ -133913,7 +132534,7 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * The category or type of this phone number + * The category or type of this phone number (work, mobile, home, or other) */ longDesc: () => LocalizedString } @@ -133927,11 +132548,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated primary contact + * Main contact person */ shortDesc: () => LocalizedString /** - * The new primary contact person for this company + * The primary contact person associated with this company */ longDesc: () => LocalizedString } @@ -133941,11 +132562,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated social profiles + * Social media profiles */ shortDesc: () => LocalizedString /** - * Updated list of social media profiles + * List of social media profiles for the company */ longDesc: () => LocalizedString type: { @@ -133975,7 +132596,7 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * The social media platform + * The social media platform (LinkedIn, Twitter, Facebook, YouTube, Quora, Instagram, Pinterest, or Other) */ longDesc: () => LocalizedString } @@ -133989,11 +132610,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated tags + * Company tags */ shortDesc: () => LocalizedString /** - * Updated tags to categorize and organize the company + * Tags to categorize and organize the company. You can create new tags or select from existing ones. */ longDesc: () => LocalizedString } @@ -134003,11 +132624,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated websites + * Company websites */ shortDesc: () => LocalizedString /** - * Updated list of websites + * List of websites associated with the company */ longDesc: () => LocalizedString type: { @@ -134037,7 +132658,7 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * The category or purpose of this website + * The category or purpose of this website (work, personal, or other) */ longDesc: () => LocalizedString } @@ -134051,17 +132672,17 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated custom fields + * Custom field values */ shortDesc: () => LocalizedString /** - * Updated custom field values + * Custom field values specific to your CopperCRM company configuration */ longDesc: () => LocalizedString } } } - update_lead: { + create_lead: { groups: { /** * Leads @@ -134069,43 +132690,29 @@ export type TranslationFunctions = { '0': () => LocalizedString } /** - * Update Lead + * Create Lead */ displayName: () => LocalizedString /** - * Update an existing lead in CopperCRM + * Create a new lead in CopperCRM */ shortDesc: () => LocalizedString /** - * Update the details of an existing lead record in CopperCRM including contact information, status, and custom fields. + * Create a new lead record in CopperCRM with contact information and details. Leads represent potential customers who have shown interest in your products or services. */ longDesc: () => LocalizedString options: { - lead_id: { - /** - * Lead - */ - displayName: () => LocalizedString - /** - * Lead to update - */ - shortDesc: () => LocalizedString - /** - * Select the lead you want to update - */ - longDesc: () => LocalizedString - } first_name: { /** * First Name */ displayName: () => LocalizedString /** - * Updated first name + * Lead's first name */ shortDesc: () => LocalizedString /** - * The updated first name of the lead + * The first name of the lead */ longDesc: () => LocalizedString } @@ -134115,11 +132722,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated last name + * Lead's last name */ shortDesc: () => LocalizedString /** - * The updated last name of the lead + * The last name of the lead */ longDesc: () => LocalizedString } @@ -134129,11 +132736,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated middle name + * Lead's middle name */ shortDesc: () => LocalizedString /** - * The updated middle name or initial + * The middle name or initial of the lead */ longDesc: () => LocalizedString } @@ -134143,11 +132750,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated suffix + * Name suffix */ shortDesc: () => LocalizedString /** - * Updated name suffix + * Name suffix such as Jr., Sr., III, etc. */ longDesc: () => LocalizedString } @@ -134157,11 +132764,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated assignee + * User assigned to this lead */ shortDesc: () => LocalizedString /** - * The new CopperCRM user to assign to this lead + * The CopperCRM user who will be assigned to manage this lead */ longDesc: () => LocalizedString } @@ -134171,11 +132778,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated company name + * Lead's company name */ shortDesc: () => LocalizedString /** - * The updated company name where the lead works + * The name of the company where the lead works */ longDesc: () => LocalizedString } @@ -134185,11 +132792,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated tags + * Lead tags */ shortDesc: () => LocalizedString /** - * Updated tags to categorize and organize the lead + * Tags to categorize and organize the lead. You can create new tags or select from existing ones. */ longDesc: () => LocalizedString } @@ -134199,11 +132806,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated job title + * Job title */ shortDesc: () => LocalizedString /** - * The updated job title or position + * The job title or position of the lead */ longDesc: () => LocalizedString } @@ -134213,11 +132820,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated notes + * Additional notes */ shortDesc: () => LocalizedString /** - * Updated notes, description, or important details + * Additional notes, description, or important details about the lead */ longDesc: () => LocalizedString } @@ -134227,11 +132834,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated websites + * Associated websites */ shortDesc: () => LocalizedString /** - * Updated list of associated websites + * List of websites associated with the lead */ longDesc: () => LocalizedString type: { @@ -134261,7 +132868,7 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * The category or purpose of this website + * The category or purpose of this website (work, personal, or other) */ longDesc: () => LocalizedString } @@ -134275,11 +132882,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated social profiles + * Social media profiles */ shortDesc: () => LocalizedString /** - * Updated list of social media profiles + * List of social media profiles for the lead */ longDesc: () => LocalizedString type: { @@ -134309,7 +132916,7 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * The social media platform + * The social media platform (LinkedIn, Twitter, Facebook, YouTube, Quora, Instagram, Pinterest, or Other) */ longDesc: () => LocalizedString } @@ -134323,11 +132930,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated email + * Email address */ shortDesc: () => LocalizedString /** - * The updated email address + * The email address of the lead */ longDesc: () => LocalizedString type: { @@ -134356,7 +132963,7 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * The category or type of this email + * The category or type of this email (work, personal, or other) */ longDesc: () => LocalizedString } @@ -134369,11 +132976,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated phone numbers + * Contact phone numbers */ shortDesc: () => LocalizedString /** - * Updated list of phone numbers + * List of phone numbers for the lead */ longDesc: () => LocalizedString type: { @@ -134417,11 +133024,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated address + * Contact address */ shortDesc: () => LocalizedString /** - * The updated physical address + * The physical address of the lead including street, city, state, postal code, and country */ longDesc: () => LocalizedString type: { @@ -134450,7 +133057,7 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * The city + * The city where the lead is located */ longDesc: () => LocalizedString } @@ -134505,11 +133112,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated source + * How the lead was acquired */ shortDesc: () => LocalizedString /** - * The updated source or channel + * The source or channel through which this lead was acquired */ longDesc: () => LocalizedString } @@ -134519,17 +133126,17 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated custom fields + * Custom field values */ shortDesc: () => LocalizedString /** - * Updated custom field values + * Custom field values specific to your CopperCRM lead configuration */ longDesc: () => LocalizedString } } } - update_opportunity: { + create_opportunity: { groups: { /** * Opportunities @@ -134537,43 +133144,29 @@ export type TranslationFunctions = { '0': () => LocalizedString } /** - * Update Opportunity + * Create Opportunity */ displayName: () => LocalizedString /** - * Update an existing opportunity in CopperCRM + * Create a new opportunity in CopperCRM */ shortDesc: () => LocalizedString /** - * Update the details of an existing sales opportunity in CopperCRM including value, stage, status, and custom fields. + * Create a new sales opportunity in CopperCRM with details like value, stage, and associated contacts. Opportunities represent potential deals in your sales pipeline. */ longDesc: () => LocalizedString options: { - opportunity_id: { - /** - * Opportunity - */ - displayName: () => LocalizedString - /** - * Opportunity to update - */ - shortDesc: () => LocalizedString - /** - * Select the opportunity you want to update - */ - longDesc: () => LocalizedString - } name: { /** * Opportunity Name */ displayName: () => LocalizedString /** - * Updated name + * Name of the opportunity */ shortDesc: () => LocalizedString /** - * The updated name for the opportunity + * A descriptive name for the sales opportunity */ longDesc: () => LocalizedString } @@ -134583,11 +133176,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated primary contact + * Main contact person */ shortDesc: () => LocalizedString /** - * The updated primary contact person + * The primary contact person associated with this opportunity */ longDesc: () => LocalizedString } @@ -134597,11 +133190,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated assignee + * User assigned to this opportunity */ shortDesc: () => LocalizedString /** - * The new CopperCRM user to assign to this opportunity + * The CopperCRM user who will be assigned to manage this opportunity */ longDesc: () => LocalizedString } @@ -134611,11 +133204,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated close date + * Expected close date */ shortDesc: () => LocalizedString /** - * The updated expected close date + * The expected date when this opportunity will be closed or won */ longDesc: () => LocalizedString } @@ -134625,11 +133218,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated company + * Associated company */ shortDesc: () => LocalizedString /** - * The updated associated company + * The company associated with this opportunity */ longDesc: () => LocalizedString } @@ -134639,11 +133232,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated source + * How the opportunity was acquired */ shortDesc: () => LocalizedString /** - * The updated source or channel + * The source or channel through which this opportunity was acquired */ longDesc: () => LocalizedString } @@ -134653,11 +133246,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated notes + * Additional notes */ shortDesc: () => LocalizedString /** - * Updated notes, description, or important details + * Additional notes, description, or important details about the opportunity */ longDesc: () => LocalizedString } @@ -134667,11 +133260,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated loss reason + * Reason for losing */ shortDesc: () => LocalizedString /** - * The updated reason for losing + * The reason why this opportunity was lost (if applicable) */ longDesc: () => LocalizedString } @@ -134681,11 +133274,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated value + * Deal value */ shortDesc: () => LocalizedString /** - * The updated monetary value + * The monetary value of the opportunity in your default currency */ longDesc: () => LocalizedString } @@ -134695,11 +133288,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated pipeline + * Sales pipeline */ shortDesc: () => LocalizedString /** - * The updated sales pipeline + * The sales pipeline this opportunity belongs to */ longDesc: () => LocalizedString } @@ -134709,11 +133302,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated stage + * Current stage */ shortDesc: () => LocalizedString /** - * The updated current stage + * The current stage of the opportunity in the sales pipeline */ longDesc: () => LocalizedString } @@ -134723,11 +133316,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated priority + * Opportunity priority */ shortDesc: () => LocalizedString /** - * The updated priority level + * The priority level of this opportunity (None, Low, Medium, or High) */ longDesc: () => LocalizedString } @@ -134737,11 +133330,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated status + * Opportunity status */ shortDesc: () => LocalizedString /** - * The updated opportunity status + * The current status of the opportunity (Open, Won, Lost, or Abandoned) */ longDesc: () => LocalizedString } @@ -134751,11 +133344,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated tags + * Opportunity tags */ shortDesc: () => LocalizedString /** - * Updated tags to categorize and organize the opportunity + * Tags to categorize and organize the opportunity. You can create new tags or select from existing ones. */ longDesc: () => LocalizedString } @@ -134765,11 +133358,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated win probability + * Probability of winning */ shortDesc: () => LocalizedString /** - * The updated estimated probability of winning + * The estimated probability (0-100) of winning this opportunity */ longDesc: () => LocalizedString } @@ -134779,17 +133372,17 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated custom fields + * Custom field values */ shortDesc: () => LocalizedString /** - * Updated custom field values + * Custom field values specific to your CopperCRM opportunity configuration */ longDesc: () => LocalizedString } } } - update_person: { + create_person: { groups: { /** * People @@ -134797,43 +133390,29 @@ export type TranslationFunctions = { '0': () => LocalizedString } /** - * Update Person + * Create Person */ displayName: () => LocalizedString /** - * Update an existing person contact in CopperCRM + * Create a new person contact in CopperCRM */ shortDesc: () => LocalizedString /** - * Update the details of an existing person contact in CopperCRM including contact information, company, and custom fields. + * Create a new person contact in CopperCRM with complete contact information. People represent individual contacts in your CRM. */ longDesc: () => LocalizedString options: { - person_id: { - /** - * Person - */ - displayName: () => LocalizedString - /** - * Person to update - */ - shortDesc: () => LocalizedString - /** - * Select the person you want to update - */ - longDesc: () => LocalizedString - } name: { /** * Name */ displayName: () => LocalizedString /** - * Updated full name + * Full name of the person */ shortDesc: () => LocalizedString /** - * The updated full name + * The full name of the person contact */ longDesc: () => LocalizedString } @@ -134843,11 +133422,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated prefix + * Name prefix */ shortDesc: () => LocalizedString /** - * Updated name prefix + * Name prefix such as Mr., Mrs., Dr., etc. */ longDesc: () => LocalizedString } @@ -134857,11 +133436,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated first name + * First name */ shortDesc: () => LocalizedString /** - * The updated first name + * The first name of the person */ longDesc: () => LocalizedString } @@ -134871,11 +133450,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated middle name + * Middle name */ shortDesc: () => LocalizedString /** - * The updated middle name or initial + * The middle name or initial of the person */ longDesc: () => LocalizedString } @@ -134885,11 +133464,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated last name + * Last name */ shortDesc: () => LocalizedString /** - * The updated last name + * The last name of the person */ longDesc: () => LocalizedString } @@ -134899,11 +133478,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated suffix + * Name suffix */ shortDesc: () => LocalizedString /** - * Updated name suffix + * Name suffix such as Jr., Sr., III, etc. */ longDesc: () => LocalizedString } @@ -134913,11 +133492,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated street + * Street address */ shortDesc: () => LocalizedString /** - * The updated street address + * The street address of the person */ longDesc: () => LocalizedString } @@ -134927,11 +133506,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated city + * City name */ shortDesc: () => LocalizedString /** - * The updated city + * The city where the person is located */ longDesc: () => LocalizedString } @@ -134941,11 +133520,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated state + * State or province */ shortDesc: () => LocalizedString /** - * The updated state or province + * The state or province */ longDesc: () => LocalizedString } @@ -134955,11 +133534,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated postal code + * ZIP or postal code */ shortDesc: () => LocalizedString /** - * The updated postal code or ZIP code + * The postal code or ZIP code */ longDesc: () => LocalizedString } @@ -134969,11 +133548,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated country + * Country name */ shortDesc: () => LocalizedString /** - * The updated country + * The country */ longDesc: () => LocalizedString } @@ -134983,11 +133562,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated assignee + * User assigned to this person */ shortDesc: () => LocalizedString /** - * The new CopperCRM user to assign to this contact + * The CopperCRM user who will be assigned to manage this contact */ longDesc: () => LocalizedString } @@ -134997,11 +133576,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated company + * Associated company */ shortDesc: () => LocalizedString /** - * The updated company where this person works + * The company where this person works */ longDesc: () => LocalizedString } @@ -135011,11 +133590,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated contact type + * Type of contact relationship */ shortDesc: () => LocalizedString /** - * The updated type of contact relationship + * The type of contact relationship this person has with your organization */ longDesc: () => LocalizedString } @@ -135025,11 +133604,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated notes + * Additional notes */ shortDesc: () => LocalizedString /** - * Updated notes, description, or important details + * Additional notes, description, or important details about the person */ longDesc: () => LocalizedString } @@ -135039,11 +133618,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated emails + * Email addresses */ shortDesc: () => LocalizedString /** - * Updated list of email addresses + * List of email addresses for the person */ longDesc: () => LocalizedString type: { @@ -135073,7 +133652,7 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * The category or type of this email + * The category or type of this email (work, personal, or other) */ longDesc: () => LocalizedString } @@ -135087,11 +133666,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated phone numbers + * Contact phone numbers */ shortDesc: () => LocalizedString /** - * Updated list of phone numbers + * List of phone numbers for the person */ longDesc: () => LocalizedString type: { @@ -135121,7 +133700,7 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * The category or type of this phone number + * The category or type of this phone number (work, mobile, home, or other) */ longDesc: () => LocalizedString } @@ -135135,11 +133714,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated social profiles + * Social media profiles */ shortDesc: () => LocalizedString /** - * Updated list of social media profiles + * List of social media profiles for the person */ longDesc: () => LocalizedString type: { @@ -135183,11 +133762,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated tags + * Person tags */ shortDesc: () => LocalizedString /** - * Updated tags to categorize and organize the person + * Tags to categorize and organize the person. You can create new tags or select from existing ones. */ longDesc: () => LocalizedString } @@ -135197,11 +133776,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated job title + * Job title */ shortDesc: () => LocalizedString /** - * The updated job title or position + * The job title or position of the person */ longDesc: () => LocalizedString } @@ -135211,11 +133790,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated websites + * Associated websites */ shortDesc: () => LocalizedString /** - * Updated list of associated websites + * List of websites associated with the person */ longDesc: () => LocalizedString type: { @@ -135245,7 +133824,7 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * The category or purpose of this website + * The category or purpose of this website (work, personal, or other) */ longDesc: () => LocalizedString } @@ -135259,17 +133838,17 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated custom fields + * Custom field values */ shortDesc: () => LocalizedString /** - * Updated custom field values + * Custom field values specific to your CopperCRM person configuration */ longDesc: () => LocalizedString } } } - update_task: { + create_task: { groups: { /** * Tasks @@ -135277,43 +133856,29 @@ export type TranslationFunctions = { '0': () => LocalizedString } /** - * Update Task + * Create Task */ displayName: () => LocalizedString /** - * Update an existing task in CopperCRM + * Create a new task in CopperCRM */ shortDesc: () => LocalizedString /** - * Update the details of an existing task in CopperCRM including name, due dates, status, priority, and custom fields. + * Create a new task in CopperCRM with details, due dates, and assignments. Tasks help you track action items and follow-ups. */ longDesc: () => LocalizedString options: { - task_id: { - /** - * Task - */ - displayName: () => LocalizedString - /** - * Task to update - */ - shortDesc: () => LocalizedString - /** - * Select the task you want to update - */ - longDesc: () => LocalizedString - } name: { /** * Task Name */ displayName: () => LocalizedString /** - * Updated name + * Name of the task */ shortDesc: () => LocalizedString /** - * The updated name for the task + * A descriptive name for the task */ longDesc: () => LocalizedString } @@ -135323,11 +133888,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated related record + * Associated record */ shortDesc: () => LocalizedString /** - * The updated CRM record this task is related to + * The CRM record (lead, person, company, opportunity, or project) this task is related to */ longDesc: () => LocalizedString type: { @@ -135356,7 +133921,7 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * The type of CRM record this task is related to + * The type of CRM record this task is related to (lead, person, company, opportunity, or project) */ longDesc: () => LocalizedString } @@ -135369,11 +133934,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated assignee + * User assigned to this task */ shortDesc: () => LocalizedString /** - * The new CopperCRM user to assign to this task + * The CopperCRM user who will be assigned to complete this task */ longDesc: () => LocalizedString } @@ -135383,11 +133948,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated due date + * When the task is due */ shortDesc: () => LocalizedString /** - * The updated date when this task should be completed + * The date when this task should be completed */ longDesc: () => LocalizedString } @@ -135397,11 +133962,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated reminder date + * When to send reminder */ shortDesc: () => LocalizedString /** - * The updated date when a reminder should be sent + * The date when a reminder should be sent for this task */ longDesc: () => LocalizedString } @@ -135411,11 +133976,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated priority + * Task priority */ shortDesc: () => LocalizedString /** - * The updated priority level + * The priority level of this task (None, Low, Medium, or High) */ longDesc: () => LocalizedString } @@ -135425,11 +133990,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated status + * Task status */ shortDesc: () => LocalizedString /** - * The updated task status + * The current status of the task (Open or Completed) */ longDesc: () => LocalizedString } @@ -135439,11 +134004,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated description + * Task description */ shortDesc: () => LocalizedString /** - * Updated details or description of what needs to be done + * Additional details or description of what needs to be done */ longDesc: () => LocalizedString } @@ -135453,11 +134018,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated tags + * Task tags */ shortDesc: () => LocalizedString /** - * Updated tags to categorize and organize the task + * Tags to categorize and organize the task. You can create new tags or select from existing ones. */ longDesc: () => LocalizedString } @@ -135467,54 +134032,418 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Updated custom fields + * Custom field values */ shortDesc: () => LocalizedString /** - * Updated custom field values + * Custom field values specific to your CopperCRM task configuration */ longDesc: () => LocalizedString } } } - } - triggers: { - new_company: { + delete_company: { + groups: { + /** + * Companies + */ + '0': () => LocalizedString + } /** - * New Company + * Delete Company */ displayName: () => LocalizedString /** - * Triggered when a new company is created + * Delete a company from CopperCRM */ shortDesc: () => LocalizedString /** - * Triggers when a new company is created in CopperCRM. You can filter which companies trigger this event using various criteria like assignee, location, tags, and more. + * Permanently delete a company record from CopperCRM. This action cannot be undone. */ longDesc: () => LocalizedString options: { - ids: { + company_id: { /** - * Company IDs + * Company */ displayName: () => LocalizedString /** - * Specific companies to watch + * Company to delete */ shortDesc: () => LocalizedString /** - * Only trigger for these specific company IDs + * Select the company you want to delete from CopperCRM */ longDesc: () => LocalizedString } - page_number: { - /** - * Page Number - */ - displayName: () => LocalizedString - /** - * Which page of results - */ + } + } + delete_lead: { + groups: { + /** + * Leads + */ + '0': () => LocalizedString + } + /** + * Delete Lead + */ + displayName: () => LocalizedString + /** + * Delete a lead from CopperCRM + */ + shortDesc: () => LocalizedString + /** + * Permanently delete a lead record from CopperCRM. This action cannot be undone. + */ + longDesc: () => LocalizedString + options: { + lead_id: { + /** + * Lead + */ + displayName: () => LocalizedString + /** + * Lead to delete + */ + shortDesc: () => LocalizedString + /** + * Select the lead you want to delete from CopperCRM + */ + longDesc: () => LocalizedString + } + } + } + delete_opportunity: { + groups: { + /** + * Opportunities + */ + '0': () => LocalizedString + } + /** + * Delete Opportunity + */ + displayName: () => LocalizedString + /** + * Delete an opportunity from CopperCRM + */ + shortDesc: () => LocalizedString + /** + * Permanently delete an opportunity record from CopperCRM. This action cannot be undone. + */ + longDesc: () => LocalizedString + options: { + opportunity_id: { + /** + * Opportunity + */ + displayName: () => LocalizedString + /** + * Opportunity to delete + */ + shortDesc: () => LocalizedString + /** + * Select the opportunity you want to delete from CopperCRM + */ + longDesc: () => LocalizedString + } + } + } + delete_person: { + groups: { + /** + * People + */ + '0': () => LocalizedString + } + /** + * Delete Person + */ + displayName: () => LocalizedString + /** + * Delete a person contact from CopperCRM + */ + shortDesc: () => LocalizedString + /** + * Permanently delete a person contact record from CopperCRM. This action cannot be undone. + */ + longDesc: () => LocalizedString + options: { + person_id: { + /** + * Person + */ + displayName: () => LocalizedString + /** + * Person to delete + */ + shortDesc: () => LocalizedString + /** + * Select the person contact you want to delete from CopperCRM + */ + longDesc: () => LocalizedString + } + } + } + delete_task: { + groups: { + /** + * Tasks + */ + '0': () => LocalizedString + } + /** + * Delete Task + */ + displayName: () => LocalizedString + /** + * Delete a task from CopperCRM + */ + shortDesc: () => LocalizedString + /** + * Permanently delete a task from CopperCRM. This action cannot be undone. + */ + longDesc: () => LocalizedString + options: { + task_id: { + /** + * Task + */ + displayName: () => LocalizedString + /** + * Task to delete + */ + shortDesc: () => LocalizedString + /** + * Select the task you want to delete from CopperCRM + */ + longDesc: () => LocalizedString + } + } + } + get_company: { + groups: { + /** + * Companies + */ + '0': () => LocalizedString + } + /** + * Get Company + */ + displayName: () => LocalizedString + /** + * Retrieve a company from CopperCRM + */ + shortDesc: () => LocalizedString + /** + * Retrieve detailed information about a specific company record from CopperCRM including all fields and custom data. + */ + longDesc: () => LocalizedString + options: { + company_id: { + /** + * Company + */ + displayName: () => LocalizedString + /** + * Company to retrieve + */ + shortDesc: () => LocalizedString + /** + * Select the company you want to retrieve from CopperCRM + */ + longDesc: () => LocalizedString + } + } + } + get_lead: { + groups: { + /** + * Leads + */ + '0': () => LocalizedString + } + /** + * Get Lead + */ + displayName: () => LocalizedString + /** + * Retrieve a lead from CopperCRM + */ + shortDesc: () => LocalizedString + /** + * Retrieve detailed information about a specific lead record from CopperCRM including all fields and custom data. + */ + longDesc: () => LocalizedString + options: { + lead_id: { + /** + * Lead + */ + displayName: () => LocalizedString + /** + * Lead to retrieve + */ + shortDesc: () => LocalizedString + /** + * Select the lead you want to retrieve from CopperCRM + */ + longDesc: () => LocalizedString + } + } + } + get_opportunity: { + groups: { + /** + * Opportunities + */ + '0': () => LocalizedString + } + /** + * Get Opportunity + */ + displayName: () => LocalizedString + /** + * Retrieve an opportunity from CopperCRM + */ + shortDesc: () => LocalizedString + /** + * Retrieve detailed information about a specific opportunity record from CopperCRM including all fields and custom data. + */ + longDesc: () => LocalizedString + options: { + opportunity_id: { + /** + * Opportunity + */ + displayName: () => LocalizedString + /** + * Opportunity to retrieve + */ + shortDesc: () => LocalizedString + /** + * Select the opportunity you want to retrieve from CopperCRM + */ + longDesc: () => LocalizedString + } + } + } + get_person: { + groups: { + /** + * People + */ + '0': () => LocalizedString + } + /** + * Get Person + */ + displayName: () => LocalizedString + /** + * Retrieve a person contact from CopperCRM + */ + shortDesc: () => LocalizedString + /** + * Retrieve detailed information about a specific person contact record from CopperCRM including all fields and custom data. + */ + longDesc: () => LocalizedString + options: { + person_id: { + /** + * Person + */ + displayName: () => LocalizedString + /** + * Person to retrieve + */ + shortDesc: () => LocalizedString + /** + * Select the person contact you want to retrieve from CopperCRM + */ + longDesc: () => LocalizedString + } + } + } + get_task: { + groups: { + /** + * Tasks + */ + '0': () => LocalizedString + } + /** + * Get Task + */ + displayName: () => LocalizedString + /** + * Retrieve a task from CopperCRM + */ + shortDesc: () => LocalizedString + /** + * Retrieve detailed information about a specific task from CopperCRM including all fields and custom data. + */ + longDesc: () => LocalizedString + options: { + task_id: { + /** + * Task + */ + displayName: () => LocalizedString + /** + * Task to retrieve + */ + shortDesc: () => LocalizedString + /** + * Select the task you want to retrieve from CopperCRM + */ + longDesc: () => LocalizedString + } + } + } + search_companies: { + groups: { + /** + * Companies + */ + '0': () => LocalizedString + } + /** + * Search Companies + */ + displayName: () => LocalizedString + /** + * Search for companies in CopperCRM + */ + shortDesc: () => LocalizedString + /** + * Search and filter companies in CopperCRM using various criteria including name, location, tags, and custom fields. Returns a list of matching companies. + */ + longDesc: () => LocalizedString + options: { + ids: { + /** + * Company IDs + */ + displayName: () => LocalizedString + /** + * Specific companies to retrieve + */ + shortDesc: () => LocalizedString + /** + * List of specific company IDs to retrieve + */ + longDesc: () => LocalizedString + } + page_number: { + /** + * Page Number + */ + displayName: () => LocalizedString + /** + * Which page of results + */ shortDesc: () => LocalizedString /** * The page number of results to retrieve for pagination @@ -135569,11 +134498,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Company name filter + * Company name to search */ shortDesc: () => LocalizedString /** - * Only trigger for companies with names matching this value + * Search for companies with names matching this value */ longDesc: () => LocalizedString } @@ -135583,11 +134512,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Filter by assignee + * Assigned users */ shortDesc: () => LocalizedString /** - * Only trigger for companies assigned to these users + * Filter companies by assigned users */ longDesc: () => LocalizedString } @@ -135597,11 +134526,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Filter by contact type + * Contact type filter */ shortDesc: () => LocalizedString /** - * Only trigger for companies with these contact types + * Filter companies by contact type */ longDesc: () => LocalizedString } @@ -135611,11 +134540,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * City filter + * City location */ shortDesc: () => LocalizedString /** - * Only trigger for companies in this city + * Filter companies by city */ longDesc: () => LocalizedString } @@ -135625,11 +134554,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * State or province filter + * State or province */ shortDesc: () => LocalizedString /** - * Only trigger for companies in this state or province + * Filter companies by state or province */ longDesc: () => LocalizedString } @@ -135639,11 +134568,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Postal code filter + * ZIP or postal code */ shortDesc: () => LocalizedString /** - * Only trigger for companies with this postal code + * Filter companies by postal code */ longDesc: () => LocalizedString } @@ -135653,11 +134582,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Country filter + * Country location */ shortDesc: () => LocalizedString /** - * Only trigger for companies in this country + * Filter companies by country */ longDesc: () => LocalizedString } @@ -135671,7 +134600,7 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * Only trigger for companies that have any of these tags + * Filter companies that have any of these tags */ longDesc: () => LocalizedString } @@ -135685,7 +134614,7 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * Only trigger for companies with matching social media profiles + * Filter companies by social media profiles */ longDesc: () => LocalizedString } @@ -135695,11 +134624,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Following status filter + * Following status */ shortDesc: () => LocalizedString /** - * Only trigger for companies that are followed or not followed + * Filter companies by whether they are followed or not */ longDesc: () => LocalizedString } @@ -135713,7 +134642,7 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * Only trigger for companies with at least this many interactions + * Filter companies with at least this many interactions */ longDesc: () => LocalizedString } @@ -135727,7 +134656,7 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * Only trigger for companies with no more than this many interactions + * Filter companies with no more than this many interactions */ longDesc: () => LocalizedString } @@ -135741,7 +134670,7 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * Only trigger for companies inactive for at least this many days + * Filter companies inactive for at least this many days */ longDesc: () => LocalizedString } @@ -135755,23 +134684,85 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * Only trigger for companies inactive for no more than this many days + * Filter companies inactive for no more than this many days + */ + longDesc: () => LocalizedString + } + minimum_created_date: { + /** + * Created After + */ + displayName: () => LocalizedString + /** + * Earliest creation date + */ + shortDesc: () => LocalizedString + /** + * Filter companies created on or after this date + */ + longDesc: () => LocalizedString + } + maximum_created_date: { + /** + * Created Before + */ + displayName: () => LocalizedString + /** + * Latest creation date + */ + shortDesc: () => LocalizedString + /** + * Filter companies created on or before this date + */ + longDesc: () => LocalizedString + } + minimum_modified_date: { + /** + * Modified After + */ + displayName: () => LocalizedString + /** + * Earliest modification date + */ + shortDesc: () => LocalizedString + /** + * Filter companies modified on or after this date + */ + longDesc: () => LocalizedString + } + maximum_modified_date: { + /** + * Modified Before + */ + displayName: () => LocalizedString + /** + * Latest modification date + */ + shortDesc: () => LocalizedString + /** + * Filter companies modified on or before this date */ longDesc: () => LocalizedString } } } - new_lead: { + search_leads: { + groups: { + /** + * Leads + */ + '0': () => LocalizedString + } /** - * New Lead + * Search Leads */ displayName: () => LocalizedString /** - * Triggered when a new lead is created + * Search for leads in CopperCRM */ shortDesc: () => LocalizedString /** - * Triggers when a new lead is created in CopperCRM. You can filter which leads trigger this event using various criteria like assignee, status, location, and more. + * Search and filter leads in CopperCRM using various criteria including name, email, phone, status, and custom fields. Returns a list of matching leads. */ longDesc: () => LocalizedString options: { @@ -135781,11 +134772,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Specific leads to watch + * Specific leads to retrieve */ shortDesc: () => LocalizedString /** - * Only trigger for these specific lead IDs + * List of specific lead IDs to retrieve */ longDesc: () => LocalizedString } @@ -135851,11 +134842,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Lead name filter + * Lead name to search */ shortDesc: () => LocalizedString /** - * Only trigger for leads with names matching this value + * Search for leads with names matching this value */ longDesc: () => LocalizedString } @@ -135865,11 +134856,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Phone number filter + * Phone number to search */ shortDesc: () => LocalizedString /** - * Only trigger for leads with this phone number + * Search for leads with this phone number */ longDesc: () => LocalizedString } @@ -135879,11 +134870,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Email filter + * Email to search */ shortDesc: () => LocalizedString /** - * Only trigger for leads with this email address + * Search for leads with this email address */ longDesc: () => LocalizedString } @@ -135893,11 +134884,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Filter by assignee + * Assigned users */ shortDesc: () => LocalizedString /** - * Only trigger for leads assigned to these users + * Filter leads by assigned users */ longDesc: () => LocalizedString } @@ -135907,11 +134898,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Filter by status + * Lead statuses */ shortDesc: () => LocalizedString /** - * Only trigger for leads with these statuses + * Filter leads by status */ longDesc: () => LocalizedString } @@ -135921,11 +134912,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Filter by source + * Lead sources */ shortDesc: () => LocalizedString /** - * Only trigger for leads from these customer sources + * Filter leads by customer source */ longDesc: () => LocalizedString } @@ -135935,11 +134926,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * City filter + * City location */ shortDesc: () => LocalizedString /** - * Only trigger for leads in this city + * Filter leads by city */ longDesc: () => LocalizedString } @@ -135949,11 +134940,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * State or province filter + * State or province */ shortDesc: () => LocalizedString /** - * Only trigger for leads in this state or province + * Filter leads by state or province */ longDesc: () => LocalizedString } @@ -135963,11 +134954,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Postal code filter + * ZIP or postal code */ shortDesc: () => LocalizedString /** - * Only trigger for leads with this postal code + * Filter leads by postal code */ longDesc: () => LocalizedString } @@ -135977,11 +134968,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Country filter + * Country location */ shortDesc: () => LocalizedString /** - * Only trigger for leads in this country + * Filter leads by country */ longDesc: () => LocalizedString } @@ -135995,7 +134986,7 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * Only trigger for leads that have any of these tags + * Filter leads that have any of these tags */ longDesc: () => LocalizedString } @@ -136009,7 +135000,7 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * Only trigger for leads with matching social media profiles + * Filter leads by social media profiles */ longDesc: () => LocalizedString } @@ -136019,11 +135010,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Following status filter + * Following status */ shortDesc: () => LocalizedString /** - * Only trigger for leads that are followed or not followed + * Filter leads by whether they are followed or not */ longDesc: () => LocalizedString } @@ -136033,11 +135024,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Lead age filter + * Lead age in days */ shortDesc: () => LocalizedString /** - * Only trigger for leads of this age in days + * Filter leads by their age in days */ longDesc: () => LocalizedString } @@ -136051,7 +135042,7 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * Only trigger for leads with at least this monetary value + * Filter leads with at least this monetary value */ longDesc: () => LocalizedString } @@ -136065,7 +135056,7 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * Only trigger for leads with no more than this monetary value + * Filter leads with no more than this monetary value */ longDesc: () => LocalizedString } @@ -136079,7 +135070,7 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * Only trigger for leads with at least this many interactions + * Filter leads with at least this many interactions */ longDesc: () => LocalizedString } @@ -136093,7 +135084,7 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * Only trigger for leads with no more than this many interactions + * Filter leads with no more than this many interactions */ longDesc: () => LocalizedString } @@ -136107,23 +135098,29 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * Whether to trigger for leads that have been converted to opportunities + * Whether to include leads that have been converted to opportunities */ longDesc: () => LocalizedString } } } - new_opportunity: { + search_opportunities: { + groups: { + /** + * Opportunities + */ + '0': () => LocalizedString + } /** - * New Opportunity + * Search Opportunities */ displayName: () => LocalizedString /** - * Triggered when a new opportunity is created + * Search for opportunities in CopperCRM */ shortDesc: () => LocalizedString /** - * Triggers when a new opportunity is created in CopperCRM. You can filter which opportunities trigger this event using various criteria like pipeline, stage, status, value, and more. + * Search and filter opportunities in CopperCRM using various criteria including name, pipeline, status, value, and custom fields. Returns a list of matching opportunities. */ longDesc: () => LocalizedString options: { @@ -136133,11 +135130,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Specific opportunities to watch + * Specific opportunities to retrieve */ shortDesc: () => LocalizedString /** - * Only trigger for these specific opportunity IDs + * List of specific opportunity IDs to retrieve */ longDesc: () => LocalizedString } @@ -136203,11 +135200,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Opportunity name filter + * Opportunity name to search */ shortDesc: () => LocalizedString /** - * Only trigger for opportunities with names matching this value + * Search for opportunities with names matching this value */ longDesc: () => LocalizedString } @@ -136217,11 +135214,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Filter by assignee + * Assigned users */ shortDesc: () => LocalizedString /** - * Only trigger for opportunities assigned to these users + * Filter opportunities by assigned users */ longDesc: () => LocalizedString } @@ -136231,11 +135228,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Filter by company + * Associated companies */ shortDesc: () => LocalizedString /** - * Only trigger for opportunities associated with these companies + * Filter opportunities by associated companies */ longDesc: () => LocalizedString } @@ -136245,11 +135242,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Filter by source + * Opportunity sources */ shortDesc: () => LocalizedString /** - * Only trigger for opportunities from these customer sources + * Filter opportunities by customer source */ longDesc: () => LocalizedString } @@ -136259,11 +135256,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Filter by loss reason + * Reasons for loss */ shortDesc: () => LocalizedString /** - * Only trigger for opportunities with these loss reasons + * Filter opportunities by loss reason */ longDesc: () => LocalizedString } @@ -136273,11 +135270,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Filter by pipeline + * Sales pipelines */ shortDesc: () => LocalizedString /** - * Only trigger for opportunities in these pipelines + * Filter opportunities by pipeline */ longDesc: () => LocalizedString } @@ -136287,11 +135284,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Filter by stage + * Current stages */ shortDesc: () => LocalizedString /** - * Only trigger for opportunities in these pipeline stages + * Filter opportunities by pipeline stage */ longDesc: () => LocalizedString } @@ -136301,11 +135298,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Filter by primary contact + * Main contacts */ shortDesc: () => LocalizedString /** - * Only trigger for opportunities with these primary contacts + * Filter opportunities by primary contact */ longDesc: () => LocalizedString } @@ -136315,11 +135312,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Filter by priority + * Priority levels */ shortDesc: () => LocalizedString /** - * Only trigger for opportunities with these priority levels + * Filter opportunities by priority level */ longDesc: () => LocalizedString } @@ -136329,11 +135326,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Filter by status + * Opportunity statuses */ shortDesc: () => LocalizedString /** - * Only trigger for opportunities with these statuses + * Filter opportunities by status (Open, Won, Lost, Abandoned) */ longDesc: () => LocalizedString } @@ -136347,7 +135344,7 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * Only trigger for opportunities that have any of these tags + * Filter opportunities that have any of these tags */ longDesc: () => LocalizedString } @@ -136357,11 +135354,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Following status filter + * Following status */ shortDesc: () => LocalizedString /** - * Only trigger for opportunities that are followed or not followed + * Filter opportunities by whether they are followed or not */ longDesc: () => LocalizedString } @@ -136375,7 +135372,7 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * Only trigger for opportunities with at least this monetary value + * Filter opportunities with at least this monetary value */ longDesc: () => LocalizedString } @@ -136389,7 +135386,7 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * Only trigger for opportunities with no more than this monetary value + * Filter opportunities with no more than this monetary value */ longDesc: () => LocalizedString } @@ -136403,7 +135400,7 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * Only trigger for opportunities with at least this win probability + * Filter opportunities with at least this win probability */ longDesc: () => LocalizedString } @@ -136417,7 +135414,7 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * Only trigger for opportunities with no more than this win probability + * Filter opportunities with no more than this win probability */ longDesc: () => LocalizedString } @@ -136431,7 +135428,7 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * Only trigger for opportunities with at least this many interactions + * Filter opportunities with at least this many interactions */ longDesc: () => LocalizedString } @@ -136445,23 +135442,141 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * Only trigger for opportunities with no more than this many interactions + * Filter opportunities with no more than this many interactions + */ + longDesc: () => LocalizedString + } + minimum_close_date: { + /** + * Close Date After + */ + displayName: () => LocalizedString + /** + * Earliest close date + */ + shortDesc: () => LocalizedString + /** + * Filter opportunities with close date on or after this date + */ + longDesc: () => LocalizedString + } + maximum_close_date: { + /** + * Close Date Before + */ + displayName: () => LocalizedString + /** + * Latest close date + */ + shortDesc: () => LocalizedString + /** + * Filter opportunities with close date on or before this date + */ + longDesc: () => LocalizedString + } + minimum_created_date: { + /** + * Created After + */ + displayName: () => LocalizedString + /** + * Earliest creation date + */ + shortDesc: () => LocalizedString + /** + * Filter opportunities created on or after this date + */ + longDesc: () => LocalizedString + } + maximum_created_date: { + /** + * Created Before + */ + displayName: () => LocalizedString + /** + * Latest creation date + */ + shortDesc: () => LocalizedString + /** + * Filter opportunities created on or before this date + */ + longDesc: () => LocalizedString + } + minimum_modified_date: { + /** + * Modified After + */ + displayName: () => LocalizedString + /** + * Earliest modification date + */ + shortDesc: () => LocalizedString + /** + * Filter opportunities modified on or after this date + */ + longDesc: () => LocalizedString + } + maximum_modified_date: { + /** + * Modified Before + */ + displayName: () => LocalizedString + /** + * Latest modification date + */ + shortDesc: () => LocalizedString + /** + * Filter opportunities modified on or before this date + */ + longDesc: () => LocalizedString + } + minimum_stage_change_date: { + /** + * Stage Changed After + */ + displayName: () => LocalizedString + /** + * Earliest stage change + */ + shortDesc: () => LocalizedString + /** + * Filter opportunities with stage changed on or after this date + */ + longDesc: () => LocalizedString + } + maximum_stage_change_date: { + /** + * Stage Changed Before + */ + displayName: () => LocalizedString + /** + * Latest stage change + */ + shortDesc: () => LocalizedString + /** + * Filter opportunities with stage changed on or before this date */ longDesc: () => LocalizedString } } } - new_person: { + search_people: { + groups: { + /** + * People + */ + '0': () => LocalizedString + } /** - * New Person + * Search People */ displayName: () => LocalizedString /** - * Triggered when a new person contact is created + * Search for person contacts in CopperCRM */ shortDesc: () => LocalizedString /** - * Triggers when a new person contact is created in CopperCRM. You can filter which people trigger this event using various criteria like assignee, company, location, and more. + * Search and filter people in CopperCRM using various criteria including name, email, phone, company, and custom fields. Returns a list of matching person contacts. */ longDesc: () => LocalizedString options: { @@ -136471,11 +135586,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Specific people to watch + * Specific people to retrieve */ shortDesc: () => LocalizedString /** - * Only trigger for these specific person IDs + * List of specific person IDs to retrieve */ longDesc: () => LocalizedString } @@ -136485,11 +135600,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Person name filter + * Person name to search */ shortDesc: () => LocalizedString /** - * Only trigger for people with names matching this value + * Search for people with names matching this value */ longDesc: () => LocalizedString } @@ -136499,11 +135614,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Job title filter + * Job title to search */ shortDesc: () => LocalizedString /** - * Only trigger for people with this job title + * Search for people with this job title */ longDesc: () => LocalizedString } @@ -136513,11 +135628,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Email filter + * Email to search */ shortDesc: () => LocalizedString /** - * Only trigger for people with this email address + * Search for people with this email address */ longDesc: () => LocalizedString } @@ -136527,11 +135642,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Phone number filter + * Phone number to search */ shortDesc: () => LocalizedString /** - * Only trigger for people with this phone number + * Search for people with this phone number */ longDesc: () => LocalizedString } @@ -136541,11 +135656,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * City filter + * City location */ shortDesc: () => LocalizedString /** - * Only trigger for people in this city + * Filter people by city */ longDesc: () => LocalizedString } @@ -136555,11 +135670,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * State or province filter + * State or province */ shortDesc: () => LocalizedString /** - * Only trigger for people in this state or province + * Filter people by state or province */ longDesc: () => LocalizedString } @@ -136569,11 +135684,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Postal code filter + * ZIP or postal code */ shortDesc: () => LocalizedString /** - * Only trigger for people with this postal code + * Filter people by postal code */ longDesc: () => LocalizedString } @@ -136583,11 +135698,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Country filter + * Country location */ shortDesc: () => LocalizedString /** - * Only trigger for people in this country + * Filter people by country */ longDesc: () => LocalizedString } @@ -136597,11 +135712,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Filter by assignee + * Assigned users */ shortDesc: () => LocalizedString /** - * Only trigger for people assigned to these users + * Filter people by assigned users */ longDesc: () => LocalizedString } @@ -136611,11 +135726,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Filter by contact type + * Contact type filter */ shortDesc: () => LocalizedString /** - * Only trigger for people with these contact types + * Filter people by contact type */ longDesc: () => LocalizedString } @@ -136625,11 +135740,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Filter by company + * Associated companies */ shortDesc: () => LocalizedString /** - * Only trigger for people associated with these companies + * Filter people by associated companies */ longDesc: () => LocalizedString } @@ -136643,7 +135758,7 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * Only trigger for people that have any of these tags + * Filter people that have any of these tags */ longDesc: () => LocalizedString } @@ -136653,11 +135768,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Social media filter + * Social media profiles */ shortDesc: () => LocalizedString /** - * Only trigger for people with these social media profiles + * Filter people by social media profiles */ longDesc: () => LocalizedString } @@ -136671,7 +135786,7 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * Only trigger for people with at least this many interactions + * Filter people with at least this many interactions */ longDesc: () => LocalizedString } @@ -136685,35 +135800,63 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * Only trigger for people with no more than this many interactions + * Filter people with no more than this many interactions */ longDesc: () => LocalizedString } - page_number: { + minimum_created_date: { /** - * Page Number + * Created After */ displayName: () => LocalizedString /** - * Which page of results + * Earliest creation date */ shortDesc: () => LocalizedString /** - * The page number of results to retrieve for pagination + * Filter people created on or after this date */ longDesc: () => LocalizedString } - page_size: { + maximum_created_date: { /** - * Page Size + * Created Before */ displayName: () => LocalizedString /** - * Results per page + * Latest creation date */ shortDesc: () => LocalizedString /** - * The number of results to return per page + * Filter people created on or before this date + */ + longDesc: () => LocalizedString + } + minimum_modified_date: { + /** + * Modified After + */ + displayName: () => LocalizedString + /** + * Earliest modification date + */ + shortDesc: () => LocalizedString + /** + * Filter people modified on or after this date + */ + longDesc: () => LocalizedString + } + maximum_modified_date: { + /** + * Modified Before + */ + displayName: () => LocalizedString + /** + * Latest modification date + */ + shortDesc: () => LocalizedString + /** + * Filter people modified on or before this date */ longDesc: () => LocalizedString } @@ -136727,7 +135870,7 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * The field to use for sorting the results + * Field to sort results by */ longDesc: () => LocalizedString } @@ -136745,19 +135888,53 @@ export type TranslationFunctions = { */ longDesc: () => LocalizedString } + page_number: { + /** + * Page Number + */ + displayName: () => LocalizedString + /** + * Which page of results + */ + shortDesc: () => LocalizedString + /** + * The page number of results to retrieve for pagination + */ + longDesc: () => LocalizedString + } + page_size: { + /** + * Page Size + */ + displayName: () => LocalizedString + /** + * Results per page + */ + shortDesc: () => LocalizedString + /** + * The number of results to return per page + */ + longDesc: () => LocalizedString + } } } - new_task: { + search_tasks: { + groups: { + /** + * Tasks + */ + '0': () => LocalizedString + } /** - * New Task + * Search Tasks */ displayName: () => LocalizedString /** - * Triggered when a new task is created + * Search for tasks in CopperCRM */ shortDesc: () => LocalizedString /** - * Triggers when a new task is created in CopperCRM. You can filter which tasks trigger this event using various criteria like assignee, status, priority, and more. + * Search and filter tasks in CopperCRM using various criteria including assignee, status, priority, due date, and custom fields. Returns a list of matching tasks. */ longDesc: () => LocalizedString options: { @@ -136767,11 +135944,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Specific tasks to watch + * Specific tasks to retrieve */ shortDesc: () => LocalizedString /** - * Only trigger for these specific task IDs + * List of specific task IDs to retrieve */ longDesc: () => LocalizedString } @@ -136837,11 +136014,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Filter by assignee + * Assigned users */ shortDesc: () => LocalizedString /** - * Only trigger for tasks assigned to these users + * Filter tasks by assigned users */ longDesc: () => LocalizedString } @@ -136851,11 +136028,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Filter by status + * Task statuses */ shortDesc: () => LocalizedString /** - * Only trigger for tasks with these statuses + * Filter tasks by status (Open or Completed) */ longDesc: () => LocalizedString } @@ -136865,11 +136042,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Filter by priority + * Priority levels */ shortDesc: () => LocalizedString /** - * Only trigger for tasks with these priority levels + * Filter tasks by priority level */ longDesc: () => LocalizedString } @@ -136883,7 +136060,7 @@ export type TranslationFunctions = { */ shortDesc: () => LocalizedString /** - * Only trigger for tasks that have any of these tags + * Filter tasks that have any of these tags */ longDesc: () => LocalizedString } @@ -136893,4268 +136070,3461 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Following status filter + * Following status */ shortDesc: () => LocalizedString /** - * Only trigger for tasks that are followed or not followed + * Filter tasks by whether they are followed or not */ longDesc: () => LocalizedString } - } - } - } - } - SeaTable: { - /** - * SeaTable - */ - displayName: () => LocalizedString - groups: { - /** - * Spreadsheets & Data Tables - */ - '0': () => LocalizedString - /** - * Databases & Backend Services - */ - '1': () => LocalizedString - } - /** - * Connect to SeaTable to manage your database tables and records with powerful automation - */ - shortDesc: () => LocalizedString - /** - * The SeaTable integration provides comprehensive access to your SeaTable database operations. Create, read, update, and delete records in your tables, execute SQL queries, and monitor new entries with real-time triggers. Whether you need to manage data, filter results with SQL, or track new records, this integration streamlines your SeaTable workflow automation and database management. - */ - longDesc: () => LocalizedString - connectionMessage: { - /** - * Connect to SeaTable - */ - title: () => LocalizedString - /** - * To connect to SeaTable, you will need your **SeaTable Server URL** and an **API Token**. - - ## Getting Your API Token - - 1. Log in to your SeaTable instance - 2. Open the base you want to connect to - 3. Click on the **dropdown arrow** next to the base name - 4. Select **API Token** from the menu - 5. Create a new token with the desired permissions (read or read/write) - - For detailed instructions, see the [SeaTable API Token Guide](https://seatable.com/help/create-api-tokens/). - - ## Connection Details - - ### SeaTable Server URL - The base URL of your SeaTable instance: - - **SeaTable Cloud**: Use `https://cloud.seatable.io` - - **Self-hosted**: Use your instance URL (e.g., `https://seatable.yourcompany.com`) - - ### API Token - Your API token grants access to a specific base. Each token can have read-only or read-write permissions. - - **Note:** API tokens are scoped to a single base. If you need to access multiple bases, you'll need to create separate connections for each one. - */ - content: () => LocalizedString - } - triggers: { - new_document: { - /** - * New Row - */ - displayName: () => LocalizedString - /** - * Trigger when a new row is added to a SeaTable table - */ - shortDesc: () => LocalizedString - /** - * Monitors a SeaTable table for new rows and triggers when new records are detected. The trigger polls for changes and fires when new rows are found. - */ - longDesc: () => LocalizedString - options: { - table: { + minimum_due_date: { /** - * Table + * Due Date After */ displayName: () => LocalizedString /** - * The table to monitor for new rows + * Earliest due date */ shortDesc: () => LocalizedString /** - * Select the SeaTable table to monitor. The trigger will fire when new rows are added to this table. + * Filter tasks with due date on or after this date */ longDesc: () => LocalizedString } - } - } - } - searchOptions: { - orderBy: { - /** - * Order By - */ - displayName: () => LocalizedString - /** - * Sort results by a specific field - */ - shortDesc: () => LocalizedString - /** - * Define the field and direction to sort search results - */ - longDesc: () => LocalizedString - type: { - fields: { - field: { - /** - * Field - */ - displayName: () => LocalizedString - /** - * The field to sort by - */ - shortDesc: () => LocalizedString - /** - * The name of the field to use for sorting results - */ - longDesc: () => LocalizedString - } - direction: { - /** - * Direction - */ - displayName: () => LocalizedString - /** - * Sort direction - */ - shortDesc: () => LocalizedString - /** - * The direction to sort results (ascending or descending) - */ - longDesc: () => LocalizedString - } + maximum_due_date: { + /** + * Due Date Before + */ + displayName: () => LocalizedString + /** + * Latest due date + */ + shortDesc: () => LocalizedString + /** + * Filter tasks with due date on or before this date + */ + longDesc: () => LocalizedString } - } - } - } - actions: { - run_sql: { - /** - * Run SQL Query - */ - displayName: () => LocalizedString - /** - * Execute a SQL query on the SeaTable base - */ - shortDesc: () => LocalizedString - /** - * Executes a SQL query on your SeaTable base and returns the results. Supports SELECT, INSERT, UPDATE, and DELETE statements. Maximum of 10,000 rows can be returned for SELECT queries. - */ - longDesc: () => LocalizedString - options: { - sql: { + minimum_reminder_date: { /** - * SQL Query + * Reminder After */ displayName: () => LocalizedString /** - * The SQL query to execute + * Earliest reminder date */ shortDesc: () => LocalizedString /** - * Enter your SQL query. Use backticks around column names with special characters (e.g., `My Column`). Example: SELECT * FROM `Table1` WHERE `Status` = 'Active' LIMIT 100 + * Filter tasks with reminder date on or after this date */ longDesc: () => LocalizedString } - } - } - } - } - Craft: { - groups: { - /** - * Documents & Documentation - */ - '0': () => LocalizedString - /** - * Project & Task Management - */ - '1': () => LocalizedString - } - /** - * Craft - */ - displayName: () => LocalizedString - /** - * Connect to Craft to manage documents, collections, tasks, and blocks seamlessly. - */ - shortDesc: () => LocalizedString - /** - * - The Craft integration provides comprehensive actions and triggers to interact with the Craft API. Manage your documents, collections, tasks, and blocks with powerful automation capabilities for your note-taking and document management workflows. - - - ## API Configuration Requirements - - - ### For Tasks and Daily Notes Actions - - - To use **List Tasks**, **Create Task**, **Update Task**, **Delete Tasks**, and **Get Daily Note Blocks** actions, you must create the **Daily notes & Tasks** API in the **Imagine** tab within Craft. - - - - ### For All Other Actions - - To use **Documents**, **Collections**, and **Blocks** actions, you need to connect **Selected Documents** in your Craft API configuration. - - */ - longDesc: () => LocalizedString - connectionMessage: { - /** - * Connect to Craft - */ - title: () => LocalizedString - /** - * To connect to Craft, you will need to create an **API connection** in the Craft app. - - ## Creating Your API Connection - - 1. Open the **Craft** app on your Mac or iOS device - 2. Navigate to the **Imagine** tab (AI features section) - 3. Click **Add Your First API Connection** or **+ Add API** - 4. Choose the type of API you want to create: - - **Daily notes & Tasks**: For task management and daily note operations - - **Selected Documents**: For document, collection, and block operations - 5. Follow the prompts to configure your API connection - 6. Copy the generated **API URL** and **Token** (if provided) - - ## Connection Details - - ### API URL - The URL provided by Craft for your API connection. This URL is specific to your account and the type of API you created. - - ### API Token (Optional) - Some API configurations may include a token for additional authentication. If provided, include it in your connection settings. - - ## API Types and Capabilities - - ### Daily Notes & Tasks API - Required for: - - List Tasks, Create Task, Update Task, Delete Tasks - - Get Daily Note Blocks - - ### Selected Documents API - Required for: - - Documents: List Documents - - Collections: List Collections, Create/Update/Delete Collection Items - - Blocks: List Blocks, Insert Block, Delete Blocks - - **Note:** You may need to create multiple API connections if you want to use both task-related actions and document-related actions. Each API type provides access to different sets of functionality. - */ - content: () => LocalizedString - } - triggers: { - new_collection_item: { - /** - * New Collection Item - */ - displayName: () => LocalizedString - /** - * Triggers when a new item is added to a collection - */ - shortDesc: () => LocalizedString - /** - * This trigger activates when a new item is created in the specified Craft collection, allowing you to automate workflows based on new collection entries. - */ - longDesc: () => LocalizedString - options: { - collectionId: { + maximum_reminder_date: { /** - * Collection + * Reminder Before */ displayName: () => LocalizedString /** - * The collection to monitor for new items + * Latest reminder date */ shortDesc: () => LocalizedString /** - * Select the Craft collection you want to monitor for new items. When a new item is added to this collection, the trigger will fire. + * Filter tasks with reminder date on or before this date */ longDesc: () => LocalizedString } - maxDepth: { + minimum_completed_date: { /** - * Maximum Depth + * Completed After */ displayName: () => LocalizedString /** - * Maximum depth for nested content retrieval + * Earliest completion date */ shortDesc: () => LocalizedString /** - * The maximum depth of nested content to fetch for each collection item. Default is -1 (all descendants). With a depth of 0, only the item properties are fetched without nested content. + * Filter tasks completed on or after this date */ longDesc: () => LocalizedString } - } - } - } - actions: { - get_blocks: { - groups: { - /** - * Daily Note Blocks (Daily Tasks & Notes API) - */ - '0': () => LocalizedString - } - /** - * Get Daily Note Blocks - */ - displayName: () => LocalizedString - /** - * Retrieve blocks from a daily note - */ - shortDesc: () => LocalizedString - /** - * Fetch all blocks from a Craft daily note for a specific date. You can retrieve blocks from today, yesterday, tomorrow, or any custom date, with control over the depth and metadata of the returned content. - */ - longDesc: () => LocalizedString - options: { - date: { + maximum_completed_date: { /** - * Date + * Completed Before */ displayName: () => LocalizedString /** - * Specific date for the daily note + * Latest completion date */ shortDesc: () => LocalizedString /** - * Select a specific date to retrieve the daily note blocks. If not provided, you can use the "Day" option to select relative dates like today, yesterday, or tomorrow. + * Filter tasks completed on or before this date */ longDesc: () => LocalizedString } - day: { + minimum_created_date: { /** - * Day + * Created After */ displayName: () => LocalizedString /** - * Relative day selector + * Earliest creation date */ shortDesc: () => LocalizedString /** - * Choose a relative day option such as today, yesterday, or tomorrow to retrieve the corresponding daily note blocks. + * Filter tasks created on or after this date */ longDesc: () => LocalizedString } - maxDepth: { + maximum_created_date: { /** - * Maximum Depth + * Created Before */ displayName: () => LocalizedString /** - * Maximum depth for nested blocks + * Latest creation date */ shortDesc: () => LocalizedString /** - * Specify the maximum depth for retrieving nested blocks. Use -1 for unlimited depth, or provide a positive number to limit how deep the nested block structure should be retrieved. + * Filter tasks created on or before this date */ longDesc: () => LocalizedString } - fetchMetadata: { + minimum_modified_date: { /** - * Fetch Metadata + * Modified After */ displayName: () => LocalizedString /** - * Include metadata in the response + * Earliest modification date */ shortDesc: () => LocalizedString /** - * Enable this option to include additional metadata such as creation date, last modified date, and author information for each block in the response. + * Filter tasks modified on or after this date + */ + longDesc: () => LocalizedString + } + maximum_modified_date: { + /** + * Modified Before + */ + displayName: () => LocalizedString + /** + * Latest modification date + */ + shortDesc: () => LocalizedString + /** + * Filter tasks modified on or before this date */ longDesc: () => LocalizedString } } } - list_documents: { - groups: { - /** - * Documents (Selected Documents API) - */ - '0': () => LocalizedString - } - /** - * List Documents - */ - displayName: () => LocalizedString - /** - * Retrieve all documents - */ - shortDesc: () => LocalizedString - /** - * Get a list of all documents in your Craft workspace. This includes document IDs, titles, and their deletion status, providing a complete overview of your document library. - */ - longDesc: () => LocalizedString - options: { - } - } - list_collections: { + update_company: { groups: { /** - * Collections (Selected Documents API) + * Companies */ '0': () => LocalizedString } /** - * List Collections + * Update Company */ displayName: () => LocalizedString /** - * Retrieve all collections + * Update an existing company in CopperCRM */ shortDesc: () => LocalizedString /** - * Get a list of all collections in your Craft workspace. You can optionally filter collections by specific documents using include or exclude modes. + * Update the details of an existing company record in CopperCRM including name, address, contact information, and custom fields. */ longDesc: () => LocalizedString options: { - documentIds: { + company_id: { /** - * Document IDs + * Company */ displayName: () => LocalizedString /** - * Filter collections by documents + * Company to update */ shortDesc: () => LocalizedString /** - * The document IDs to filter. If not provided, collections in all documents will be listed. + * Select the company you want to update */ longDesc: () => LocalizedString } - documentFilterMode: { + name: { /** - * Document Filter Mode + * Company Name */ displayName: () => LocalizedString /** - * How to filter by documents + * Updated company name */ shortDesc: () => LocalizedString /** - * Choose whether to include or exclude collections based on the provided document IDs. Select "Include" to only show collections from the specified documents, or "Exclude" to hide collections from those documents. + * The new name for the company */ longDesc: () => LocalizedString } - } - } - create_collection_item: { - groups: { - /** - * Collections (Selected Documents API) - */ - '0': () => LocalizedString - } - /** - * Create Collection Item - */ - displayName: () => LocalizedString - /** - * Add a new item to a collection - */ - shortDesc: () => LocalizedString - /** - * Create a new item in a Craft collection with a title and optional custom properties. This allows you to programmatically add entries to your structured collections. - */ - longDesc: () => LocalizedString - options: { - collectionId: { + address: { /** - * Collection + * Address */ displayName: () => LocalizedString /** - * The collection to add the item to + * Updated address */ shortDesc: () => LocalizedString /** - * Select the Craft collection where you want to create the new item. The collection must exist before you can add items to it. + * The updated physical address of the company */ longDesc: () => LocalizedString + type: { + fields: { + street: { + /** + * Street + */ + displayName: () => LocalizedString + /** + * Street address + */ + shortDesc: () => LocalizedString + /** + * The street address of the company + */ + longDesc: () => LocalizedString + } + city: { + /** + * City + */ + displayName: () => LocalizedString + /** + * City name + */ + shortDesc: () => LocalizedString + /** + * The city where the company is located + */ + longDesc: () => LocalizedString + } + state: { + /** + * State + */ + displayName: () => LocalizedString + /** + * State or province + */ + shortDesc: () => LocalizedString + /** + * The state or province where the company is located + */ + longDesc: () => LocalizedString + } + postal_code: { + /** + * Postal Code + */ + displayName: () => LocalizedString + /** + * ZIP or postal code + */ + shortDesc: () => LocalizedString + /** + * The postal code or ZIP code of the company address + */ + longDesc: () => LocalizedString + } + country: { + /** + * Country + */ + displayName: () => LocalizedString + /** + * Country name + */ + shortDesc: () => LocalizedString + /** + * The country where the company is located + */ + longDesc: () => LocalizedString + } + } + } } - title: { + assignee_id: { /** - * Title + * Assignee */ displayName: () => LocalizedString /** - * Title of the new collection item + * Updated assignee */ shortDesc: () => LocalizedString /** - * Provide a title for the new collection item. This is the main identifier for the item within the collection. + * The new CopperCRM user to assign to this company */ longDesc: () => LocalizedString } - properties: { + contact_type_id: { /** - * Properties + * Contact Type */ displayName: () => LocalizedString /** - * Custom properties for the item + * Updated contact type */ shortDesc: () => LocalizedString /** - * Add custom properties to the collection item. The available properties are dynamically determined based on the schema of the selected collection. + * The updated type of contact relationship */ longDesc: () => LocalizedString } - } - } - delete_collection_items: { - groups: { - /** - * Collections (Selected Documents API) - */ - '0': () => LocalizedString - } - /** - * Delete Collection Items - */ - displayName: () => LocalizedString - /** - * Remove items from a collection - */ - shortDesc: () => LocalizedString - /** - * Delete one or more items from a Craft collection by providing their IDs. This action permanently removes the specified items from the collection. - */ - longDesc: () => LocalizedString - options: { - collectionId: { + details: { /** - * Collection + * Details */ displayName: () => LocalizedString /** - * The collection containing the items + * Updated notes */ shortDesc: () => LocalizedString /** - * Select the Craft collection that contains the items you want to delete. + * Updated notes, description, or important details */ longDesc: () => LocalizedString } - itemIds: { + email_domain: { /** - * Item IDs + * Email Domain */ displayName: () => LocalizedString /** - * IDs of items to delete + * Updated email domain */ shortDesc: () => LocalizedString /** - * Provide a list of item IDs that you want to remove from the collection. You can select multiple items to delete in a single operation. + * The updated primary email domain */ longDesc: () => LocalizedString } - } - } - update_collection_item: { - groups: { - /** - * Collections (Selected Documents API) - */ - '0': () => LocalizedString - } - /** - * Update Collection Item - */ - displayName: () => LocalizedString - /** - * Modify an existing collection item - */ - shortDesc: () => LocalizedString - /** - * Update the title and properties of an existing item in a Craft collection. You can modify any custom properties that are part of the collection schema. - */ - longDesc: () => LocalizedString - options: { - collectionId: { + phone_numbers: { /** - * Collection + * Phone Numbers */ displayName: () => LocalizedString /** - * The collection containing the item + * Updated phone numbers */ shortDesc: () => LocalizedString /** - * Select the Craft collection that contains the item you want to update. + * Updated list of phone numbers + */ + longDesc: () => LocalizedString + type: { + element_type: { + fields: { + number: { + /** + * Phone Number + */ + displayName: () => LocalizedString + /** + * The phone number + */ + shortDesc: () => LocalizedString + /** + * The phone number in any format + */ + longDesc: () => LocalizedString + } + category: { + /** + * Category + */ + displayName: () => LocalizedString + /** + * Type of phone number + */ + shortDesc: () => LocalizedString + /** + * The category or type of this phone number + */ + longDesc: () => LocalizedString + } + } + } + } + } + primary_contact_id: { + /** + * Primary Contact + */ + displayName: () => LocalizedString + /** + * Updated primary contact + */ + shortDesc: () => LocalizedString + /** + * The new primary contact person for this company */ longDesc: () => LocalizedString } - itemId: { + socials: { /** - * Item + * Social Media */ displayName: () => LocalizedString /** - * The item to update + * Updated social profiles */ shortDesc: () => LocalizedString /** - * Select the specific collection item you want to modify. The available items are dynamically populated based on the selected collection. + * Updated list of social media profiles + */ + longDesc: () => LocalizedString + type: { + element_type: { + fields: { + url: { + /** + * URL + */ + displayName: () => LocalizedString + /** + * Social media profile URL + */ + shortDesc: () => LocalizedString + /** + * The full URL to the social media profile + */ + longDesc: () => LocalizedString + } + category: { + /** + * Platform + */ + displayName: () => LocalizedString + /** + * Social media platform + */ + shortDesc: () => LocalizedString + /** + * The social media platform + */ + longDesc: () => LocalizedString + } + } + } + } + } + tags: { + /** + * Tags + */ + displayName: () => LocalizedString + /** + * Updated tags + */ + shortDesc: () => LocalizedString + /** + * Updated tags to categorize and organize the company */ longDesc: () => LocalizedString } - title: { + websites: { /** - * Title + * Websites */ displayName: () => LocalizedString /** - * New title for the item + * Updated websites */ shortDesc: () => LocalizedString /** - * Provide a new title for the collection item. Leave empty to keep the existing title unchanged. + * Updated list of websites */ longDesc: () => LocalizedString + type: { + element_type: { + fields: { + url: { + /** + * URL + */ + displayName: () => LocalizedString + /** + * Website URL + */ + shortDesc: () => LocalizedString + /** + * The full URL of the website + */ + longDesc: () => LocalizedString + } + category: { + /** + * Category + */ + displayName: () => LocalizedString + /** + * Type of website + */ + shortDesc: () => LocalizedString + /** + * The category or purpose of this website + */ + longDesc: () => LocalizedString + } + } + } + } } - properties: { + custom_fields: { /** - * Properties + * Custom Fields */ displayName: () => LocalizedString /** - * Updated properties for the item + * Updated custom fields */ shortDesc: () => LocalizedString /** - * Update the custom properties of the collection item. Only the properties you specify will be updated; others will remain unchanged. + * Updated custom field values */ longDesc: () => LocalizedString } } } - list_collection_items: { + update_lead: { groups: { /** - * Collections (Selected Documents API) + * Leads */ '0': () => LocalizedString } /** - * List Collection Items + * Update Lead */ displayName: () => LocalizedString /** - * Retrieve all items in a collection + * Update an existing lead in CopperCRM */ shortDesc: () => LocalizedString /** - * Get a list of all items in a specific Craft collection, including their IDs, titles, properties, and content blocks. You can control the depth of nested content retrieval. + * Update the details of an existing lead record in CopperCRM including contact information, status, and custom fields. */ longDesc: () => LocalizedString options: { - collectionId: { + lead_id: { /** - * Collection + * Lead */ displayName: () => LocalizedString /** - * The collection to retrieve items from + * Lead to update */ shortDesc: () => LocalizedString /** - * Select the Craft collection whose items you want to list. All items in the collection will be returned. + * Select the lead you want to update */ longDesc: () => LocalizedString } - maxDepth: { + first_name: { /** - * Maximum Depth + * First Name */ displayName: () => LocalizedString /** - * Maximum depth for nested content + * Updated first name */ shortDesc: () => LocalizedString /** - * The maximum depth of nested content to fetch for each collection item. Default is -1 (all descendants). With a depth of 0, only the item properties are fetched without nested content. + * The updated first name of the lead */ longDesc: () => LocalizedString } - } - } - list_blocks: { - groups: { - /** - * Blocks (Selected Documents API) - */ - '0': () => LocalizedString - } - /** - * List Blocks - */ - displayName: () => LocalizedString - /** - * Retrieve blocks from a document - */ - shortDesc: () => LocalizedString - /** - * Fetch all blocks from a specific Craft document or page. This allows you to access the structured content of your documents, including nested blocks, with control over depth and metadata. - */ - longDesc: () => LocalizedString - options: { - id: { + last_name: { /** - * Document/Page ID + * Last Name */ displayName: () => LocalizedString /** - * The document or page to retrieve blocks from + * Updated last name */ shortDesc: () => LocalizedString /** - * The ID of the page block to fetch. Required for multi-document operations. Accepts IDs for documents, pages and blocks. + * The updated last name of the lead */ longDesc: () => LocalizedString } - maxDepth: { + middle_name: { /** - * Maximum Depth + * Middle Name */ displayName: () => LocalizedString /** - * Maximum depth for nested blocks + * Updated middle name */ shortDesc: () => LocalizedString /** - * Specify the maximum depth for retrieving nested blocks. Use -1 for unlimited depth, or provide a positive number to limit the nesting level. + * The updated middle name or initial */ longDesc: () => LocalizedString } - fetchMetadata: { + suffix: { /** - * Fetch Metadata + * Suffix */ displayName: () => LocalizedString /** - * Include metadata in the response + * Updated suffix */ shortDesc: () => LocalizedString /** - * Whether to fetch metadata (comments, createdBy, lastModifiedBy, lastModifiedAt, createdAt) for the blocks. + * Updated name suffix */ longDesc: () => LocalizedString } - getMarkdownString: { + assignee_id: { /** - * Get Markdown String + * Assignee */ displayName: () => LocalizedString /** - * Retrieve the markdown string representation of blocks + * Updated assignee */ shortDesc: () => LocalizedString /** - * Whether to retrieve the markdown string representation of the blocks. + * The new CopperCRM user to assign to this lead */ longDesc: () => LocalizedString } - } - } - insert_block: { - groups: { - /** - * Blocks (Selected Documents API) - */ - '0': () => LocalizedString - } - /** - * Insert Block - */ - displayName: () => LocalizedString - /** - * Add a new block to a document - */ - shortDesc: () => LocalizedString - /** - * Insert a new block with markdown content into a Craft document. You can specify whether to insert the block at the start or end of the target page. - */ - longDesc: () => LocalizedString - options: { - markdown: { + company_name: { /** - * Markdown Content + * Company Name */ displayName: () => LocalizedString /** - * The markdown content for the block + * Updated company name */ shortDesc: () => LocalizedString /** - * - The Markdown content to insert. Separate each paragraph and heading with two newlines. Separate each list item with one newline. The first item in any list cannot be empty. Craft-specific tokens are HTML tags.: - - - - - for callouts. Can be used to wrap multiple paragraphs/images/etc. - - - for caption text style. Can be used to wrap a paragraph. - - - for highlights - color is optional. Can only be used inline. - + * The updated company name where the lead works */ longDesc: () => LocalizedString } - position: { + tags: { /** - * Position + * Tags */ displayName: () => LocalizedString /** - * Where to insert the block + * Updated tags */ shortDesc: () => LocalizedString /** - * Specify the position where the block should be inserted within the document. + * Updated tags to categorize and organize the lead */ longDesc: () => LocalizedString - type: { - fields: { - position: { - /** - * Insert Position - */ - displayName: () => LocalizedString - /** - * Insert at start or end - */ - shortDesc: () => LocalizedString - /** - * Choose whether to insert the block at the start or end of the target page. - */ - longDesc: () => LocalizedString - } - pageId: { - /** - * Page ID - */ - displayName: () => LocalizedString - /** - * The page to insert into - */ - shortDesc: () => LocalizedString - /** - * ID of the block to insert children into. Required for multi-document operations. Only page, text, and card type blocks can be parent blocks. Text blocks are auto-converted to page type when they receive children. Collection items are implicitly pages. - */ - longDesc: () => LocalizedString - } - } - } } - } - } - delete_blocks: { - groups: { - /** - * Blocks (Selected Documents API) - */ - '0': () => LocalizedString - } - /** - * Delete Blocks - */ - displayName: () => LocalizedString - /** - * Remove blocks from a document - */ - shortDesc: () => LocalizedString - /** - * Delete one or more blocks from a Craft document by providing their block IDs. This action permanently removes the specified blocks. - */ - longDesc: () => LocalizedString - options: { - blockIds: { + title: { /** - * Block IDs + * Title */ displayName: () => LocalizedString /** - * IDs of blocks to delete + * Updated job title */ shortDesc: () => LocalizedString /** - * Provide a list of block IDs that you want to remove from the document. You can delete multiple blocks in a single operation. + * The updated job title or position */ longDesc: () => LocalizedString } - } - } - list_tasks: { - groups: { - /** - * Tasks (Daily Tasks & Notes API) - */ - '0': () => LocalizedString - } - /** - * List Tasks - */ - displayName: () => LocalizedString - /** - * Retrieve tasks based on scope - */ - shortDesc: () => LocalizedString - /** - * Get a list of tasks from your Craft workspace filtered by scope. You can retrieve active tasks, upcoming tasks, inbox tasks, or tasks from your logbook. - */ - longDesc: () => LocalizedString - options: { - scope: { + details: { /** - * Scope + * Details */ displayName: () => LocalizedString /** - * Filter tasks by scope + * Updated notes */ shortDesc: () => LocalizedString /** - * Filter tasks by scope: - 'active': Active tasks from inbox and other documents (tasks due before now that are not completed/cancelled) - 'upcoming': Upcoming tasks from inbox and other documents (tasks scheduled after now) - 'inbox': Only tasks in the task inbox - 'logbook': Only tasks in the task logbook (completed and cancelled tasks) + * Updated notes, description, or important details */ longDesc: () => LocalizedString } - } - } - create_task: { - groups: { - /** - * Tasks (Daily Tasks & Notes API) - */ - '0': () => LocalizedString - } - /** - * Create Task - */ - displayName: () => LocalizedString - /** - * Add a new task - */ - shortDesc: () => LocalizedString - /** - * Create a new task in Craft with markdown content, optional task information (state, schedule, deadline), and a location (inbox or daily note). - */ - longDesc: () => LocalizedString - options: { - markdown: { + websites: { /** - * Task Content + * Websites */ displayName: () => LocalizedString /** - * The markdown content for the task + * Updated websites */ shortDesc: () => LocalizedString /** - * The task content in markdown format. This will be the task's text. + * Updated list of associated websites + */ + longDesc: () => LocalizedString + type: { + element_type: { + fields: { + url: { + /** + * URL + */ + displayName: () => LocalizedString + /** + * Website URL + */ + shortDesc: () => LocalizedString + /** + * The full URL of the website + */ + longDesc: () => LocalizedString + } + category: { + /** + * Category + */ + displayName: () => LocalizedString + /** + * Type of website + */ + shortDesc: () => LocalizedString + /** + * The category or purpose of this website + */ + longDesc: () => LocalizedString + } + } + } + } + } + socials: { + /** + * Social Media + */ + displayName: () => LocalizedString + /** + * Updated social profiles + */ + shortDesc: () => LocalizedString + /** + * Updated list of social media profiles */ longDesc: () => LocalizedString + type: { + element_type: { + fields: { + url: { + /** + * URL + */ + displayName: () => LocalizedString + /** + * Social media profile URL + */ + shortDesc: () => LocalizedString + /** + * The full URL to the social media profile + */ + longDesc: () => LocalizedString + } + category: { + /** + * Platform + */ + displayName: () => LocalizedString + /** + * Social media platform + */ + shortDesc: () => LocalizedString + /** + * The social media platform + */ + longDesc: () => LocalizedString + } + } + } + } } - taskInfo: { + email: { /** - * Task Information + * Email */ displayName: () => LocalizedString /** - * Additional task details + * Updated email */ shortDesc: () => LocalizedString /** - * Optional task metadata including state, schedule date, and deadline date + * The updated email address */ longDesc: () => LocalizedString type: { fields: { - state: { - /** - * State - */ - displayName: () => LocalizedString - /** - * Current state of the task - */ - shortDesc: () => LocalizedString - /** - * Set the initial state of the task: To Do (pending), Done (completed), or Canceled (abandoned). - */ - longDesc: () => LocalizedString - } - scheduleDate: { + email: { /** - * Schedule Date + * Email Address */ displayName: () => LocalizedString /** - * When the task is scheduled + * The email address */ shortDesc: () => LocalizedString /** - * Planned execution date of the task. Accepts ISO format YYYY-MM-DD or relative dates: 'today', 'tomorrow', 'yesterday' + * The email address of the lead */ longDesc: () => LocalizedString } - deadlineDate: { + category: { /** - * Deadline Date + * Category */ displayName: () => LocalizedString /** - * When the task is due + * Type of email */ shortDesc: () => LocalizedString /** - * Due date of the task. Accepts ISO format YYYY-MM-DD or relative dates: 'today', 'tomorrow', 'yesterday' + * The category or type of this email */ longDesc: () => LocalizedString } } } } - location: { + phone_numbers: { /** - * Location + * Phone Numbers */ displayName: () => LocalizedString /** - * Where to create the task + * Updated phone numbers */ shortDesc: () => LocalizedString /** - * Where to create the task: in the task inbox or a specific daily note + * Updated list of phone numbers */ longDesc: () => LocalizedString type: { - fields: { - type: { - /** - * Location Type - */ + element_type: { + fields: { + number: { + /** + * Phone Number + */ + displayName: () => LocalizedString + /** + * The phone number + */ + shortDesc: () => LocalizedString + /** + * The phone number in any format + */ + longDesc: () => LocalizedString + } + category: { + /** + * Category + */ + displayName: () => LocalizedString + /** + * Type of phone number + */ + shortDesc: () => LocalizedString + /** + * The category or type of this phone number + */ + longDesc: () => LocalizedString + } + } + } + } + } + address: { + /** + * Address + */ + displayName: () => LocalizedString + /** + * Updated address + */ + shortDesc: () => LocalizedString + /** + * The updated physical address + */ + longDesc: () => LocalizedString + type: { + fields: { + street: { + /** + * Street + */ displayName: () => LocalizedString /** - * Type of location + * Street address */ shortDesc: () => LocalizedString /** - * Choose whether to create the task in your inbox (for unscheduled tasks) or in a daily note (for a specific date). + * The street address */ longDesc: () => LocalizedString } - date: { + city: { /** - * Date + * City */ displayName: () => LocalizedString /** - * Date for daily note + * City name */ shortDesc: () => LocalizedString /** - * The daily note date where the task is located. Accepts ISO format YYYY-MM-DD or relative dates: 'today', 'tomorrow', 'yesterday'. Defaults to 'today' if not provided. + * The city + */ + longDesc: () => LocalizedString + } + state: { + /** + * State + */ + displayName: () => LocalizedString + /** + * State or province + */ + shortDesc: () => LocalizedString + /** + * The state or province + */ + longDesc: () => LocalizedString + } + postal_code: { + /** + * Postal Code + */ + displayName: () => LocalizedString + /** + * ZIP or postal code + */ + shortDesc: () => LocalizedString + /** + * The postal code or ZIP code + */ + longDesc: () => LocalizedString + } + country: { + /** + * Country + */ + displayName: () => LocalizedString + /** + * Country name + */ + shortDesc: () => LocalizedString + /** + * The country */ longDesc: () => LocalizedString } } } } + customer_source_id: { + /** + * Customer Source + */ + displayName: () => LocalizedString + /** + * Updated source + */ + shortDesc: () => LocalizedString + /** + * The updated source or channel + */ + longDesc: () => LocalizedString + } + custom_fields: { + /** + * Custom Fields + */ + displayName: () => LocalizedString + /** + * Updated custom fields + */ + shortDesc: () => LocalizedString + /** + * Updated custom field values + */ + longDesc: () => LocalizedString + } } } - update_task: { + update_opportunity: { groups: { /** - * Tasks (Daily Tasks & Notes API) + * Opportunities */ '0': () => LocalizedString } /** - * Update Task + * Update Opportunity */ displayName: () => LocalizedString /** - * Modify an existing task + * Update an existing opportunity in CopperCRM */ shortDesc: () => LocalizedString /** - * Update an existing task in Craft by changing its markdown content, state, schedule date, or deadline date. + * Update the details of an existing sales opportunity in CopperCRM including value, stage, status, and custom fields. */ longDesc: () => LocalizedString options: { - id: { + opportunity_id: { /** - * Task + * Opportunity */ displayName: () => LocalizedString /** - * The task to update + * Opportunity to update */ shortDesc: () => LocalizedString /** - * Select the task you want to modify. Only active tasks are available for selection. + * Select the opportunity you want to update */ longDesc: () => LocalizedString } - markdown: { + name: { /** - * Task Content + * Opportunity Name */ displayName: () => LocalizedString /** - * Updated markdown content + * Updated name */ shortDesc: () => LocalizedString /** - * Provide new markdown-formatted content for the task. Leave empty to keep the existing content. + * The updated name for the opportunity */ longDesc: () => LocalizedString } - state: { + primary_contact_id: { /** - * State + * Primary Contact */ displayName: () => LocalizedString /** - * Updated task state + * Updated primary contact */ shortDesc: () => LocalizedString /** - * Change the state of the task to To Do, Done, or Canceled. Leave empty to keep the current state. + * The updated primary contact person */ longDesc: () => LocalizedString } - scheduleDate: { + assignee_id: { /** - * Schedule Date + * Assignee */ displayName: () => LocalizedString /** - * Updated schedule date + * Updated assignee */ shortDesc: () => LocalizedString /** - * Updated planned execution date. Accepts ISO format YYYY-MM-DD or relative dates: 'today', 'tomorrow', 'yesterday'. Leave empty to keep the existing schedule. + * The new CopperCRM user to assign to this opportunity */ longDesc: () => LocalizedString } - deadlineDate: { + close_date: { /** - * Deadline Date + * Close Date */ displayName: () => LocalizedString /** - * Updated deadline date + * Updated close date */ shortDesc: () => LocalizedString /** - * Updated due date of the task. Accepts ISO format YYYY-MM-DD or relative dates: 'today', 'tomorrow', 'yesterday'. Leave empty to keep the existing deadline. + * The updated expected close date */ longDesc: () => LocalizedString } - } - } - delete_tasks: { - groups: { - /** - * Tasks (Daily Tasks & Notes API) - */ - '0': () => LocalizedString - } - /** - * Delete Tasks - */ - displayName: () => LocalizedString - /** - * Remove tasks - */ - shortDesc: () => LocalizedString - /** - * Delete one or more tasks from your Craft workspace by providing their task IDs. This action permanently removes the specified tasks. - */ - longDesc: () => LocalizedString - options: { - ids: { + company_id: { /** - * Task IDs + * Company */ displayName: () => LocalizedString /** - * IDs of tasks to delete + * Updated company */ shortDesc: () => LocalizedString /** - * Provide a list of task IDs that you want to remove. You can delete multiple tasks in a single operation. + * The updated associated company */ longDesc: () => LocalizedString } - } - } - } - } - Monday: { - /** - * Monday.com - */ - displayName: () => LocalizedString - groups: { - /** - * Project & Task Management - */ - '0': () => LocalizedString - } - /** - * Connect to Monday.com to automate work management with boards, items, columns, and updates. - */ - shortDesc: () => LocalizedString - /** - * The Monday.com integration provides comprehensive access to your work operating system. Create and manage boards, items, groups, and columns. Track work progress, update item statuses, manage column values, and monitor board changes. Automate workflows by creating items, updating records, moving items between groups, and receiving notifications when boards or items are modified. Perfect for project management, task tracking, team collaboration, and workflow automation across your organization. - */ - longDesc: () => LocalizedString - actions: { - archive_record: { - /** - * Archive Record - */ - displayName: () => LocalizedString - /** - * Move a record to the archive. - */ - shortDesc: () => LocalizedString - /** - * This action allows you to archive a specific record (item) on a Monday.com board, helping you keep your workspace organized by removing completed or inactive items from view without permanently deleting them. - */ - longDesc: () => LocalizedString - options: { - board_id: { + customer_source_id: { /** - * Board ID + * Customer Source */ displayName: () => LocalizedString /** - * The ID of the board containing the record to archive. + * Updated source */ shortDesc: () => LocalizedString /** - * The unique identifier of the board containing the record you want to archive. + * The updated source or channel */ longDesc: () => LocalizedString } - record_id: { + details: { /** - * Record ID + * Details */ displayName: () => LocalizedString /** - * The ID of the record to archive. + * Updated notes */ shortDesc: () => LocalizedString /** - * The unique identifier of the record you want to archive. + * Updated notes, description, or important details */ longDesc: () => LocalizedString } - } - } - clear_column_value: { - /** - * Clear Column Value - */ - displayName: () => LocalizedString - /** - * Remove data from a column in a record. - */ - shortDesc: () => LocalizedString - /** - * Use this action to clear the content of a specified column within a record, resetting its value to empty. - */ - longDesc: () => LocalizedString - options: { - board_id: { + loss_reason_id: { /** - * Board ID + * Loss Reason */ displayName: () => LocalizedString /** - * The ID of the board containing the record. + * Updated loss reason */ shortDesc: () => LocalizedString /** - * The unique identifier of the board containing the record you want to modify. + * The updated reason for losing */ longDesc: () => LocalizedString } - record_id: { + monetary_value: { /** - * Record ID + * Monetary Value */ displayName: () => LocalizedString /** - * The ID of the record to modify. + * Updated value */ shortDesc: () => LocalizedString /** - * The unique identifier of the record you want to modify. + * The updated monetary value */ longDesc: () => LocalizedString } - column_id: { + pipeline_id: { /** - * Column ID + * Pipeline */ displayName: () => LocalizedString /** - * The ID of the column to clear. + * Updated pipeline */ shortDesc: () => LocalizedString /** - * The unique identifier of the column you want to clear. + * The updated sales pipeline */ longDesc: () => LocalizedString } - } - } - create_record: { - /** - * Create Record - */ - displayName: () => LocalizedString - /** - * Add a new record to a board. - */ - shortDesc: () => LocalizedString - /** - * This action enables you to create a new record (item) in a specified board, allowing you to define initial column values upon creation. - */ - longDesc: () => LocalizedString - options: { - board_id: { + pipeline_stage_id: { /** - * Board ID + * Pipeline Stage */ displayName: () => LocalizedString /** - * The ID of the board where the record will be created. + * Updated stage */ shortDesc: () => LocalizedString /** - * The unique identifier of the board where you want to create a new record. + * The updated current stage */ longDesc: () => LocalizedString } - group_id: { + priority: { /** - * Group ID + * Priority */ displayName: () => LocalizedString /** - * The ID of the group where the record will be created. + * Updated priority */ shortDesc: () => LocalizedString /** - * The unique identifier of the group where you want to create a new record. + * The updated priority level */ longDesc: () => LocalizedString } - item_name: { + status: { /** - * Item Name + * Status */ displayName: () => LocalizedString /** - * The name of the new record. + * Updated status */ shortDesc: () => LocalizedString /** - * The name of the new record you want to create. + * The updated opportunity status */ longDesc: () => LocalizedString } - column_values: { + tags: { /** - * Column Values + * Tags */ displayName: () => LocalizedString /** - * The values to set for the record columns. + * Updated tags */ shortDesc: () => LocalizedString /** - * The values to set for the columns of the record you want to create. + * Updated tags to categorize and organize the opportunity */ longDesc: () => LocalizedString } - } - } - custom_action: { - /** - * Custom Action - */ - displayName: () => LocalizedString - /** - * Perform a user-defined operation. - */ - shortDesc: () => LocalizedString - /** - * This action allows you to execute a custom operation defined by your integration or automation setup, providing flexibility for various tasks. - */ - longDesc: () => LocalizedString - options: { - payload: { + win_probability: { /** - * Payload + * Win Probability */ displayName: () => LocalizedString /** - * Payload for your custom action + * Updated win probability */ shortDesc: () => LocalizedString /** - * The payload for your custom action + * The updated estimated probability of winning */ longDesc: () => LocalizedString } - actionName: { + custom_fields: { /** - * Action Name + * Custom Fields */ displayName: () => LocalizedString /** - * The name of the custom action to execute + * Updated custom fields */ shortDesc: () => LocalizedString /** - * The name of the custom action to execute + * Updated custom field values */ longDesc: () => LocalizedString } } } - delete_record: { + update_person: { + groups: { + /** + * People + */ + '0': () => LocalizedString + } /** - * Delete Record + * Update Person */ displayName: () => LocalizedString /** - * Permanently remove a record. + * Update an existing person contact in CopperCRM */ shortDesc: () => LocalizedString /** - * Use this action to permanently delete a specific record from a board, removing all associated data. + * Update the details of an existing person contact in CopperCRM including contact information, company, and custom fields. */ longDesc: () => LocalizedString options: { - board_id: { + person_id: { /** - * Board ID + * Person */ displayName: () => LocalizedString /** - * The ID of the board containing the record to delete. + * Person to update */ shortDesc: () => LocalizedString /** - * The unique identifier of the board containing the record you want to delete. + * Select the person you want to update */ longDesc: () => LocalizedString } - record_id: { + name: { /** - * Record ID + * Name */ displayName: () => LocalizedString /** - * The ID of the record to delete. + * Updated full name */ shortDesc: () => LocalizedString /** - * The unique identifier of the record you want to delete. + * The updated full name */ longDesc: () => LocalizedString } - } - } - get_record: { - /** - * Get Record - */ - displayName: () => LocalizedString - /** - * Retrieve details of a specific record. - */ - shortDesc: () => LocalizedString - /** - * This action fetches the details of a specified record, including all column values and associated metadata. - */ - longDesc: () => LocalizedString - options: { - board_id: { + prefix: { /** - * Board ID + * Prefix */ displayName: () => LocalizedString /** - * The ID of the board containing the record to get. + * Updated prefix */ shortDesc: () => LocalizedString /** - * The unique identifier of the board containing the record you want to get. + * Updated name prefix */ longDesc: () => LocalizedString } - record_id: { + first_name: { /** - * Record ID + * First Name */ displayName: () => LocalizedString /** - * The ID of the record to get. + * Updated first name */ shortDesc: () => LocalizedString /** - * The unique identifier of the record you want to get. + * The updated first name */ longDesc: () => LocalizedString } - } - } - move_record: { - /** - * Move Record - */ - displayName: () => LocalizedString - /** - * Transfer a record to another group or board. - */ - shortDesc: () => LocalizedString - /** - * Use this action to move a record from its current group or board to another specified group or board, maintaining its data and history. - */ - longDesc: () => LocalizedString - options: { - board_id: { + middle_name: { /** - * Board ID + * Middle Name */ displayName: () => LocalizedString /** - * The ID of the board containing the record to move. + * Updated middle name */ shortDesc: () => LocalizedString /** - * The unique identifier of the board containing the record you want to move. + * The updated middle name or initial */ longDesc: () => LocalizedString } - record_id: { + last_name: { /** - * Record ID + * Last Name */ displayName: () => LocalizedString /** - * The ID of the record to move. + * Updated last name */ shortDesc: () => LocalizedString /** - * The unique identifier of the record you want to move. + * The updated last name */ longDesc: () => LocalizedString } - destination_group_id: { + suffix: { /** - * Destination Group ID + * Suffix */ displayName: () => LocalizedString /** - * The ID of the group to move the record to. + * Updated suffix */ shortDesc: () => LocalizedString /** - * The unique identifier of the group you want to move the record to. + * Updated name suffix */ longDesc: () => LocalizedString } - } - } - search_records: { - /** - * Search Records - */ - displayName: () => LocalizedString - /** - * Find records matching specific criteria. - */ - shortDesc: () => LocalizedString - /** - * This action allows you to search for records that meet defined criteria, such as specific column values or statuses, and returns a list of matching records. - */ - longDesc: () => LocalizedString - options: { - board_id: { + street: { /** - * Board ID + * Street */ displayName: () => LocalizedString /** - * The ID of the board to search for records in. + * Updated street */ shortDesc: () => LocalizedString /** - * The unique identifier of the board containing the records you want to search for. + * The updated street address */ longDesc: () => LocalizedString } - query_text: { + city: { /** - * Query + * City */ displayName: () => LocalizedString /** - * The search query to use. + * Updated city */ shortDesc: () => LocalizedString /** - * The search query to use to find records. + * The updated city */ longDesc: () => LocalizedString } - columnId: { + state: { /** - * Column ID + * State */ displayName: () => LocalizedString /** - * The ID of the column to search in. + * Updated state */ shortDesc: () => LocalizedString /** - * The unique identifier of the column to search in. + * The updated state or province */ longDesc: () => LocalizedString } - limit: { + postal_code: { /** - * Limit + * Postal Code */ displayName: () => LocalizedString /** - * The maximum number of records to return. + * Updated postal code */ shortDesc: () => LocalizedString /** - * The maximum number of records to return. + * The updated postal code or ZIP code */ longDesc: () => LocalizedString } - cursor: { + country: { /** - * Cursor + * Country */ displayName: () => LocalizedString /** - * The cursor to use for pagination. + * Updated country */ shortDesc: () => LocalizedString /** - * The cursor to use for pagination. + * The updated country */ longDesc: () => LocalizedString } - } - } - update_record: { - /** - * Update Record - */ - displayName: () => LocalizedString - /** - * Modify the values of a record's columns. - */ - shortDesc: () => LocalizedString - /** - * Use this action to update one or more column values of a specific record, allowing you to change its data as needed. - */ - longDesc: () => LocalizedString - options: { - board_id: { + assignee_id: { /** - * Board ID + * Assignee */ displayName: () => LocalizedString /** - * The ID of the board containing the record to update. + * Updated assignee */ shortDesc: () => LocalizedString /** - * The unique identifier of the board containing the record you want to update. + * The new CopperCRM user to assign to this contact */ longDesc: () => LocalizedString } - record_id: { + company_id: { /** - * Record ID + * Company */ displayName: () => LocalizedString /** - * The ID of the record to update. + * Updated company */ shortDesc: () => LocalizedString /** - * The unique identifier of the record you want to update. + * The updated company where this person works */ longDesc: () => LocalizedString } - column_values: { + contact_type_id: { /** - * Column Values + * Contact Type */ displayName: () => LocalizedString /** - * The values to set for the record columns. + * Updated contact type */ shortDesc: () => LocalizedString /** - * The values to set for the columns of the record you want to update. + * The updated type of contact relationship */ longDesc: () => LocalizedString } - } - } - } - triggers: { - new_record: { - /** - * New Record - */ - displayName: () => LocalizedString - /** - * Triggered when a new item is created. - */ - shortDesc: () => LocalizedString - /** - * Triggered when a new record is created. - */ - longDesc: () => LocalizedString - options: { - board_id: { + details: { /** - * Board ID + * Details */ displayName: () => LocalizedString /** - * The ID of the board to check for new records. + * Updated notes */ shortDesc: () => LocalizedString /** - * The unique identifier of the board that should be checked for new records. + * Updated notes, description, or important details */ longDesc: () => LocalizedString } - group_id: { + emails: { /** - * Group ID + * Email Addresses */ displayName: () => LocalizedString /** - * The ID of the group to check for new records. + * Updated emails */ shortDesc: () => LocalizedString /** - * The unique identifier of the group you want to check for new records in. + * Updated list of email addresses */ longDesc: () => LocalizedString + type: { + element_type: { + fields: { + email: { + /** + * Email Address + */ + displayName: () => LocalizedString + /** + * The email address + */ + shortDesc: () => LocalizedString + /** + * Email address + */ + longDesc: () => LocalizedString + } + category: { + /** + * Category + */ + displayName: () => LocalizedString + /** + * Type of email + */ + shortDesc: () => LocalizedString + /** + * The category or type of this email + */ + longDesc: () => LocalizedString + } + } + } + } } - } - } - new_record_moved_to_group: { - /** - * New Record Moved To Group - */ - displayName: () => LocalizedString - /** - * Triggered when an item was moved to a group. - */ - shortDesc: () => LocalizedString - /** - * Triggered when a new record is created. - */ - longDesc: () => LocalizedString - options: { - board_id: { + phone_numbers: { /** - * Board ID + * Phone Numbers */ displayName: () => LocalizedString /** - * The ID of the board to check for new records. + * Updated phone numbers */ shortDesc: () => LocalizedString /** - * The unique identifier of the board that should be checked for new records. + * Updated list of phone numbers */ longDesc: () => LocalizedString + type: { + element_type: { + fields: { + number: { + /** + * Phone Number + */ + displayName: () => LocalizedString + /** + * The phone number + */ + shortDesc: () => LocalizedString + /** + * Phone number + */ + longDesc: () => LocalizedString + } + category: { + /** + * Category + */ + displayName: () => LocalizedString + /** + * Type of phone number + */ + shortDesc: () => LocalizedString + /** + * The category or type of this phone number + */ + longDesc: () => LocalizedString + } + } + } + } } - group_id: { + socials: { /** - * Group ID + * Social Media */ displayName: () => LocalizedString /** - * The ID of the group to check for new records. + * Updated social profiles */ shortDesc: () => LocalizedString /** - * The unique identifier of the group you want to check for new records in. + * Updated list of social media profiles */ longDesc: () => LocalizedString + type: { + element_type: { + fields: { + url: { + /** + * URL + */ + displayName: () => LocalizedString + /** + * Social profile URL + */ + shortDesc: () => LocalizedString + /** + * Social profile URL + */ + longDesc: () => LocalizedString + } + category: { + /** + * Platform + */ + displayName: () => LocalizedString + /** + * Social media platform + */ + shortDesc: () => LocalizedString + /** + * Social platform + */ + longDesc: () => LocalizedString + } + } + } + } } - } - } - record_column_value_updated: { - /** - * Record Column Value Updated - */ - displayName: () => LocalizedString - /** - * Triggered when a record column value is updated. - */ - shortDesc: () => LocalizedString - /** - * Triggered when a record column value is updated. - */ - longDesc: () => LocalizedString - options: { - board_id: { + tags: { /** - * Board ID + * Tags */ displayName: () => LocalizedString /** - * The ID of the board to check for record field updates. + * Updated tags */ shortDesc: () => LocalizedString /** - * The unique identifier of the board that should be checked for record field updates. + * Updated tags to categorize and organize the person */ longDesc: () => LocalizedString } - column_id: { + title: { /** - * Column ID + * Title */ displayName: () => LocalizedString /** - * The ID of the column to check for new value. + * Updated job title */ shortDesc: () => LocalizedString /** - * The unique identifier of the column that should be checked for new value. + * The updated job title or position */ longDesc: () => LocalizedString } - } - } - updated_record: { - /** - * Updated Record - */ - displayName: () => LocalizedString - /** - * Triggered when an item is updated. - */ - shortDesc: () => LocalizedString - /** - * Triggered when an item on the board is updated. - */ - longDesc: () => LocalizedString - options: { - board_id: { + websites: { /** - * Board ID + * Websites */ displayName: () => LocalizedString /** - * The ID of the board to check for updated records. + * Updated websites */ shortDesc: () => LocalizedString /** - * The unique identifier of the board that should be checked for updated records. + * Updated list of associated websites */ longDesc: () => LocalizedString + type: { + element_type: { + fields: { + url: { + /** + * URL + */ + displayName: () => LocalizedString + /** + * Website URL + */ + shortDesc: () => LocalizedString + /** + * Website URL + */ + longDesc: () => LocalizedString + } + category: { + /** + * Category + */ + displayName: () => LocalizedString + /** + * Type of website + */ + shortDesc: () => LocalizedString + /** + * The category or purpose of this website + */ + longDesc: () => LocalizedString + } + } + } + } } - group_id: { + custom_fields: { /** - * Group ID + * Custom Fields */ displayName: () => LocalizedString /** - * The ID of the group to check for new records. + * Updated custom fields */ shortDesc: () => LocalizedString /** - * The unique identifier of the group you want to check for new records in. + * Updated custom field values */ longDesc: () => LocalizedString } } } - } - expressions: { - '&&': { + update_task: { + groups: { + /** + * Tasks + */ + '0': () => LocalizedString + } /** - * and (&&) + * Update Task */ displayName: () => LocalizedString /** - * Returns True if all arguments are True + * Update an existing task in CopperCRM */ shortDesc: () => LocalizedString /** - * Returns `True` if all arguments are `True` with logic short-circuiting + * Update the details of an existing task in CopperCRM including name, due dates, status, priority, and custom fields. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + task_id: { /** - * Condition + * Task */ displayName: () => LocalizedString /** - * Boolean condition to evaluate + * Task to update */ shortDesc: () => LocalizedString /** - * A boolean expression or condition that evaluates to True or False + * Select the task you want to update */ longDesc: () => LocalizedString } - } - } - '||': { - /** - * or (||) - */ - displayName: () => LocalizedString - /** - * Returns True if any argument is True - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if any argument is `True` with logic short-circuiting - */ - longDesc: () => LocalizedString - args: { - '0': { + name: { /** - * Condition + * Task Name */ displayName: () => LocalizedString /** - * Boolean condition to evaluate + * Updated name */ shortDesc: () => LocalizedString /** - * A boolean expression or condition that evaluates to True or False + * The updated name for the task */ longDesc: () => LocalizedString } - } - } - '==': { - /** - * equal (==) - */ - displayName: () => LocalizedString - /** - * Equality comparison - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field value equals the specified value - */ - longDesc: () => LocalizedString - args: { - '0': { + related_resource: { /** - * Field + * Related Resource */ displayName: () => LocalizedString /** - * Field to compare + * Updated related record */ shortDesc: () => LocalizedString /** - * The field whose value will be compared + * The updated CRM record this task is related to */ longDesc: () => LocalizedString + type: { + fields: { + id: { + /** + * Resource ID + */ + displayName: () => LocalizedString + /** + * ID of the related record + */ + shortDesc: () => LocalizedString + /** + * The ID of the related CRM record + */ + longDesc: () => LocalizedString + } + type: { + /** + * Resource Type + */ + displayName: () => LocalizedString + /** + * Type of related record + */ + shortDesc: () => LocalizedString + /** + * The type of CRM record this task is related to + */ + longDesc: () => LocalizedString + } + } + } } - '1': { + assignee_id: { /** - * Value + * Assignee */ displayName: () => LocalizedString /** - * Value to compare against + * Updated assignee */ shortDesc: () => LocalizedString /** - * The value to compare the field against + * The new CopperCRM user to assign to this task */ longDesc: () => LocalizedString } - } - } - '!=': { - /** - * not equal (!=) - */ - displayName: () => LocalizedString - /** - * Inequality comparison - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field value does not equal the specified value - */ - longDesc: () => LocalizedString - args: { - '0': { + due_date: { /** - * Field + * Due Date */ displayName: () => LocalizedString /** - * Field to compare + * Updated due date */ shortDesc: () => LocalizedString /** - * The field whose value will be compared + * The updated date when this task should be completed */ longDesc: () => LocalizedString } - '1': { + reminder_date: { /** - * Value + * Reminder Date */ displayName: () => LocalizedString /** - * Value to compare against + * Updated reminder date */ shortDesc: () => LocalizedString /** - * The value to compare the field against + * The updated date when a reminder should be sent */ longDesc: () => LocalizedString } - } - } - '>': { - /** - * higher than (>) - */ - displayName: () => LocalizedString - /** - * Greater than comparison - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field value is greater than the specified value - */ - longDesc: () => LocalizedString - args: { - '0': { + priority: { /** - * Field + * Priority */ displayName: () => LocalizedString /** - * Field to compare + * Updated priority */ shortDesc: () => LocalizedString /** - * The field whose value will be compared + * The updated priority level */ longDesc: () => LocalizedString } - '1': { + status: { /** - * Value + * Status */ displayName: () => LocalizedString /** - * Value to compare against + * Updated status */ shortDesc: () => LocalizedString /** - * The value to compare the field against + * The updated task status */ longDesc: () => LocalizedString } - } - } - '>=': { - /** - * higher than or equal (>=) - */ - displayName: () => LocalizedString - /** - * Greater than or equal comparison - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field value is greater than or equal to the specified value - */ - longDesc: () => LocalizedString - args: { - '0': { + details: { /** - * Field + * Details */ displayName: () => LocalizedString /** - * Field to compare + * Updated description */ shortDesc: () => LocalizedString /** - * The field whose value will be compared + * Updated details or description of what needs to be done */ longDesc: () => LocalizedString } - '1': { + tags: { /** - * Value + * Tags */ displayName: () => LocalizedString /** - * Value to compare against + * Updated tags */ shortDesc: () => LocalizedString /** - * The value to compare the field against + * Updated tags to categorize and organize the task + */ + longDesc: () => LocalizedString + } + custom_fields: { + /** + * Custom Fields + */ + displayName: () => LocalizedString + /** + * Updated custom fields + */ + shortDesc: () => LocalizedString + /** + * Updated custom field values */ longDesc: () => LocalizedString } } } - '<': { + } + triggers: { + new_company: { /** - * lower than (<) + * New Company */ displayName: () => LocalizedString /** - * Less than comparison + * Triggered when a new company is created */ shortDesc: () => LocalizedString /** - * Returns `True` if the field value is less than the specified value + * Triggers when a new company is created in CopperCRM. You can filter which companies trigger this event using various criteria like assignee, location, tags, and more. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + ids: { /** - * Field + * Company IDs */ displayName: () => LocalizedString /** - * Field to compare + * Specific companies to watch */ shortDesc: () => LocalizedString /** - * The field whose value will be compared + * Only trigger for these specific company IDs */ longDesc: () => LocalizedString } - '1': { + page_number: { /** - * Value + * Page Number */ displayName: () => LocalizedString /** - * Value to compare against + * Which page of results */ shortDesc: () => LocalizedString /** - * The value to compare the field against + * The page number of results to retrieve for pagination */ longDesc: () => LocalizedString } - } - } - '<=': { - /** - * lower than or equal (<=) - */ - displayName: () => LocalizedString - /** - * Less than or equal comparison - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field value is less than or equal to the specified value - */ - longDesc: () => LocalizedString - args: { - '0': { + page_size: { /** - * Field + * Page Size */ displayName: () => LocalizedString /** - * Field to compare + * Results per page */ shortDesc: () => LocalizedString /** - * The field whose value will be compared + * The number of results to return per page */ longDesc: () => LocalizedString } - '1': { + sort_by: { /** - * Value + * Sort By */ displayName: () => LocalizedString /** - * Value to compare against + * Field to sort by */ shortDesc: () => LocalizedString /** - * The value to compare the field against + * The field to use for sorting the results */ longDesc: () => LocalizedString } - } - } - 'in': { - /** - * in - */ - displayName: () => LocalizedString - /** - * Value is in list - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field value is in the specified list of values - */ - longDesc: () => LocalizedString - args: { - '0': { + sort_direction: { /** - * Field + * Sort Direction */ displayName: () => LocalizedString /** - * Field to check + * Sort order */ shortDesc: () => LocalizedString /** - * The field whose value will be checked + * The direction to sort results (ascending or descending) */ longDesc: () => LocalizedString } - '1': { + name: { /** - * Values + * Name */ displayName: () => LocalizedString /** - * List of values + * Company name filter */ shortDesc: () => LocalizedString /** - * The list of values to check against + * Only trigger for companies with names matching this value */ longDesc: () => LocalizedString } - } - } - 'not-in': { - /** - * not in - */ - displayName: () => LocalizedString - /** - * Value is not in list - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field value is not in the specified list of values - */ - longDesc: () => LocalizedString - args: { - '0': { + assignee_ids: { /** - * Field + * Assignees */ displayName: () => LocalizedString /** - * Field to check + * Filter by assignee */ shortDesc: () => LocalizedString /** - * The field whose value will be checked + * Only trigger for companies assigned to these users */ longDesc: () => LocalizedString } - '1': { + contact_type_ids: { /** - * Values + * Contact Types */ displayName: () => LocalizedString /** - * List of values + * Filter by contact type */ shortDesc: () => LocalizedString /** - * The list of values to check against + * Only trigger for companies with these contact types */ longDesc: () => LocalizedString } - } - } - 'is-empty': { - /** - * is empty - */ - displayName: () => LocalizedString - /** - * Field is empty - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field is empty or has no value - */ - longDesc: () => LocalizedString - args: { - '0': { + city: { /** - * Field + * City */ displayName: () => LocalizedString /** - * Field to check + * City filter */ shortDesc: () => LocalizedString /** - * The field to check for emptiness + * Only trigger for companies in this city */ longDesc: () => LocalizedString } - } - } - 'is-not-empty': { - /** - * is not empty - */ - displayName: () => LocalizedString - /** - * Field is not empty - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field has a value - */ - longDesc: () => LocalizedString - args: { - '0': { + state: { /** - * Field + * State */ displayName: () => LocalizedString /** - * Field to check + * State or province filter */ shortDesc: () => LocalizedString /** - * The field to check for a value + * Only trigger for companies in this state or province */ longDesc: () => LocalizedString } - } - } - between: { - /** - * between - */ - displayName: () => LocalizedString - /** - * Value is between two values - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field value is between two specified values (inclusive) - */ - longDesc: () => LocalizedString - args: { - '0': { + postal_code: { /** - * Field + * Postal Code */ displayName: () => LocalizedString /** - * Field to check + * Postal code filter */ shortDesc: () => LocalizedString /** - * The field whose value will be checked + * Only trigger for companies with this postal code */ longDesc: () => LocalizedString } - '1': { + country: { /** - * Lower Value + * Country */ displayName: () => LocalizedString /** - * Lower bound + * Country filter */ shortDesc: () => LocalizedString /** - * The lower bound value + * Only trigger for companies in this country */ longDesc: () => LocalizedString } - '2': { + tags: { /** - * Upper Value + * Tags */ displayName: () => LocalizedString /** - * Upper bound + * Filter by tags */ shortDesc: () => LocalizedString /** - * The upper bound value + * Only trigger for companies that have any of these tags */ longDesc: () => LocalizedString } - } - } - 'contains-text': { - /** - * contains text - */ - displayName: () => LocalizedString - /** - * Contains text - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field contains the specified text - */ - longDesc: () => LocalizedString - args: { - '0': { + socials: { /** - * Field + * Social Media */ displayName: () => LocalizedString /** - * Text field to search + * Social media filter */ shortDesc: () => LocalizedString /** - * The text field to search within + * Only trigger for companies with matching social media profiles */ longDesc: () => LocalizedString } - '1': { + followed: { /** - * Text + * Followed */ displayName: () => LocalizedString /** - * Text to search for + * Following status filter */ shortDesc: () => LocalizedString /** - * The text string to search for within the field + * Only trigger for companies that are followed or not followed */ longDesc: () => LocalizedString } - } - } - 'not-contains-text': { - /** - * does not contain text - */ - displayName: () => LocalizedString - /** - * Does not contain text - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field does not contain the specified text - */ - longDesc: () => LocalizedString - args: { - '0': { + minimum_interaction_count: { /** - * Field + * Minimum Interactions */ displayName: () => LocalizedString /** - * Text field to search + * Minimum interaction count */ shortDesc: () => LocalizedString /** - * The text field to search within + * Only trigger for companies with at least this many interactions */ longDesc: () => LocalizedString } - '1': { + maximum_interaction_count: { /** - * Text + * Maximum Interactions */ displayName: () => LocalizedString /** - * Text to exclude + * Maximum interaction count */ shortDesc: () => LocalizedString /** - * The text string that should not be present in the field + * Only trigger for companies with no more than this many interactions */ longDesc: () => LocalizedString } - } - } - 'contains-terms': { - /** - * contains terms - */ - displayName: () => LocalizedString - /** - * Contains search terms - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field contains any of the specified search terms - */ - longDesc: () => LocalizedString - args: { - '0': { + minimum_inactive_days: { /** - * Field + * Minimum Inactive Days */ displayName: () => LocalizedString /** - * Text field to search + * Minimum days inactive */ shortDesc: () => LocalizedString /** - * The text field to search within + * Only trigger for companies inactive for at least this many days */ longDesc: () => LocalizedString } - '1': { + maximum_inactive_days: { /** - * Terms + * Maximum Inactive Days */ displayName: () => LocalizedString /** - * Search terms + * Maximum days inactive */ shortDesc: () => LocalizedString /** - * The search terms to look for within the field + * Only trigger for companies inactive for no more than this many days */ longDesc: () => LocalizedString } } } - 'starts-with': { + new_lead: { /** - * starts with + * New Lead */ displayName: () => LocalizedString /** - * Starts with text + * Triggered when a new lead is created */ shortDesc: () => LocalizedString /** - * Returns `True` if the field starts with the specified text + * Triggers when a new lead is created in CopperCRM. You can filter which leads trigger this event using various criteria like assignee, status, location, and more. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + ids: { /** - * Field + * Lead IDs */ displayName: () => LocalizedString /** - * Text field to check + * Specific leads to watch */ shortDesc: () => LocalizedString /** - * The text field to check + * Only trigger for these specific lead IDs */ longDesc: () => LocalizedString } - '1': { + page_number: { /** - * Text + * Page Number */ displayName: () => LocalizedString /** - * Starting text + * Which page of results */ shortDesc: () => LocalizedString /** - * The text that the field should start with + * The page number of results to retrieve for pagination */ longDesc: () => LocalizedString } - } - } - 'ends-with': { - /** - * ends with - */ - displayName: () => LocalizedString - /** - * Ends with text - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field ends with the specified text - */ - longDesc: () => LocalizedString - args: { - '0': { + page_size: { /** - * Field + * Page Size */ displayName: () => LocalizedString /** - * Text field to check + * Results per page */ shortDesc: () => LocalizedString /** - * The text field to check + * The number of results to return per page */ longDesc: () => LocalizedString } - '1': { + sort_by: { /** - * Text + * Sort By */ displayName: () => LocalizedString /** - * Ending text + * Field to sort by */ shortDesc: () => LocalizedString /** - * The text that the field should end with + * The field to use for sorting the results */ longDesc: () => LocalizedString } - } - } - 'within-the-next': { - /** - * within the next - */ - displayName: () => LocalizedString - /** - * Date is within the next N days - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the date field falls within the specified number of days in the future - */ - longDesc: () => LocalizedString - args: { - '0': { + sort_direction: { /** - * Field + * Sort Direction */ displayName: () => LocalizedString /** - * Date field to check + * Sort order */ shortDesc: () => LocalizedString /** - * The date field to check + * The direction to sort results (ascending or descending) */ longDesc: () => LocalizedString } - '1': { + name: { /** - * Days + * Name */ displayName: () => LocalizedString /** - * Number of days + * Lead name filter */ shortDesc: () => LocalizedString /** - * The number of days in the future to check + * Only trigger for leads with names matching this value */ longDesc: () => LocalizedString } - } - } - 'within-the-last': { - /** - * within the last - */ - displayName: () => LocalizedString - /** - * Date is within the last N days - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the date field falls within the specified number of days in the past - */ - longDesc: () => LocalizedString - args: { - '0': { + phone_number: { /** - * Field + * Phone Number */ displayName: () => LocalizedString /** - * Date field to check + * Phone number filter */ shortDesc: () => LocalizedString /** - * The date field to check + * Only trigger for leads with this phone number */ longDesc: () => LocalizedString } - '1': { + emails: { /** - * Days + * Email */ displayName: () => LocalizedString /** - * Number of days + * Email filter */ shortDesc: () => LocalizedString /** - * The number of days in the past to check + * Only trigger for leads with this email address */ longDesc: () => LocalizedString } - } - } - } - searchOptions: { - orderBy: { - /** - * Order By - */ - displayName: () => LocalizedString - /** - * Sort results by a specific field - */ - shortDesc: () => LocalizedString - /** - * Define the field and direction to sort search results - */ - longDesc: () => LocalizedString - type: { - fields: { - column: { - /** - * Column - */ - displayName: () => LocalizedString - /** - * The column to sort by - */ - shortDesc: () => LocalizedString - /** - * The name of the column to use for sorting results - */ - longDesc: () => LocalizedString - } - ascending: { - /** - * Ascending - */ - displayName: () => LocalizedString - /** - * Sort in ascending order - */ - shortDesc: () => LocalizedString - /** - * When enabled, results are sorted in ascending order (A-Z, 0-9) - */ - longDesc: () => LocalizedString - } - } - } - } - group_id: { - /** - * Group - */ - displayName: () => LocalizedString - /** - * The group to filter items by - */ - shortDesc: () => LocalizedString - /** - * Select a group within the board to filter items - */ - longDesc: () => LocalizedString - } - } - createOptions: { - group_id: { - /** - * Group - */ - displayName: () => LocalizedString - /** - * The group to create the item in - */ - shortDesc: () => LocalizedString - /** - * Select a group within the board where the new item will be created - */ - longDesc: () => LocalizedString - } - } - } - ZohoCRM: { - /** - * Zoho CRM - */ - displayName: () => LocalizedString - groups: { - /** - * CRM & Sales Management - */ - '0': () => LocalizedString - } - /** - * Connect to Zoho CRM to automate customer relationship management across all global data centers. - */ - shortDesc: () => LocalizedString - /** - * The Zoho CRM integration provides comprehensive actions and triggers to interact with the Zoho CRM API across all seven global data centers (US, AU, EU, IN, CN, JP, CA). Manage modules, records, users, and roles efficiently while automating your CRM workflows with support for custom modules, bulk operations, and real-time triggers. - */ - longDesc: () => LocalizedString - expressions: { - '&&': { - /** - * and (&&) - */ - displayName: () => LocalizedString - /** - * Returns True if all arguments are True - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if all arguments are `True` with logic short-circuiting - */ - longDesc: () => LocalizedString - args: { - '0': { + assignee_ids: { /** - * Condition + * Assignees */ displayName: () => LocalizedString /** - * Boolean condition to evaluate + * Filter by assignee */ shortDesc: () => LocalizedString /** - * A boolean expression or condition that evaluates to True or False + * Only trigger for leads assigned to these users */ longDesc: () => LocalizedString } - } - } - '||': { - /** - * or (||) - */ - displayName: () => LocalizedString - /** - * Returns True if any argument is True - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if any argument is `True` with logic short-circuiting - */ - longDesc: () => LocalizedString - args: { - '0': { + status_ids: { /** - * Condition + * Statuses */ displayName: () => LocalizedString /** - * Boolean condition to evaluate + * Filter by status */ shortDesc: () => LocalizedString /** - * A boolean expression or condition that evaluates to True or False + * Only trigger for leads with these statuses */ longDesc: () => LocalizedString } - } - } - '==': { - /** - * equal (==) - */ - displayName: () => LocalizedString - /** - * Equality comparison - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field value equals the specified value - */ - longDesc: () => LocalizedString - args: { - '0': { + customer_source_ids: { /** - * Field + * Customer Sources */ displayName: () => LocalizedString /** - * Field to compare + * Filter by source */ shortDesc: () => LocalizedString /** - * The field whose value will be compared + * Only trigger for leads from these customer sources */ longDesc: () => LocalizedString } - '1': { + city: { /** - * Value + * City */ displayName: () => LocalizedString /** - * Value to compare against + * City filter */ shortDesc: () => LocalizedString /** - * The value to compare the field against + * Only trigger for leads in this city */ longDesc: () => LocalizedString } - } - } - '!=': { - /** - * not equal (!=) - */ - displayName: () => LocalizedString - /** - * Inequality comparison - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field value does not equal the specified value - */ - longDesc: () => LocalizedString - args: { - '0': { + state: { /** - * Field + * State */ displayName: () => LocalizedString /** - * Field to compare + * State or province filter */ shortDesc: () => LocalizedString /** - * The field whose value will be compared + * Only trigger for leads in this state or province */ longDesc: () => LocalizedString } - '1': { + postal_code: { /** - * Value + * Postal Code */ displayName: () => LocalizedString /** - * Value to compare against + * Postal code filter */ shortDesc: () => LocalizedString /** - * The value to compare the field against + * Only trigger for leads with this postal code */ longDesc: () => LocalizedString } - } - } - '>': { - /** - * greater than (>) - */ - displayName: () => LocalizedString - /** - * Greater than comparison - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field value is greater than the specified value - */ - longDesc: () => LocalizedString - args: { - '0': { + country: { /** - * Field + * Country */ displayName: () => LocalizedString /** - * Field to compare + * Country filter */ shortDesc: () => LocalizedString /** - * The field whose value will be compared + * Only trigger for leads in this country */ longDesc: () => LocalizedString } - '1': { + tags: { /** - * Value + * Tags */ displayName: () => LocalizedString /** - * Value to compare against + * Filter by tags */ shortDesc: () => LocalizedString /** - * The value to compare the field against + * Only trigger for leads that have any of these tags */ longDesc: () => LocalizedString } - } - } - '>=': { - /** - * greater than or equal (>=) - */ - displayName: () => LocalizedString - /** - * Greater than or equal comparison - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field value is greater than or equal to the specified value - */ - longDesc: () => LocalizedString - args: { - '0': { + socials: { /** - * Field + * Social Media */ displayName: () => LocalizedString /** - * Field to compare + * Social media filter */ shortDesc: () => LocalizedString /** - * The field whose value will be compared + * Only trigger for leads with matching social media profiles */ longDesc: () => LocalizedString } - '1': { + followed: { /** - * Value + * Followed */ displayName: () => LocalizedString /** - * Value to compare against + * Following status filter */ shortDesc: () => LocalizedString /** - * The value to compare the field against + * Only trigger for leads that are followed or not followed */ longDesc: () => LocalizedString } - } - } - '<': { - /** - * less than (<) - */ - displayName: () => LocalizedString - /** - * Less than comparison - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field value is less than the specified value - */ - longDesc: () => LocalizedString - args: { - '0': { + age: { /** - * Field + * Age */ displayName: () => LocalizedString /** - * Field to compare + * Lead age filter */ shortDesc: () => LocalizedString /** - * The field whose value will be compared + * Only trigger for leads of this age in days */ longDesc: () => LocalizedString } - '1': { + minimum_monetary_value: { /** - * Value + * Minimum Value */ displayName: () => LocalizedString /** - * Value to compare against + * Minimum monetary value */ shortDesc: () => LocalizedString /** - * The value to compare the field against + * Only trigger for leads with at least this monetary value */ longDesc: () => LocalizedString } - } - } - '<=': { - /** - * less than or equal (<=) - */ - displayName: () => LocalizedString - /** - * Less than or equal comparison - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field value is less than or equal to the specified value - */ - longDesc: () => LocalizedString - args: { - '0': { + maximum_monetary_value: { /** - * Field + * Maximum Value */ displayName: () => LocalizedString /** - * Field to compare + * Maximum monetary value */ shortDesc: () => LocalizedString /** - * The field whose value will be compared + * Only trigger for leads with no more than this monetary value */ longDesc: () => LocalizedString } - '1': { + minimum_interaction_count: { /** - * Value + * Minimum Interactions */ displayName: () => LocalizedString /** - * Value to compare against + * Minimum interaction count */ shortDesc: () => LocalizedString /** - * The value to compare the field against + * Only trigger for leads with at least this many interactions */ longDesc: () => LocalizedString } - } - } - like: { - /** - * like - */ - displayName: () => LocalizedString - /** - * Contains text pattern - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field value contains the specified text pattern - */ - longDesc: () => LocalizedString - args: { - '0': { + maximum_interaction_count: { /** - * Field + * Maximum Interactions */ displayName: () => LocalizedString /** - * Text field to search + * Maximum interaction count */ shortDesc: () => LocalizedString /** - * The text field to search within + * Only trigger for leads with no more than this many interactions */ longDesc: () => LocalizedString } - '1': { + include_converted_leads: { /** - * Pattern + * Include Converted Leads */ displayName: () => LocalizedString /** - * Text pattern to search for + * Include converted leads */ shortDesc: () => LocalizedString /** - * The text pattern to search for within the field + * Whether to trigger for leads that have been converted to opportunities */ longDesc: () => LocalizedString } } } - 'not-like': { + new_opportunity: { /** - * not like + * New Opportunity */ displayName: () => LocalizedString /** - * Does not contain text pattern + * Triggered when a new opportunity is created */ shortDesc: () => LocalizedString /** - * Returns `True` if the field value does not contain the specified text pattern + * Triggers when a new opportunity is created in CopperCRM. You can filter which opportunities trigger this event using various criteria like pipeline, stage, status, value, and more. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + ids: { /** - * Field + * Opportunity IDs */ displayName: () => LocalizedString /** - * Text field to search + * Specific opportunities to watch */ shortDesc: () => LocalizedString /** - * The text field to search within + * Only trigger for these specific opportunity IDs */ longDesc: () => LocalizedString } - '1': { + page_number: { /** - * Pattern + * Page Number */ displayName: () => LocalizedString /** - * Text pattern to exclude + * Which page of results */ shortDesc: () => LocalizedString /** - * The text pattern that should not be present in the field + * The page number of results to retrieve for pagination */ longDesc: () => LocalizedString } - } - } - 'in': { - /** - * in - */ - displayName: () => LocalizedString - /** - * Value is in list - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field value matches any value in the provided list - */ - longDesc: () => LocalizedString - args: { - '0': { + page_size: { /** - * Field + * Page Size */ displayName: () => LocalizedString /** - * Field to check + * Results per page */ shortDesc: () => LocalizedString /** - * The field whose value will be checked + * The number of results to return per page */ longDesc: () => LocalizedString } - '1': { + sort_by: { /** - * Values + * Sort By */ displayName: () => LocalizedString /** - * List of values to match + * Field to sort by */ shortDesc: () => LocalizedString /** - * List of values to compare against + * The field to use for sorting the results */ longDesc: () => LocalizedString } - } - } - 'not-in': { - /** - * not in - */ - displayName: () => LocalizedString - /** - * Value is not in list - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field value does not match any value in the provided list - */ - longDesc: () => LocalizedString - args: { - '0': { + sort_direction: { /** - * Field + * Sort Direction */ displayName: () => LocalizedString /** - * Field to check + * Sort order */ shortDesc: () => LocalizedString /** - * The field whose value will be checked + * The direction to sort results (ascending or descending) */ longDesc: () => LocalizedString } - '1': { + name: { /** - * Values + * Name */ displayName: () => LocalizedString /** - * List of values to exclude + * Opportunity name filter */ shortDesc: () => LocalizedString /** - * List of values that should not match + * Only trigger for opportunities with names matching this value */ longDesc: () => LocalizedString } - } - } - between: { - /** - * between - */ - displayName: () => LocalizedString - /** - * Value is between two values - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field value is between two specified values (inclusive) - */ - longDesc: () => LocalizedString - args: { - '0': { + assignee_ids: { /** - * Field + * Assignees */ displayName: () => LocalizedString /** - * Field to check + * Filter by assignee */ shortDesc: () => LocalizedString /** - * The field whose value will be checked + * Only trigger for opportunities assigned to these users */ longDesc: () => LocalizedString } - '1': { + company_ids: { /** - * Lower bound + * Companies */ displayName: () => LocalizedString /** - * Minimum value + * Filter by company */ shortDesc: () => LocalizedString /** - * The minimum value (inclusive) + * Only trigger for opportunities associated with these companies */ longDesc: () => LocalizedString } - '2': { + customer_source_ids: { /** - * Upper bound + * Customer Sources */ displayName: () => LocalizedString /** - * Maximum value + * Filter by source */ shortDesc: () => LocalizedString /** - * The maximum value (inclusive) + * Only trigger for opportunities from these customer sources */ longDesc: () => LocalizedString } - } - } - 'not-between': { - /** - * not between - */ - displayName: () => LocalizedString - /** - * Value is not between two values - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field value is not between two specified values - */ - longDesc: () => LocalizedString - args: { - '0': { + loss_reason_ids: { /** - * Field + * Loss Reasons */ displayName: () => LocalizedString /** - * Field to check + * Filter by loss reason */ shortDesc: () => LocalizedString /** - * The field whose value will be checked + * Only trigger for opportunities with these loss reasons */ longDesc: () => LocalizedString } - '1': { + pipeline_ids: { /** - * Lower bound + * Pipelines */ displayName: () => LocalizedString /** - * Minimum value to exclude + * Filter by pipeline */ shortDesc: () => LocalizedString /** - * The lower boundary for exclusion + * Only trigger for opportunities in these pipelines */ longDesc: () => LocalizedString } - '2': { + pipeline_stage_ids: { /** - * Upper bound + * Pipeline Stages */ displayName: () => LocalizedString /** - * Maximum value to exclude + * Filter by stage */ shortDesc: () => LocalizedString /** - * The upper boundary for exclusion + * Only trigger for opportunities in these pipeline stages */ longDesc: () => LocalizedString } - } - } - 'is-null': { - /** - * is null - */ - displayName: () => LocalizedString - /** - * Field is null - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field value is null or empty - */ - longDesc: () => LocalizedString - args: { - '0': { + primary_contact_ids: { /** - * Field + * Primary Contacts */ displayName: () => LocalizedString /** - * Field to check + * Filter by primary contact */ shortDesc: () => LocalizedString /** - * The field to check for null value + * Only trigger for opportunities with these primary contacts */ longDesc: () => LocalizedString } - } - } - 'is-not-null': { - /** - * is not null - */ - displayName: () => LocalizedString - /** - * Field is not null - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field value is not null or empty - */ - longDesc: () => LocalizedString - args: { - '0': { + priorities: { /** - * Field + * Priorities */ displayName: () => LocalizedString /** - * Field to check + * Filter by priority */ shortDesc: () => LocalizedString /** - * The field to check for non-null value + * Only trigger for opportunities with these priority levels */ longDesc: () => LocalizedString } - } - } - } - triggers: { - new_record: { - /** - * New Record - */ - displayName: () => LocalizedString - /** - * Triggers when a new record is created in a Zoho CRM module - */ - shortDesc: () => LocalizedString - /** - * Monitors a specified Zoho CRM module for newly created records and fires when a new record is detected. The trigger polls for records sorted by Created Time in descending order. You can optionally filter records by phone, email, keywords, or specific field values to only trigger for records matching your criteria. - */ - longDesc: () => LocalizedString - options: { - module: { + statuses: { /** - * Module + * Statuses */ displayName: () => LocalizedString /** - * The Zoho CRM module to monitor for new records + * Filter by status */ shortDesc: () => LocalizedString /** - * Select the Zoho CRM module (such as Leads, Contacts, Deals, Accounts, or custom modules) where you want to monitor for newly created records. Use the module API name as returned by the Modules Metadata API. + * Only trigger for opportunities with these statuses */ longDesc: () => LocalizedString } - phone: { + tags: { /** - * Phone Filter + * Tags */ displayName: () => LocalizedString /** - * Filter records by phone number + * Filter by tags */ shortDesc: () => LocalizedString /** - * Optional phone number to search for in records. When specified, only records containing this phone number will trigger the event. This uses the Zoho CRM search API to find matching records. + * Only trigger for opportunities that have any of these tags */ longDesc: () => LocalizedString } - email: { + followed: { /** - * Email Filter + * Followed */ displayName: () => LocalizedString /** - * Filter records by email address + * Following status filter */ shortDesc: () => LocalizedString /** - * Optional email address to search for in records. When specified, only records containing this email address will trigger the event. This uses the Zoho CRM search API to find matching records. + * Only trigger for opportunities that are followed or not followed */ longDesc: () => LocalizedString } - word: { + minimum_monetary_value: { /** - * Keyword Search + * Minimum Value */ displayName: () => LocalizedString /** - * Filter records by keyword + * Minimum deal value */ shortDesc: () => LocalizedString /** - * Optional keyword to search for across all searchable fields in records. When specified, only records containing this keyword will trigger the event. This uses the Zoho CRM search API to perform a comprehensive text search. + * Only trigger for opportunities with at least this monetary value */ longDesc: () => LocalizedString } - field_filter: { + maximum_monetary_value: { /** - * Field Filters + * Maximum Value */ displayName: () => LocalizedString /** - * Filter records by specific field values + * Maximum deal value */ shortDesc: () => LocalizedString /** - * Optional list of field-value pairs to create search criteria. When specified, only records where ALL specified fields match their corresponding values will trigger the event. Uses the "equals" operator for each field comparison. + * Only trigger for opportunities with no more than this monetary value */ longDesc: () => LocalizedString - type: { - element_type: { - fields: { - field: { - /** - * Field Name - */ - displayName: () => LocalizedString - /** - * The API name of the field to filter on - */ - shortDesc: () => LocalizedString - /** - * Select or enter the field API name from the module. Available field names can be retrieved using the Fields Metadata API. The field must be searchable to be used in filtering. - */ - longDesc: () => LocalizedString - } - value: { - /** - * Field Value - */ - displayName: () => LocalizedString - /** - * The value that the field must equal - */ - shortDesc: () => LocalizedString - /** - * Enter the exact value that the field must equal for the record to match. The comparison uses the "equals" operator, so the field value must match this value exactly. - */ - longDesc: () => LocalizedString - } - } - } - } } - } - } - } - actions: { - create_record: { - /** - * Create Record - */ - displayName: () => LocalizedString - /** - * Create a new record in a Zoho CRM module - */ - shortDesc: () => LocalizedString - /** - * Creates a new record in the specified Zoho CRM module with the provided field values. Returns the record ID along with timestamps for creation and modification. The Created_By and Modified_By fields contain the user information who created the record. Supports all standard and custom modules except Documents and Projects. - */ - longDesc: () => LocalizedString - options: { - module: { + minimum_win_probability: { /** - * Module + * Minimum Win Probability */ displayName: () => LocalizedString /** - * The Zoho CRM module where the record will be created + * Minimum win chance */ shortDesc: () => LocalizedString /** - * Select the target Zoho CRM module (such as Leads, Contacts, Deals, Accounts, Products, Vendors, or custom modules) where you want to create the new record. Use the Modules API to get the list of available modules and their API names. + * Only trigger for opportunities with at least this win probability */ longDesc: () => LocalizedString } - properties: { + maximum_win_probability: { /** - * Record Properties + * Maximum Win Probability */ displayName: () => LocalizedString /** - * Field values for the new record + * Maximum win chance */ shortDesc: () => LocalizedString /** - * Provide the field values for the new record as key-value pairs where keys are field API names. Available fields and their types are dynamically loaded based on the selected module. Required fields must be included, and field values must match their expected data types (text, number, date, picklist, lookup, etc.). + * Only trigger for opportunities with no more than this win probability + */ + longDesc: () => LocalizedString + } + minimum_interaction_count: { + /** + * Minimum Interactions + */ + displayName: () => LocalizedString + /** + * Minimum interaction count + */ + shortDesc: () => LocalizedString + /** + * Only trigger for opportunities with at least this many interactions + */ + longDesc: () => LocalizedString + } + maximum_interaction_count: { + /** + * Maximum Interactions + */ + displayName: () => LocalizedString + /** + * Maximum interaction count + */ + shortDesc: () => LocalizedString + /** + * Only trigger for opportunities with no more than this many interactions */ longDesc: () => LocalizedString } } } - update_record: { + new_person: { /** - * Update Record + * New Person */ displayName: () => LocalizedString /** - * Update an existing record in a Zoho CRM module + * Triggered when a new person contact is created */ shortDesc: () => LocalizedString /** - * Updates an existing record in the specified Zoho CRM module with the provided field values. Returns the record ID along with updated timestamps for modification. Only the fields you specify will be updated; other fields will remain unchanged. The record must exist and the user must have update permissions for the module. + * Triggers when a new person contact is created in CopperCRM. You can filter which people trigger this event using various criteria like assignee, company, location, and more. */ longDesc: () => LocalizedString options: { - module: { + ids: { /** - * Module + * Person IDs */ displayName: () => LocalizedString /** - * The Zoho CRM module containing the record + * Specific people to watch */ shortDesc: () => LocalizedString /** - * Select the Zoho CRM module (such as Leads, Contacts, Deals, Accounts, or custom modules) that contains the record you want to update. The module must support API operations and the user must have appropriate permissions. + * Only trigger for these specific person IDs */ longDesc: () => LocalizedString } - record_id: { + name: { /** - * Record ID + * Name */ displayName: () => LocalizedString /** - * The unique identifier of the record to update + * Person name filter */ shortDesc: () => LocalizedString /** - * Enter or select the unique record ID of the record you want to update. Record IDs can be retrieved using the Get Records API or from webhook notifications. The record must exist in the specified module. + * Only trigger for people with names matching this value */ longDesc: () => LocalizedString } - properties: { + title: { /** - * Updated Properties + * Title */ displayName: () => LocalizedString /** - * Field values to update on the record + * Job title filter */ shortDesc: () => LocalizedString /** - * Provide the field values you want to update as key-value pairs where keys are field API names. Only include the fields you want to change; unspecified fields will retain their current values. Field values must match their expected data types and validation rules. + * Only trigger for people with this job title */ longDesc: () => LocalizedString } - } - } - delete_record: { - /** - * Delete Record - */ - displayName: () => LocalizedString - /** - * Delete a record from a Zoho CRM module - */ - shortDesc: () => LocalizedString - /** - * Permanently deletes a specific record from the specified Zoho CRM module using its unique record ID. If the module has the Recycle Bin feature enabled, the deleted record will be moved to the Recycle Bin and can be restored. Otherwise, the deletion is permanent. The user must have delete permissions for the module. - */ - longDesc: () => LocalizedString - options: { - module: { + email: { /** - * Module + * Email */ displayName: () => LocalizedString /** - * The Zoho CRM module containing the record + * Email filter */ shortDesc: () => LocalizedString /** - * Select the Zoho CRM module (such as Leads, Contacts, Deals, Accounts, or custom modules) that contains the record you want to delete. The module must support API operations and the user must have delete permissions. + * Only trigger for people with this email address */ longDesc: () => LocalizedString } - record_id: { + phone: { /** - * Record ID + * Phone */ displayName: () => LocalizedString /** - * The unique identifier of the record to delete + * Phone number filter */ shortDesc: () => LocalizedString /** - * Enter or select the unique record ID of the record you want to delete. Record IDs can be retrieved using the Get Records API. Deleting a record that has already been deleted will result in an error. + * Only trigger for people with this phone number */ longDesc: () => LocalizedString } - } - } - get_record: { - /** - * Get Record - */ - displayName: () => LocalizedString - /** - * Retrieve a single record from a Zoho CRM module - */ - shortDesc: () => LocalizedString - /** - * Fetches detailed information about a specific record from the specified Zoho CRM module using its unique record ID. Returns all field values for the record including standard fields (Created_Time, Modified_Time, Created_By, Modified_By) and custom fields. Subform data, multi-select lookup fields, and multi-user lookup fields are also included in the response. - */ - longDesc: () => LocalizedString - options: { - module: { + city: { /** - * Module + * City */ displayName: () => LocalizedString /** - * The Zoho CRM module containing the record + * City filter */ shortDesc: () => LocalizedString /** - * Select the Zoho CRM module (such as Leads, Contacts, Deals, Accounts, or custom modules) that contains the record you want to retrieve. The module must support API operations and the user must have read permissions. + * Only trigger for people in this city */ longDesc: () => LocalizedString } - record_id: { + state: { /** - * Record ID + * State */ displayName: () => LocalizedString /** - * The unique identifier of the record to retrieve + * State or province filter */ shortDesc: () => LocalizedString /** - * Enter or select the unique record ID of the record you want to fetch. Record IDs can be obtained from the Get Records API, search results, or webhook notifications. The record must exist in the specified module. + * Only trigger for people in this state or province */ longDesc: () => LocalizedString } - } - } - list_records: { - /** - * List Records - */ - displayName: () => LocalizedString - /** - * Retrieve multiple records from a Zoho CRM module - */ - shortDesc: () => LocalizedString - /** - * Fetches a list of records from the specified Zoho CRM module with support for field selection, pagination, sorting, and filtering. You can specify which fields to return (maximum 50 field API names), sort records by a field in ascending or descending order, and navigate through pages using tokens. Returns both the records data and pagination tokens for retrieving subsequent pages. - */ - longDesc: () => LocalizedString - options: { - module: { + postal_code: { /** - * Module + * Postal Code */ displayName: () => LocalizedString /** - * The Zoho CRM module to retrieve records from + * Postal code filter */ shortDesc: () => LocalizedString /** - * Select the Zoho CRM module (such as Leads, Contacts, Deals, Accounts, or custom modules) from which you want to retrieve records. The module must support API operations and the user must have read permissions. + * Only trigger for people with this postal code */ longDesc: () => LocalizedString } - fields: { + country: { /** - * Fields to Return + * Country */ displayName: () => LocalizedString /** - * Specify which fields to include in the response + * Country filter */ shortDesc: () => LocalizedString /** - * Select the field API names you want to retrieve for each record. You can include a maximum of 50 field API names. Use the Fields Metadata API to get the list of available fields. By default, only the ID field is returned. Add fields like Last_Name, Email, Created_Time, or custom field names as needed. + * Only trigger for people in this country */ longDesc: () => LocalizedString } - per_page: { + assignee_ids: { /** - * Records Per Page + * Assignees */ displayName: () => LocalizedString /** - * Number of records to return per page + * Filter by assignee */ shortDesc: () => LocalizedString /** - * Specify how many records to return in a single API request. Valid values are 1 to 200. The default value is 20. Use this parameter along with page_token for pagination through large result sets. + * Only trigger for people assigned to these users */ longDesc: () => LocalizedString } - page_token: { + contact_type_ids: { /** - * Page Token + * Contact Types */ displayName: () => LocalizedString /** - * Token for retrieving the next page of results + * Filter by contact type */ shortDesc: () => LocalizedString /** - * Use the next_page_token value from a previous response to retrieve the next page of records. Leave this empty for the first page. The page_token is bound to the parameters used in the request, so do not change other parameters when using a token. + * Only trigger for people with these contact types */ longDesc: () => LocalizedString } - ids: { + company_ids: { /** - * Record IDs + * Companies */ displayName: () => LocalizedString /** - * Filter by specific record IDs + * Filter by company */ shortDesc: () => LocalizedString /** - * Optional list of specific record IDs to retrieve. When provided, only records with these IDs will be returned. This is useful for fetching a specific set of records rather than paginating through all records. + * Only trigger for people associated with these companies */ longDesc: () => LocalizedString } - sort: { + tags: { /** - * Sort Configuration + * Tags */ displayName: () => LocalizedString /** - * Configure how to sort the returned records + * Filter by tags */ shortDesc: () => LocalizedString /** - * Specify how records should be sorted in the response. You can sort by fields like id, Created_Time, or Modified_Time in either ascending (oldest first) or descending (newest first) order. + * Only trigger for people that have any of these tags */ longDesc: () => LocalizedString - type: { - fields: { - sort_by: { - /** - * Sort By Field - */ - displayName: () => LocalizedString - /** - * The field to use for sorting records - */ - shortDesc: () => LocalizedString - /** - * Select or enter the field API name to sort records by. Common options include id, Created_Time, and Modified_Time. You can also use custom field API names that support sorting. - */ - longDesc: () => LocalizedString - } - order: { - /** - * Sort Order - */ - displayName: () => LocalizedString - /** - * Sort in ascending or descending order - */ - shortDesc: () => LocalizedString - /** - * Choose whether to sort records in ascending order (asc - oldest first) or descending order (desc - newest first). The default value is descending. - */ - longDesc: () => LocalizedString - } - } - } } - } - } - list_modules: { - /** - * List Modules - */ - displayName: () => LocalizedString - /** - * Retrieve all available modules in Zoho CRM - */ - shortDesc: () => LocalizedString - /** - * Fetches metadata for all modules in your Zoho CRM organization, including both standard modules (Leads, Contacts, Deals, Accounts, etc.) and custom modules. Returns comprehensive details including module permissions, API names, display labels, and capabilities like whether the module is creatable, editable, deletable, or supports features like global search and quick create. - */ - longDesc: () => LocalizedString - options: { - status: { + socials: { /** - * Module Status Filter + * Social Media */ displayName: () => LocalizedString /** - * Filter modules by their status + * Social media filter */ shortDesc: () => LocalizedString /** - * Optional filter to retrieve only modules with specific statuses. Options include: visible (active modules shown in the UI), user_hidden (modules hidden by users), system_hidden (modules hidden by the system), and scheduled_for_deletion (modules marked for deletion). When not specified, all modules are returned. + * Only trigger for people with these social media profiles */ longDesc: () => LocalizedString } - } - } - list_fields: { - /** - * List Module Fields - */ - displayName: () => LocalizedString - /** - * Retrieve field metadata for a Zoho CRM module - */ - shortDesc: () => LocalizedString - /** - * Fetches comprehensive metadata about all fields in a specific Zoho CRM module including field types, labels, API names, data types, validation rules, picklist values, lookup configurations, and permissions. This information is essential for understanding module structure, building dynamic forms, or validating data before creating or updating records. - */ - longDesc: () => LocalizedString - options: { - module: { + minimum_interaction_count: { /** - * Module + * Minimum Interactions */ displayName: () => LocalizedString /** - * The Zoho CRM module to retrieve fields from + * Minimum interaction count */ shortDesc: () => LocalizedString /** - * Select the Zoho CRM module whose field metadata you want to retrieve. The API returns detailed information about all fields including standard fields (system-defined) and custom fields (user-defined) in the module. + * Only trigger for people with at least this many interactions */ longDesc: () => LocalizedString } - } - } - list_users: { - /** - * List Users - */ - displayName: () => LocalizedString - /** - * Retrieve users from your Zoho CRM organization - */ - shortDesc: () => LocalizedString - /** - * Fetches a list of users in your Zoho CRM organization with support for pagination and filtering by user type. Returns comprehensive user information including name, email, role, profile, timezone, locale settings, customization preferences, and account status. Use the type parameter to filter users based on their profile and status. - */ - longDesc: () => LocalizedString - options: { - per_page: { + maximum_interaction_count: { /** - * Users Per Page + * Maximum Interactions */ displayName: () => LocalizedString /** - * Number of users to return per page + * Maximum interaction count */ shortDesc: () => LocalizedString /** - * Specify how many users to return in a single API request. Valid values are 1 to 200. The default value is 20. Use this parameter along with the page parameter for pagination through large result sets. + * Only trigger for people with no more than this many interactions */ longDesc: () => LocalizedString } - page: { + page_number: { /** * Page Number */ displayName: () => LocalizedString /** - * The page number for pagination + * Which page of results */ shortDesc: () => LocalizedString /** - * Specify which page of results to retrieve, starting from 1 for the first page. Use this parameter along with per_page to navigate through multiple pages of user data. + * The page number of results to retrieve for pagination */ longDesc: () => LocalizedString } - type: { + page_size: { /** - * User Type Filter + * Page Size */ displayName: () => LocalizedString /** - * Filter users by type or status + * Results per page */ shortDesc: () => LocalizedString /** - * Optional filter to retrieve specific categories of users. Options include: AllUsers (both active and inactive), ActiveUsers (only active users), DeactiveUsers (deactivated users), ConfirmedUsers (users who confirmed their accounts), NotConfirmedUsers (unconfirmed users), DeletedUsers (deleted users), ActiveConfirmedUsers (active and confirmed), AdminUsers (users with Administrator privileges), ActiveConfirmedAdmins (active confirmed administrators), and CurrentUser (the currently authenticated CRM user). + * The number of results to return per page */ longDesc: () => LocalizedString } - } - } - list_tags: { - /** - * List Tags - */ - displayName: () => LocalizedString - /** - * Retrieve tags available in a Zoho CRM module - */ - shortDesc: () => LocalizedString - /** - * Fetches all tags that have been created for a specific Zoho CRM module. Tags are labels used to categorize and organize records within a module for easier searching and filtering. Each tag includes its name, ID, color code, and metadata about when it was created and modified. You can add a maximum of 100 tags per module and 10 tags per record. - */ - longDesc: () => LocalizedString - options: { - module: { + sort_by: { /** - * Module + * Sort By */ displayName: () => LocalizedString /** - * The Zoho CRM module to retrieve tags from + * Field to sort by */ shortDesc: () => LocalizedString /** - * Select the Zoho CRM module (such as Leads, Contacts, Deals, or custom modules) whose tags you want to retrieve. Each module maintains its own set of tags. + * The field to use for sorting the results */ longDesc: () => LocalizedString } - my_tags: { + sort_direction: { /** - * My Tags Only + * Sort Direction */ displayName: () => LocalizedString /** - * Retrieve only tags created by you + * Sort order */ shortDesc: () => LocalizedString /** - * When set to true, only tags created by the current user will be returned. When set to false or not specified, all tags in the module will be returned regardless of who created them. + * The direction to sort results (ascending or descending) */ longDesc: () => LocalizedString } } } - add_tags_to_records: { + new_task: { /** - * Add Tags to Records + * New Task */ displayName: () => LocalizedString /** - * Add tags to one or more records in a module + * Triggered when a new task is created */ shortDesc: () => LocalizedString /** - * Adds one or more tags to specified records in a Zoho CRM module. Tags are labels that help categorize and organize records for easier management, filtering, and searching. You can add up to 10 tags per record and a maximum of 100 tags can exist per module. Returns the count of successfully tagged records and locked records that could not be tagged. + * Triggers when a new task is created in CopperCRM. You can filter which tasks trigger this event using various criteria like assignee, status, priority, and more. */ longDesc: () => LocalizedString options: { - module: { + ids: { /** - * Module + * Task IDs */ displayName: () => LocalizedString /** - * The Zoho CRM module containing the records + * Specific tasks to watch */ shortDesc: () => LocalizedString /** - * Select the Zoho CRM module (such as Leads, Contacts, Deals, Accounts, or custom modules) that contains the records you want to tag. Tags are module-specific and must exist in the module before they can be added to records. + * Only trigger for these specific task IDs + */ + longDesc: () => LocalizedString + } + page_number: { + /** + * Page Number + */ + displayName: () => LocalizedString + /** + * Which page of results + */ + shortDesc: () => LocalizedString + /** + * The page number of results to retrieve for pagination + */ + longDesc: () => LocalizedString + } + page_size: { + /** + * Page Size + */ + displayName: () => LocalizedString + /** + * Results per page + */ + shortDesc: () => LocalizedString + /** + * The number of results to return per page + */ + longDesc: () => LocalizedString + } + sort_by: { + /** + * Sort By + */ + displayName: () => LocalizedString + /** + * Field to sort by + */ + shortDesc: () => LocalizedString + /** + * The field to use for sorting the results + */ + longDesc: () => LocalizedString + } + sort_direction: { + /** + * Sort Direction + */ + displayName: () => LocalizedString + /** + * Sort order + */ + shortDesc: () => LocalizedString + /** + * The direction to sort results (ascending or descending) + */ + longDesc: () => LocalizedString + } + assignee_ids: { + /** + * Assignees + */ + displayName: () => LocalizedString + /** + * Filter by assignee + */ + shortDesc: () => LocalizedString + /** + * Only trigger for tasks assigned to these users + */ + longDesc: () => LocalizedString + } + statuses: { + /** + * Statuses + */ + displayName: () => LocalizedString + /** + * Filter by status + */ + shortDesc: () => LocalizedString + /** + * Only trigger for tasks with these statuses + */ + longDesc: () => LocalizedString + } + priorities: { + /** + * Priorities + */ + displayName: () => LocalizedString + /** + * Filter by priority + */ + shortDesc: () => LocalizedString + /** + * Only trigger for tasks with these priority levels */ longDesc: () => LocalizedString } tags: { /** - * Tags to Add + * Tags */ displayName: () => LocalizedString /** - * List of tags to add to the records + * Filter by tags */ shortDesc: () => LocalizedString /** - * Specify the tags you want to add to the records. Each tag should include an ID and name. The tag ID takes precedence over the name if both are provided. You can optionally include a color_code (hex value). Use the List Tags action to retrieve available tags and their IDs. + * Only trigger for tasks that have any of these tags */ longDesc: () => LocalizedString - type: { - element_type: { - fields: { - id: { - /** - * Tag ID - */ - displayName: () => LocalizedString - /** - * The unique identifier of the tag - */ - shortDesc: () => LocalizedString - /** - * The unique ID of an existing tag in the module. This ID takes precedence over the name field. Use the List Tags action to retrieve tag IDs. The tag must already exist in the module. - */ - longDesc: () => LocalizedString - } - name: { - /** - * Tag Name - */ - displayName: () => LocalizedString - /** - * The display name of the tag - */ - shortDesc: () => LocalizedString - /** - * The display name of the tag. When both ID and name are provided, the ID takes precedence. If only the name is provided, the system will look up the tag by name. - */ - longDesc: () => LocalizedString - } - color_code: { - /** - * Color Code - */ - displayName: () => LocalizedString - /** - * Optional hexadecimal color code for the tag - */ - shortDesc: () => LocalizedString - /** - * Optional hexadecimal color code for visual identification of the tag (e.g., #F17574, #57B1FD). The allowed color codes are predefined in Zoho CRM. If not specified or set to null, the tag will use its default color. - */ - longDesc: () => LocalizedString - } - } - } - } } - records: { + followed: { /** - * Record IDs + * Followed */ displayName: () => LocalizedString /** - * IDs of the records to tag + * Following status filter */ shortDesc: () => LocalizedString /** - * List of unique record IDs to which you want to add tags. You can specify a maximum of 500 record IDs per API call. Use the Get Records API or search API to retrieve valid record IDs. + * Only trigger for tasks that are followed or not followed */ longDesc: () => LocalizedString } - over_write: { + } + } + } + } + SeaTable: { + /** + * SeaTable + */ + displayName: () => LocalizedString + groups: { + /** + * Spreadsheets & Data Tables + */ + '0': () => LocalizedString + /** + * Databases & Backend Services + */ + '1': () => LocalizedString + } + /** + * Connect to SeaTable to manage your database tables and records with powerful automation + */ + shortDesc: () => LocalizedString + /** + * The SeaTable integration provides comprehensive access to your SeaTable database operations. Create, read, update, and delete records in your tables, execute SQL queries, and monitor new entries with real-time triggers. Whether you need to manage data, filter results with SQL, or track new records, this integration streamlines your SeaTable workflow automation and database management. + */ + longDesc: () => LocalizedString + connectionMessage: { + /** + * Connect to SeaTable + */ + title: () => LocalizedString + /** + * To connect to SeaTable, you will need your **SeaTable Server URL** and an **API Token**. + + ## Getting Your API Token + + 1. Log in to your SeaTable instance + 2. Open the base you want to connect to + 3. Click on the **dropdown arrow** next to the base name + 4. Select **API Token** from the menu + 5. Create a new token with the desired permissions (read or read/write) + + For detailed instructions, see the [SeaTable API Token Guide](https://seatable.com/help/create-api-tokens/). + + ## Connection Details + + ### SeaTable Server URL + The base URL of your SeaTable instance: + - **SeaTable Cloud**: Use `https://cloud.seatable.io` + - **Self-hosted**: Use your instance URL (e.g., `https://seatable.yourcompany.com`) + + ### API Token + Your API token grants access to a specific base. Each token can have read-only or read-write permissions. + + **Note:** API tokens are scoped to a single base. If you need to access multiple bases, you'll need to create separate connections for each one. + */ + content: () => LocalizedString + } + triggers: { + new_document: { + /** + * New Row + */ + displayName: () => LocalizedString + /** + * Trigger when a new row is added to a SeaTable table + */ + shortDesc: () => LocalizedString + /** + * Monitors a SeaTable table for new rows and triggers when new records are detected. The trigger polls for changes and fires when new rows are found. + */ + longDesc: () => LocalizedString + options: { + table: { /** - * Overwrite Existing Tags + * Table */ displayName: () => LocalizedString /** - * Replace all existing tags on the records + * The table to monitor for new rows */ shortDesc: () => LocalizedString /** - * When set to true, replaces all existing tags on the specified records with the new tags. When set to false (default), adds the new tags while keeping existing tags. Use this option carefully as setting it to true will remove all current tags. + * Select the SeaTable table to monitor. The trigger will fire when new rows are added to this table. */ longDesc: () => LocalizedString } @@ -141177,31 +139547,31 @@ export type TranslationFunctions = { longDesc: () => LocalizedString type: { fields: { - column: { + field: { /** - * Column + * Field */ displayName: () => LocalizedString /** - * The column to sort by + * The field to sort by */ shortDesc: () => LocalizedString /** - * The name of the column to use for sorting results + * The name of the field to use for sorting results */ longDesc: () => LocalizedString } - ascending: { + direction: { /** - * Ascending + * Direction */ displayName: () => LocalizedString /** - * Sort in ascending order + * Sort direction */ shortDesc: () => LocalizedString /** - * When enabled, results are sorted in ascending order (A-Z, 0-9) + * The direction to sort results (ascending or descending) */ longDesc: () => LocalizedString } @@ -141209,964 +139579,938 @@ export type TranslationFunctions = { } } } - upsertOptions: { - duplicate_check_fields: { + actions: { + run_sql: { /** - * Duplicate Check Fields + * Run SQL Query */ displayName: () => LocalizedString /** - * Fields to check for duplicate records + * Execute a SQL query on the SeaTable base */ shortDesc: () => LocalizedString /** - * A list of field API names used to check for duplicate records during upsert. If a record with matching values for these fields exists, it will be updated; otherwise, a new record will be created. + * Executes a SQL query on your SeaTable base and returns the results. Supports SELECT, INSERT, UPDATE, and DELETE statements. Maximum of 10,000 rows can be returned for SELECT queries. */ longDesc: () => LocalizedString + options: { + sql: { + /** + * SQL Query + */ + displayName: () => LocalizedString + /** + * The SQL query to execute + */ + shortDesc: () => LocalizedString + /** + * Enter your SQL query. Use backticks around column names with special characters (e.g., `My Column`). Example: SELECT * FROM `Table1` WHERE `Status` = 'Active' LIMIT 100 + */ + longDesc: () => LocalizedString + } + } } } } - Firebase: { - /** - * Firebase - */ - displayName: () => LocalizedString + Craft: { groups: { /** - * Databases & Backend Services + * Documents & Documentation */ '0': () => LocalizedString + /** + * Project & Task Management + */ + '1': () => LocalizedString } /** - * Connect to Firebase to manage files, users and push notifications + * Craft + */ + displayName: () => LocalizedString + /** + * Connect to Craft to manage documents, collections, tasks, and blocks seamlessly. */ shortDesc: () => LocalizedString /** - * The Firebase integration provides comprehensive access to Firebase services including Cloud Storage for file management, Authentication for user management, and Firebase Cloud Messaging for push notifications. Automate file uploads, user account operations, and notification delivery across your Firebase projects. + * + The Craft integration provides comprehensive actions and triggers to interact with the Craft API. Manage your documents, collections, tasks, and blocks with powerful automation capabilities for your note-taking and document management workflows. + + + ## API Configuration Requirements + + + ### For Tasks and Daily Notes Actions + + + To use **List Tasks**, **Create Task**, **Update Task**, **Delete Tasks**, and **Get Daily Note Blocks** actions, you must create the **Daily notes & Tasks** API in the **Imagine** tab within Craft. + + + + ### For All Other Actions + + To use **Documents**, **Collections**, and **Blocks** actions, you need to connect **Selected Documents** in your Craft API configuration. + */ longDesc: () => LocalizedString - actions: { - list_users: { + connectionMessage: { + /** + * Connect to Craft + */ + title: () => LocalizedString + /** + * To connect to Craft, you will need to create an **API connection** in the Craft app. + + ## Creating Your API Connection + + 1. Open the **Craft** app on your Mac or iOS device + 2. Navigate to the **Imagine** tab (AI features section) + 3. Click **Add Your First API Connection** or **+ Add API** + 4. Choose the type of API you want to create: + - **Daily notes & Tasks**: For task management and daily note operations + - **Selected Documents**: For document, collection, and block operations + 5. Follow the prompts to configure your API connection + 6. Copy the generated **API URL** and **Token** (if provided) + + ## Connection Details + + ### API URL + The URL provided by Craft for your API connection. This URL is specific to your account and the type of API you created. + + ### API Token (Optional) + Some API configurations may include a token for additional authentication. If provided, include it in your connection settings. + + ## API Types and Capabilities + + ### Daily Notes & Tasks API + Required for: + - List Tasks, Create Task, Update Task, Delete Tasks + - Get Daily Note Blocks + + ### Selected Documents API + Required for: + - Documents: List Documents + - Collections: List Collections, Create/Update/Delete Collection Items + - Blocks: List Blocks, Insert Block, Delete Blocks + + **Note:** You may need to create multiple API connections if you want to use both task-related actions and document-related actions. Each API type provides access to different sets of functionality. + */ + content: () => LocalizedString + } + triggers: { + new_collection_item: { /** - * List Users + * New Collection Item */ displayName: () => LocalizedString /** - * Retrieve a list of users from Firebase Authentication + * Triggers when a new item is added to a collection */ shortDesc: () => LocalizedString /** - * Fetches users from Firebase Authentication with support for pagination. Returns user details including email, display name, verification status, and authentication metadata. Use pagination parameters to retrieve large user lists efficiently. + * This trigger activates when a new item is created in the specified Craft collection, allowing you to automate workflows based on new collection entries. */ longDesc: () => LocalizedString options: { - project_id: { - /** - * Project ID - */ - displayName: () => LocalizedString - /** - * The Firebase project to query - */ - shortDesc: () => LocalizedString - /** - * Select the Firebase project from which you want to retrieve users. The project must have Firebase Authentication enabled. - */ - longDesc: () => LocalizedString - } - max_results: { + collectionId: { /** - * Max Results + * Collection */ displayName: () => LocalizedString /** - * Maximum number of users to return + * The collection to monitor for new items */ shortDesc: () => LocalizedString /** - * Specify the maximum number of users to retrieve in a single request. Defaults to 100 if not specified. Use pagination for larger datasets. + * Select the Craft collection you want to monitor for new items. When a new item is added to this collection, the trigger will fire. */ longDesc: () => LocalizedString } - next_page_token: { + maxDepth: { /** - * Next Page Token + * Maximum Depth */ displayName: () => LocalizedString /** - * Token for retrieving the next page of results + * Maximum depth for nested content retrieval */ shortDesc: () => LocalizedString /** - * Provide the pagination token from a previous response to retrieve the next set of users. Leave empty for the first page. + * The maximum depth of nested content to fetch for each collection item. Default is -1 (all descendants). With a depth of 0, only the item properties are fetched without nested content. */ longDesc: () => LocalizedString } } } - get_user: { - /** - * Get User - */ - displayName: () => LocalizedString - /** - * Retrieve detailed information about a specific Firebase user - */ - shortDesc: () => LocalizedString - /** - * Fetches comprehensive details for a specific user from Firebase Authentication including email, display name, photo URL, verification status, account creation date, and custom attributes. Useful for user profile lookups and account verification. - */ - longDesc: () => LocalizedString - options: { - project_id: { - /** - * Project ID - */ - displayName: () => LocalizedString - /** - * The Firebase project containing the user - */ - shortDesc: () => LocalizedString - /** - * Select the Firebase project where the user account exists. The project must have Firebase Authentication enabled. - */ - longDesc: () => LocalizedString - } - user_id: { - /** - * User ID - */ - displayName: () => LocalizedString - /** - * The unique identifier of the user - */ - shortDesc: () => LocalizedString - /** - * Specify the Firebase user ID (localId) of the user whose details you want to retrieve. This is the unique identifier assigned by Firebase Authentication. - */ - longDesc: () => LocalizedString - } + } + actions: { + get_blocks: { + groups: { + /** + * Daily Note Blocks (Daily Tasks & Notes API) + */ + '0': () => LocalizedString } - } - send_push_notification: { /** - * Send Push Notification + * Get Daily Note Blocks */ displayName: () => LocalizedString /** - * Send a push notification via Firebase Cloud Messaging + * Retrieve blocks from a daily note */ shortDesc: () => LocalizedString /** - * Sends push notifications to specific device tokens or topics using Firebase Cloud Messaging (FCM). Supports rich notifications with titles, body text, images, and custom data payloads. Configure priority levels for Android and iOS delivery. + * Fetch all blocks from a Craft daily note for a specific date. You can retrieve blocks from today, yesterday, tomorrow, or any custom date, with control over the depth and metadata of the returned content. */ longDesc: () => LocalizedString options: { - project_id: { + date: { /** - * Project ID + * Date */ displayName: () => LocalizedString /** - * The Firebase project for sending notifications + * Specific date for the daily note */ shortDesc: () => LocalizedString /** - * Select the Firebase project that will send the push notification. The project must have Firebase Cloud Messaging configured. + * Select a specific date to retrieve the daily note blocks. If not provided, you can use the "Day" option to select relative dates like today, yesterday, or tomorrow. */ longDesc: () => LocalizedString } - token_or_topic: { + day: { /** - * Token or Topic + * Day */ displayName: () => LocalizedString /** - * Device token or topic name + * Relative day selector */ shortDesc: () => LocalizedString /** - * Specify either a device registration token for sending to a specific device, or a topic name (prefixed with /topics/) for sending to all devices subscribed to that topic. + * Choose a relative day option such as today, yesterday, or tomorrow to retrieve the corresponding daily note blocks. */ longDesc: () => LocalizedString } - title: { + maxDepth: { /** - * Title + * Maximum Depth */ displayName: () => LocalizedString /** - * Notification title + * Maximum depth for nested blocks */ shortDesc: () => LocalizedString /** - * The title text that will be displayed in the notification. Keep it concise and informative. + * Specify the maximum depth for retrieving nested blocks. Use -1 for unlimited depth, or provide a positive number to limit how deep the nested block structure should be retrieved. */ longDesc: () => LocalizedString } - body: { + fetchMetadata: { /** - * Body + * Fetch Metadata */ displayName: () => LocalizedString /** - * Notification message body + * Include metadata in the response */ shortDesc: () => LocalizedString /** - * The main content of the notification message. This text appears below the title in the notification display. - */ - longDesc: () => LocalizedString - } - image: { - /** - * Image - */ - displayName: () => LocalizedString - /** - * Optional image URL for the notification - */ - shortDesc: () => LocalizedString - /** - * Provide a URL to an image that will be displayed in the notification. The image should be publicly accessible and in a supported format (JPEG, PNG). - */ - longDesc: () => LocalizedString - } - data: { - /** - * Data - */ - displayName: () => LocalizedString - /** - * Custom data payload - */ - shortDesc: () => LocalizedString - /** - * Additional custom key-value pairs to include with the notification. This data can be accessed by your app when the notification is received. - */ - longDesc: () => LocalizedString - } - priority: { - /** - * Priority - */ - displayName: () => LocalizedString - /** - * Notification delivery priority - */ - shortDesc: () => LocalizedString - /** - * Set the priority level for notification delivery. High priority notifications are delivered immediately and may wake the device. Normal priority allows for more battery-efficient delivery. + * Enable this option to include additional metadata such as creation date, last modified date, and author information for each block in the response. */ longDesc: () => LocalizedString } } } - upload_file: { + list_documents: { + groups: { + /** + * Documents (Selected Documents API) + */ + '0': () => LocalizedString + } /** - * Upload File + * List Documents */ displayName: () => LocalizedString /** - * Upload a file to Firebase Cloud Storage + * Retrieve all documents */ shortDesc: () => LocalizedString /** - * Uploads a file to a specified bucket in Firebase Cloud Storage. Returns metadata including file path, content type, size, and generation information. Optionally include custom metadata key-value pairs with the upload. + * Get a list of all documents in your Craft workspace. This includes document IDs, titles, and their deletion status, providing a complete overview of your document library. */ longDesc: () => LocalizedString options: { - project_id: { + } + } + list_collections: { + groups: { + /** + * Collections (Selected Documents API) + */ + '0': () => LocalizedString + } + /** + * List Collections + */ + displayName: () => LocalizedString + /** + * Retrieve all collections + */ + shortDesc: () => LocalizedString + /** + * Get a list of all collections in your Craft workspace. You can optionally filter collections by specific documents using include or exclude modes. + */ + longDesc: () => LocalizedString + options: { + documentIds: { /** - * Project ID + * Document IDs */ displayName: () => LocalizedString /** - * The Firebase project for storage + * Filter collections by documents */ shortDesc: () => LocalizedString /** - * Select the Firebase project where the file will be stored. The project must have Firebase Cloud Storage enabled. + * The document IDs to filter. If not provided, collections in all documents will be listed. */ longDesc: () => LocalizedString } - file_path: { + documentFilterMode: { /** - * File Path + * Document Filter Mode */ displayName: () => LocalizedString /** - * Destination path in storage + * How to filter by documents */ shortDesc: () => LocalizedString /** - * Specify the full path where the file should be stored in the bucket, including the filename and any directory structure (e.g., "images/profile/avatar.jpg"). + * Choose whether to include or exclude collections based on the provided document IDs. Select "Include" to only show collections from the specified documents, or "Exclude" to hide collections from those documents. */ longDesc: () => LocalizedString } - bucket: { + } + } + create_collection_item: { + groups: { + /** + * Collections (Selected Documents API) + */ + '0': () => LocalizedString + } + /** + * Create Collection Item + */ + displayName: () => LocalizedString + /** + * Add a new item to a collection + */ + shortDesc: () => LocalizedString + /** + * Create a new item in a Craft collection with a title and optional custom properties. This allows you to programmatically add entries to your structured collections. + */ + longDesc: () => LocalizedString + options: { + collectionId: { /** - * Bucket + * Collection */ displayName: () => LocalizedString /** - * Storage bucket name + * The collection to add the item to */ shortDesc: () => LocalizedString /** - * Select the Cloud Storage bucket where the file will be uploaded. The bucket must exist in the selected Firebase project. + * Select the Craft collection where you want to create the new item. The collection must exist before you can add items to it. */ longDesc: () => LocalizedString } - file: { + title: { /** - * File + * Title */ displayName: () => LocalizedString /** - * The file to upload + * Title of the new collection item */ shortDesc: () => LocalizedString /** - * Select or provide the file to upload. The file will be transferred to Firebase Cloud Storage at the specified path. + * Provide a title for the new collection item. This is the main identifier for the item within the collection. */ longDesc: () => LocalizedString } - metadata: { + properties: { /** - * Metadata + * Properties */ displayName: () => LocalizedString /** - * Custom metadata key-value pairs + * Custom properties for the item */ shortDesc: () => LocalizedString /** - * Optional custom metadata to associate with the uploaded file. Provide as key-value pairs that can be retrieved later with the file information. + * Add custom properties to the collection item. The available properties are dynamically determined based on the schema of the selected collection. */ longDesc: () => LocalizedString } } } - get_file_metadata: { + delete_collection_items: { + groups: { + /** + * Collections (Selected Documents API) + */ + '0': () => LocalizedString + } /** - * Get File Metadata + * Delete Collection Items */ displayName: () => LocalizedString /** - * Retrieve metadata for a specific file in Cloud Storage + * Remove items from a collection */ shortDesc: () => LocalizedString /** - * Fetches comprehensive metadata for a file stored in Firebase Cloud Storage including content type, size, creation date, update date, MD5 hash, custom metadata, and cache control settings. Useful for file verification and management. + * Delete one or more items from a Craft collection by providing their IDs. This action permanently removes the specified items from the collection. */ longDesc: () => LocalizedString options: { - project_id: { - /** - * Project ID - */ - displayName: () => LocalizedString - /** - * The Firebase project containing the file - */ - shortDesc: () => LocalizedString - /** - * Select the Firebase project where the file is stored. The project must have Firebase Cloud Storage enabled. - */ - longDesc: () => LocalizedString - } - bucket: { + collectionId: { /** - * Bucket + * Collection */ displayName: () => LocalizedString /** - * Storage bucket containing the file + * The collection containing the items */ shortDesc: () => LocalizedString /** - * Select the Cloud Storage bucket where the file is located. The bucket must exist in the selected Firebase project. + * Select the Craft collection that contains the items you want to delete. */ longDesc: () => LocalizedString } - file_path: { + itemIds: { /** - * File Path + * Item IDs */ displayName: () => LocalizedString /** - * Path to the file in storage + * IDs of items to delete */ shortDesc: () => LocalizedString /** - * Specify the full path to the file in the bucket, including the filename and any directory structure. + * Provide a list of item IDs that you want to remove from the collection. You can select multiple items to delete in a single operation. */ longDesc: () => LocalizedString } } } - list_files_in_bucket: { + update_collection_item: { + groups: { + /** + * Collections (Selected Documents API) + */ + '0': () => LocalizedString + } /** - * List Files in Bucket + * Update Collection Item */ displayName: () => LocalizedString /** - * List all files in a Cloud Storage bucket + * Modify an existing collection item */ shortDesc: () => LocalizedString /** - * Retrieves a list of files from a Firebase Cloud Storage bucket with support for filtering by prefix and pagination. Returns file metadata including paths, content types, sizes, and timestamps. Useful for browsing and managing stored files. + * Update the title and properties of an existing item in a Craft collection. You can modify any custom properties that are part of the collection schema. */ longDesc: () => LocalizedString options: { - project_id: { - /** - * Project ID - */ - displayName: () => LocalizedString - /** - * The Firebase project containing the bucket - */ - shortDesc: () => LocalizedString - /** - * Select the Firebase project where the storage bucket exists. The project must have Firebase Cloud Storage enabled. - */ - longDesc: () => LocalizedString - } - bucket: { + collectionId: { /** - * Bucket + * Collection */ displayName: () => LocalizedString /** - * Storage bucket to list files from + * The collection containing the item */ shortDesc: () => LocalizedString /** - * Select the Cloud Storage bucket whose files you want to list. The bucket must exist in the selected Firebase project. + * Select the Craft collection that contains the item you want to update. */ longDesc: () => LocalizedString } - prefix: { + itemId: { /** - * Prefix + * Item */ displayName: () => LocalizedString /** - * Optional prefix to filter files + * The item to update */ shortDesc: () => LocalizedString /** - * Filter results to only include files whose paths start with this prefix. Useful for listing files in a specific directory or with a specific naming pattern. + * Select the specific collection item you want to modify. The available items are dynamically populated based on the selected collection. */ longDesc: () => LocalizedString } - max_results: { + title: { /** - * Max Results + * Title */ displayName: () => LocalizedString /** - * Maximum number of files to return + * New title for the item */ shortDesc: () => LocalizedString /** - * Specify the maximum number of files to retrieve in a single request. Defaults to 100 if not specified. Use pagination for larger result sets. + * Provide a new title for the collection item. Leave empty to keep the existing title unchanged. */ longDesc: () => LocalizedString } - page_token: { + properties: { /** - * Page Token + * Properties */ displayName: () => LocalizedString /** - * Token for retrieving the next page + * Updated properties for the item */ shortDesc: () => LocalizedString /** - * Provide the pagination token from a previous response to retrieve the next set of files. Leave empty for the first page. + * Update the custom properties of the collection item. Only the properties you specify will be updated; others will remain unchanged. */ longDesc: () => LocalizedString } } } - list_buckets: { + list_collection_items: { + groups: { + /** + * Collections (Selected Documents API) + */ + '0': () => LocalizedString + } /** - * List Buckets + * List Collection Items */ displayName: () => LocalizedString /** - * List all Cloud Storage buckets in a Firebase project + * Retrieve all items in a collection */ shortDesc: () => LocalizedString /** - * Retrieves all Cloud Storage buckets configured for a Firebase project. Returns bucket details including names, locations, storage classes, creation dates, and update timestamps. Useful for bucket management and discovery. + * Get a list of all items in a specific Craft collection, including their IDs, titles, properties, and content blocks. You can control the depth of nested content retrieval. */ longDesc: () => LocalizedString options: { - project_id: { + collectionId: { /** - * Project ID + * Collection */ displayName: () => LocalizedString /** - * The Firebase project to query + * The collection to retrieve items from */ shortDesc: () => LocalizedString /** - * Select the Firebase project whose storage buckets you want to list. The project must have Firebase Cloud Storage enabled. + * Select the Craft collection whose items you want to list. All items in the collection will be returned. + */ + longDesc: () => LocalizedString + } + maxDepth: { + /** + * Maximum Depth + */ + displayName: () => LocalizedString + /** + * Maximum depth for nested content + */ + shortDesc: () => LocalizedString + /** + * The maximum depth of nested content to fetch for each collection item. Default is -1 (all descendants). With a depth of 0, only the item properties are fetched without nested content. */ longDesc: () => LocalizedString } } } - delete_file: { + list_blocks: { + groups: { + /** + * Blocks (Selected Documents API) + */ + '0': () => LocalizedString + } /** - * Delete File + * List Blocks */ displayName: () => LocalizedString /** - * Delete a file from Cloud Storage + * Retrieve blocks from a document */ shortDesc: () => LocalizedString /** - * Permanently removes a file from Firebase Cloud Storage. This operation is irreversible, so use with caution. Returns confirmation of the deletion including the file path and bucket name. + * Fetch all blocks from a specific Craft document or page. This allows you to access the structured content of your documents, including nested blocks, with control over depth and metadata. */ longDesc: () => LocalizedString options: { - project_id: { + id: { /** - * Project ID + * Document/Page ID */ displayName: () => LocalizedString /** - * The Firebase project containing the file + * The document or page to retrieve blocks from */ shortDesc: () => LocalizedString /** - * Select the Firebase project where the file is stored. The project must have Firebase Cloud Storage enabled. + * The ID of the page block to fetch. Required for multi-document operations. Accepts IDs for documents, pages and blocks. */ longDesc: () => LocalizedString } - bucket: { + maxDepth: { /** - * Bucket + * Maximum Depth */ displayName: () => LocalizedString /** - * Storage bucket containing the file + * Maximum depth for nested blocks */ shortDesc: () => LocalizedString /** - * Select the Cloud Storage bucket where the file to be deleted is located. The bucket must exist in the selected Firebase project. + * Specify the maximum depth for retrieving nested blocks. Use -1 for unlimited depth, or provide a positive number to limit the nesting level. */ longDesc: () => LocalizedString } - file_path: { + fetchMetadata: { /** - * File Path + * Fetch Metadata */ displayName: () => LocalizedString /** - * Path to the file to delete + * Include metadata in the response */ shortDesc: () => LocalizedString /** - * Specify the full path to the file in the bucket that should be deleted, including the filename and any directory structure. This operation is permanent and cannot be undone. + * Whether to fetch metadata (comments, createdBy, lastModifiedBy, lastModifiedAt, createdAt) for the blocks. */ longDesc: () => LocalizedString } - } - } - } - triggers: { - new_user: { - /** - * New User - */ - displayName: () => LocalizedString - /** - * Triggers when a new user is created in Firebase Authentication - */ - shortDesc: () => LocalizedString - /** - * Monitors Firebase Authentication for new user registrations and triggers when new accounts are created. Captures user details including email, display name, verification status, and authentication provider information. Useful for user onboarding workflows, welcome emails, and account setup automation. - */ - longDesc: () => LocalizedString - options: { - project_id: { + getMarkdownString: { /** - * Project ID + * Get Markdown String */ displayName: () => LocalizedString /** - * The Firebase project to monitor + * Retrieve the markdown string representation of blocks */ shortDesc: () => LocalizedString /** - * Select the Firebase project whose Authentication service you want to monitor for new user registrations. The project must have Firebase Authentication enabled. + * Whether to retrieve the markdown string representation of the blocks. */ longDesc: () => LocalizedString } } } - } - } - Supabase: { - /** - * Supabase - */ - displayName: () => LocalizedString - groups: { - /** - * Databases & Backend Services - */ - '0': () => LocalizedString - } - /** - * Connect to Supabase to manage your database tables, storage buckets, and real-time data - */ - shortDesc: () => LocalizedString - /** - * The Supabase integration provides comprehensive access to your Supabase backend services. Manage database tables with full CRUD operations, monitor real-time changes with triggers, and handle file storage through buckets. Whether you need to query data, insert records, filter results, or track new entries, this integration streamlines your Supabase workflow automation and backend management. - */ - longDesc: () => LocalizedString - connectionMessage: { - /** - * Connect to Supabase - */ - title: () => LocalizedString - /** - * To connect to Supabase, you will need your **Project ID** (or Project URL) and a **service_role API Key**. - - ## Finding Your Project ID - - 1. Log in to the [Supabase Dashboard](https://supabase.com/dashboard) - 2. Select your project - 3. Go to **Project Settings** (gear icon) → **General** - 4. Find your **Reference ID** (this is your Project ID) - - Alternatively, your Project URL format is: `https://.supabase.co` - - ## Getting Your API Key - - 1. In your project dashboard, go to **Project Settings** → **API** - 2. Find the **Project API keys** section - 3. Copy the **service_role** key (labeled "secret") - - ⚠️ **Important**: Use the `service_role` key, NOT the `anon` key. The service_role key bypasses Row Level Security (RLS) and has full access to your database. - - ## Connection Details - - ### Project ID / Project URL - Either your project's Reference ID or the full project URL: - - Reference ID: `abcdefghijklmnop` - - Project URL: `https://abcdefghijklmnop.supabase.co` - - ### API Key (service_role) - The `service_role` secret key from your project's API settings. This key: - - Bypasses Row Level Security (RLS) - - Has full access to all database operations - - Should only be used server-side, never in client applications - - ## API Key Types - - | Key Type | Use Case | - |----------|----------| - | `anon` (public) | Client-side apps, respects RLS | - | `service_role` (secret) | Server-side operations, bypasses RLS | - - **Note:** The `service_role` key is extremely powerful and should be kept secure. Never expose it in client-side code or public repositories. For this integration, the service_role key is required to perform administrative operations. - */ - content: () => LocalizedString - } - actions: { - get_table: { + insert_block: { groups: { /** - * Tables + * Blocks (Selected Documents API) */ '0': () => LocalizedString } /** - * Get Table + * Insert Block */ displayName: () => LocalizedString /** - * Retrieve detailed schema information about a specific Supabase table + * Add a new block to a document */ shortDesc: () => LocalizedString /** - * Fetches comprehensive metadata for a specific table including column definitions, data types, required fields, and descriptions. This action helps you understand the structure of your database tables. + * Insert a new block with markdown content into a Craft document. You can specify whether to insert the block at the start or end of the target page. */ longDesc: () => LocalizedString options: { - tableName: { + markdown: { /** - * Table Name + * Markdown Content */ displayName: () => LocalizedString /** - * The name of the table to retrieve + * The markdown content for the block */ shortDesc: () => LocalizedString /** - * Select the Supabase table whose schema information you want to fetch. The table must exist in your Supabase project. + * + The Markdown content to insert. Separate each paragraph and heading with two newlines. Separate each list item with one newline. The first item in any list cannot be empty. Craft-specific tokens are HTML tags.: + + + + - for callouts. Can be used to wrap multiple paragraphs/images/etc. + + - for caption text style. Can be used to wrap a paragraph. + + - for highlights - color is optional. Can only be used inline. + + */ + longDesc: () => LocalizedString + } + position: { + /** + * Position + */ + displayName: () => LocalizedString + /** + * Where to insert the block + */ + shortDesc: () => LocalizedString + /** + * Specify the position where the block should be inserted within the document. */ longDesc: () => LocalizedString + type: { + fields: { + position: { + /** + * Insert Position + */ + displayName: () => LocalizedString + /** + * Insert at start or end + */ + shortDesc: () => LocalizedString + /** + * Choose whether to insert the block at the start or end of the target page. + */ + longDesc: () => LocalizedString + } + pageId: { + /** + * Page ID + */ + displayName: () => LocalizedString + /** + * The page to insert into + */ + shortDesc: () => LocalizedString + /** + * ID of the block to insert children into. Required for multi-document operations. Only page, text, and card type blocks can be parent blocks. Text blocks are auto-converted to page type when they receive children. Collection items are implicitly pages. + */ + longDesc: () => LocalizedString + } + } + } } } } - list_tables: { + delete_blocks: { groups: { /** - * Tables + * Blocks (Selected Documents API) */ '0': () => LocalizedString } /** - * List Tables + * Delete Blocks */ displayName: () => LocalizedString /** - * Get a list of all tables in your Supabase database + * Remove blocks from a document */ shortDesc: () => LocalizedString /** - * Retrieves all tables from your Supabase database with their basic metadata including column information and descriptions. Optionally include system tables in the results. + * Delete one or more blocks from a Craft document by providing their block IDs. This action permanently removes the specified blocks. */ longDesc: () => LocalizedString options: { - include_system_tables: { + blockIds: { /** - * Include System Tables + * Block IDs */ displayName: () => LocalizedString /** - * Include internal Supabase system tables in the results + * IDs of blocks to delete */ shortDesc: () => LocalizedString /** - * When enabled, the response will include system tables (those starting with underscore). System tables contain Supabase internal data and are typically hidden from regular queries. + * Provide a list of block IDs that you want to remove from the document. You can delete multiple blocks in a single operation. */ longDesc: () => LocalizedString } } } - create_row: { + list_tasks: { groups: { /** - * Rows + * Tasks (Daily Tasks & Notes API) */ '0': () => LocalizedString } /** - * Create Row + * List Tasks */ displayName: () => LocalizedString /** - * Insert a new row into a Supabase table + * Retrieve tasks based on scope */ shortDesc: () => LocalizedString /** - * Creates a new record in the specified Supabase table. The action dynamically presents the table schema, allowing you to provide values for each column. Returns the newly created row with all its data. + * Get a list of tasks from your Craft workspace filtered by scope. You can retrieve active tasks, upcoming tasks, inbox tasks, or tasks from your logbook. */ longDesc: () => LocalizedString options: { - tableName: { - /** - * Table Name - */ - displayName: () => LocalizedString - /** - * The table where the row will be inserted - */ - shortDesc: () => LocalizedString - /** - * Select the target Supabase table for inserting the new row. The available fields will be dynamically loaded based on the selected table schema. - */ - longDesc: () => LocalizedString - } - values: { + scope: { /** - * Row Values + * Scope */ displayName: () => LocalizedString /** - * The data to insert into the new row + * Filter tasks by scope */ shortDesc: () => LocalizedString /** - * Provide values for the table columns. The structure is dynamically generated based on the selected table schema, showing all available columns with their data types and constraints. + * Filter tasks by scope: - 'active': Active tasks from inbox and other documents (tasks due before now that are not completed/cancelled) - 'upcoming': Upcoming tasks from inbox and other documents (tasks scheduled after now) - 'inbox': Only tasks in the task inbox - 'logbook': Only tasks in the task logbook (completed and cancelled tasks) */ longDesc: () => LocalizedString } } } - list_rows: { + create_task: { groups: { /** - * Rows + * Tasks (Daily Tasks & Notes API) */ '0': () => LocalizedString } /** - * List Rows + * Create Task */ displayName: () => LocalizedString /** - * Query and retrieve rows from a Supabase table + * Add a new task */ shortDesc: () => LocalizedString /** - * Fetches rows from a Supabase table with support for filtering, sorting, pagination, and ordering. Returns a list of records matching your query criteria along with total count information. + * Create a new task in Craft with markdown content, optional task information (state, schedule, deadline), and a location (inbox or daily note). */ longDesc: () => LocalizedString options: { - tableName: { - /** - * Table Name - */ - displayName: () => LocalizedString - /** - * The table to query - */ - shortDesc: () => LocalizedString - /** - * Select the Supabase table from which you want to retrieve rows. The available columns for filtering and ordering will be loaded based on this selection. - */ - longDesc: () => LocalizedString - } - limit: { - /** - * Limit - */ - displayName: () => LocalizedString - /** - * Maximum number of rows to return - */ - shortDesc: () => LocalizedString - /** - * Specify the maximum number of rows to retrieve in a single query. Useful for pagination and performance optimization. Defaults to 20 if not specified. - */ - longDesc: () => LocalizedString - } - offset: { + markdown: { /** - * Offset + * Task Content */ displayName: () => LocalizedString /** - * Number of rows to skip + * The markdown content for the task */ shortDesc: () => LocalizedString /** - * Skip this many rows before starting to return results. Used in combination with limit for pagination through large datasets. + * The task content in markdown format. This will be the task's text. */ longDesc: () => LocalizedString } - orderBy: { + taskInfo: { /** - * Order By + * Task Information */ displayName: () => LocalizedString /** - * Sort the results by a specific column + * Additional task details */ shortDesc: () => LocalizedString /** - * Define how to sort the retrieved rows by specifying a column and sort direction (ascending or descending). + * Optional task metadata including state, schedule date, and deadline date */ longDesc: () => LocalizedString type: { fields: { - column: { + state: { /** - * Column + * State */ displayName: () => LocalizedString /** - * The column to sort by + * Current state of the task */ shortDesc: () => LocalizedString /** - * Select the table column used for sorting the results. + * Set the initial state of the task: To Do (pending), Done (completed), or Canceled (abandoned). */ longDesc: () => LocalizedString } - ascending: { + scheduleDate: { /** - * Ascending + * Schedule Date */ displayName: () => LocalizedString /** - * Sort in ascending order + * When the task is scheduled */ shortDesc: () => LocalizedString /** - * When enabled, sorts in ascending order (A-Z, 0-9, oldest first). When disabled, sorts in descending order (Z-A, 9-0, newest first). + * Planned execution date of the task. Accepts ISO format YYYY-MM-DD or relative dates: 'today', 'tomorrow', 'yesterday' + */ + longDesc: () => LocalizedString + } + deadlineDate: { + /** + * Deadline Date + */ + displayName: () => LocalizedString + /** + * When the task is due + */ + shortDesc: () => LocalizedString + /** + * Due date of the task. Accepts ISO format YYYY-MM-DD or relative dates: 'today', 'tomorrow', 'yesterday' */ longDesc: () => LocalizedString } } } } - filter: { + location: { /** - * Filter + * Location */ displayName: () => LocalizedString /** - * Filter rows based on a condition + * Where to create the task */ shortDesc: () => LocalizedString /** - * Apply a filter condition to retrieve only rows that match specific criteria. Supports various comparison operators for flexible querying. + * Where to create the task: in the task inbox or a specific daily note */ longDesc: () => LocalizedString type: { fields: { - field: { - /** - * Field - */ - displayName: () => LocalizedString - /** - * The column to filter on - */ - shortDesc: () => LocalizedString - /** - * Select the table column to apply the filter condition to. - */ - longDesc: () => LocalizedString - } - operator: { + type: { /** - * Operator + * Location Type */ displayName: () => LocalizedString /** - * The comparison operator + * Type of location */ shortDesc: () => LocalizedString /** - * Choose the comparison operator for the filter (equals, greater than, contains, etc.). + * Choose whether to create the task in your inbox (for unscheduled tasks) or in a daily note (for a specific date). */ longDesc: () => LocalizedString } - value: { + date: { /** - * Value + * Date */ displayName: () => LocalizedString /** - * The value to compare against + * Date for daily note */ shortDesc: () => LocalizedString /** - * The value to compare the column against using the selected operator. For "in" operator, provide comma-separated values. + * The daily note date where the task is located. Accepts ISO format YYYY-MM-DD or relative dates: 'today', 'tomorrow', 'yesterday'. Defaults to 'today' if not provided. */ longDesc: () => LocalizedString } @@ -142175,773 +140519,915 @@ export type TranslationFunctions = { } } } - delete_rows: { + update_task: { groups: { /** - * Rows + * Tasks (Daily Tasks & Notes API) */ '0': () => LocalizedString } /** - * Delete Rows + * Update Task */ displayName: () => LocalizedString /** - * Delete rows from a Supabase table based on a filter + * Modify an existing task */ shortDesc: () => LocalizedString /** - * Removes rows from a Supabase table that match the specified filter criteria. Returns the count of deleted rows and their data. Use with caution as this operation is irreversible. + * Update an existing task in Craft by changing its markdown content, state, schedule date, or deadline date. */ longDesc: () => LocalizedString options: { - tableName: { + id: { /** - * Table Name + * Task */ displayName: () => LocalizedString /** - * The table to delete rows from + * The task to update */ shortDesc: () => LocalizedString /** - * Select the Supabase table from which you want to delete rows. Ensure you have proper permissions for delete operations on this table. + * Select the task you want to modify. Only active tasks are available for selection. */ longDesc: () => LocalizedString } - filter: { + markdown: { /** - * Filter + * Task Content */ displayName: () => LocalizedString /** - * Condition to identify rows to delete + * Updated markdown content */ shortDesc: () => LocalizedString /** - * Define the filter criteria to identify which rows should be deleted. Only rows matching this condition will be removed from the table. + * Provide new markdown-formatted content for the task. Leave empty to keep the existing content. + */ + longDesc: () => LocalizedString + } + state: { + /** + * State + */ + displayName: () => LocalizedString + /** + * Updated task state + */ + shortDesc: () => LocalizedString + /** + * Change the state of the task to To Do, Done, or Canceled. Leave empty to keep the current state. + */ + longDesc: () => LocalizedString + } + scheduleDate: { + /** + * Schedule Date + */ + displayName: () => LocalizedString + /** + * Updated schedule date + */ + shortDesc: () => LocalizedString + /** + * Updated planned execution date. Accepts ISO format YYYY-MM-DD or relative dates: 'today', 'tomorrow', 'yesterday'. Leave empty to keep the existing schedule. + */ + longDesc: () => LocalizedString + } + deadlineDate: { + /** + * Deadline Date + */ + displayName: () => LocalizedString + /** + * Updated deadline date + */ + shortDesc: () => LocalizedString + /** + * Updated due date of the task. Accepts ISO format YYYY-MM-DD or relative dates: 'today', 'tomorrow', 'yesterday'. Leave empty to keep the existing deadline. */ longDesc: () => LocalizedString - type: { - fields: { - field: { - /** - * Field - */ - displayName: () => LocalizedString - /** - * The column to filter on - */ - shortDesc: () => LocalizedString - /** - * Select the table column to use for identifying rows to delete. - */ - longDesc: () => LocalizedString - } - operator: { - /** - * Operator - */ - displayName: () => LocalizedString - /** - * The comparison operator - */ - shortDesc: () => LocalizedString - /** - * Choose the comparison operator for the delete filter condition. - */ - longDesc: () => LocalizedString - } - value: { - /** - * Value - */ - displayName: () => LocalizedString - /** - * The value to match - */ - shortDesc: () => LocalizedString - /** - * The value to compare against. Rows matching this condition will be deleted. - */ - longDesc: () => LocalizedString - } - } - } } } } - upsert_row: { + delete_tasks: { groups: { /** - * Rows + * Tasks (Daily Tasks & Notes API) */ '0': () => LocalizedString } /** - * Upsert Row + * Delete Tasks */ displayName: () => LocalizedString /** - * Insert a new row or update an existing one + * Remove tasks */ shortDesc: () => LocalizedString /** - * Performs an upsert operation (insert or update) on a Supabase table. If a row with the specified unique constraint exists, it will be updated; otherwise, a new row is inserted. + * Delete one or more tasks from your Craft workspace by providing their task IDs. This action permanently removes the specified tasks. */ longDesc: () => LocalizedString options: { - tableName: { + ids: { /** - * Table Name + * Task IDs */ displayName: () => LocalizedString /** - * The table for the upsert operation + * IDs of tasks to delete */ shortDesc: () => LocalizedString /** - * Select the target Supabase table. The available fields will be dynamically loaded based on the table schema. + * Provide a list of task IDs that you want to remove. You can delete multiple tasks in a single operation. */ longDesc: () => LocalizedString } - values: { + } + } + } + } + Monday: { + /** + * Monday.com + */ + displayName: () => LocalizedString + groups: { + /** + * Project & Task Management + */ + '0': () => LocalizedString + } + /** + * Connect to Monday.com to automate work management with boards, items, columns, and updates. + */ + shortDesc: () => LocalizedString + /** + * The Monday.com integration provides comprehensive access to your work operating system. Create and manage boards, items, groups, and columns. Track work progress, update item statuses, manage column values, and monitor board changes. Automate workflows by creating items, updating records, moving items between groups, and receiving notifications when boards or items are modified. Perfect for project management, task tracking, team collaboration, and workflow automation across your organization. + */ + longDesc: () => LocalizedString + actions: { + archive_record: { + /** + * Archive Record + */ + displayName: () => LocalizedString + /** + * Move a record to the archive. + */ + shortDesc: () => LocalizedString + /** + * This action allows you to archive a specific record (item) on a Monday.com board, helping you keep your workspace organized by removing completed or inactive items from view without permanently deleting them. + */ + longDesc: () => LocalizedString + options: { + board_id: { /** - * Row Values + * Board ID */ displayName: () => LocalizedString /** - * The data to upsert + * The ID of the board containing the record to archive. */ shortDesc: () => LocalizedString /** - * Provide values for the table columns. If a row with matching unique constraints exists, these values will update it; otherwise, a new row is created. + * The unique identifier of the board containing the record you want to archive. */ longDesc: () => LocalizedString } - onConflict: { + record_id: { /** - * On Conflict + * Record ID */ displayName: () => LocalizedString /** - * The column(s) used to detect conflicts + * The ID of the record to archive. */ shortDesc: () => LocalizedString /** - * Specify the column or comma-separated list of columns that should be used to detect conflicts. If not specified, uses the table's primary key. + * The unique identifier of the record you want to archive. */ longDesc: () => LocalizedString } - ignoreDuplicates: { + } + } + clear_column_value: { + /** + * Clear Column Value + */ + displayName: () => LocalizedString + /** + * Remove data from a column in a record. + */ + shortDesc: () => LocalizedString + /** + * Use this action to clear the content of a specified column within a record, resetting its value to empty. + */ + longDesc: () => LocalizedString + options: { + board_id: { /** - * Ignore Duplicates + * Board ID */ displayName: () => LocalizedString /** - * Skip the operation if a duplicate exists + * The ID of the board containing the record. */ shortDesc: () => LocalizedString /** - * When enabled, if a conflicting row exists, the operation is silently ignored. When disabled (default), conflicting rows are updated with the new values. + * The unique identifier of the board containing the record you want to modify. + */ + longDesc: () => LocalizedString + } + record_id: { + /** + * Record ID + */ + displayName: () => LocalizedString + /** + * The ID of the record to modify. + */ + shortDesc: () => LocalizedString + /** + * The unique identifier of the record you want to modify. + */ + longDesc: () => LocalizedString + } + column_id: { + /** + * Column ID + */ + displayName: () => LocalizedString + /** + * The ID of the column to clear. + */ + shortDesc: () => LocalizedString + /** + * The unique identifier of the column you want to clear. */ longDesc: () => LocalizedString } } } - create_bucket: { - groups: { - /** - * Storage - */ - '0': () => LocalizedString - } + create_record: { /** - * Create Storage Bucket + * Create Record */ displayName: () => LocalizedString /** - * Create a new storage bucket in Supabase + * Add a new record to a board. */ shortDesc: () => LocalizedString /** - * Creates a new storage bucket in Supabase Storage for organizing and storing files. Configure access permissions, file size limits, and allowed MIME types. + * This action enables you to create a new record (item) in a specified board, allowing you to define initial column values upon creation. */ longDesc: () => LocalizedString options: { - name: { + board_id: { /** - * Bucket Name + * Board ID */ displayName: () => LocalizedString /** - * The name for the new bucket + * The ID of the board where the record will be created. */ shortDesc: () => LocalizedString /** - * Specify a unique name for the storage bucket. The name must be URL-safe and unique within your Supabase project. + * The unique identifier of the board where you want to create a new record. */ longDesc: () => LocalizedString } - public_access: { + group_id: { /** - * Public Access + * Group ID */ displayName: () => LocalizedString /** - * Allow public access to bucket contents + * The ID of the group where the record will be created. */ shortDesc: () => LocalizedString /** - * When enabled, files in this bucket can be accessed publicly without authentication. When disabled (default), files require authentication to access. + * The unique identifier of the group where you want to create a new record. */ longDesc: () => LocalizedString } - file_size_limit: { + item_name: { /** - * File Size Limit + * Item Name */ displayName: () => LocalizedString /** - * Maximum file size in bytes + * The name of the new record. */ shortDesc: () => LocalizedString /** - * Set the maximum file size that can be uploaded to this bucket, specified in bytes. Leave empty for no limit. + * The name of the new record you want to create. */ longDesc: () => LocalizedString } - allowed_mime_types: { + column_values: { /** - * Allowed MIME Types + * Column Values */ displayName: () => LocalizedString /** - * List of allowed file MIME types + * The values to set for the record columns. */ shortDesc: () => LocalizedString /** - * Specify which file types can be uploaded to this bucket by providing a list of MIME types (e.g., image/png, application/pdf). Leave empty to allow all file types. + * The values to set for the columns of the record you want to create. */ longDesc: () => LocalizedString } } } - list_buckets: { - groups: { - /** - * Storage - */ - '0': () => LocalizedString - } - /** - * List Storage Buckets - */ - displayName: () => LocalizedString - /** - * Get all storage buckets in your Supabase project - */ - shortDesc: () => LocalizedString - /** - * Retrieves a list of all storage buckets in your Supabase project with their configurations including access permissions, file size limits, and allowed MIME types. - */ - longDesc: () => LocalizedString - } - get_bucket: { - groups: { - /** - * Storage - */ - '0': () => LocalizedString - } + custom_action: { /** - * Get Storage Bucket + * Custom Action */ displayName: () => LocalizedString /** - * Retrieve details of a specific storage bucket + * Perform a user-defined operation. */ shortDesc: () => LocalizedString /** - * Fetches detailed information about a specific Supabase storage bucket including its configuration, creation date, access permissions, and file restrictions. + * This action allows you to execute a custom operation defined by your integration or automation setup, providing flexibility for various tasks. */ longDesc: () => LocalizedString options: { - bucket_id: { + payload: { /** - * Bucket ID + * Payload */ displayName: () => LocalizedString /** - * The ID of the bucket to retrieve + * Payload for your custom action */ shortDesc: () => LocalizedString /** - * Select the storage bucket whose details you want to fetch from your Supabase project. + * The payload for your custom action + */ + longDesc: () => LocalizedString + } + actionName: { + /** + * Action Name + */ + displayName: () => LocalizedString + /** + * The name of the custom action to execute + */ + shortDesc: () => LocalizedString + /** + * The name of the custom action to execute */ longDesc: () => LocalizedString } } } - } - triggers: { - new_table_row: { + delete_record: { /** - * New Table Row + * Delete Record */ displayName: () => LocalizedString /** - * Triggers when a new row is added to a Supabase table + * Permanently remove a record. */ shortDesc: () => LocalizedString /** - * Monitors a Supabase table for new rows and triggers when new records are inserted. Supports optional filtering to trigger only for rows matching specific criteria. + * Use this action to permanently delete a specific record from a board, removing all associated data. */ longDesc: () => LocalizedString options: { - tableName: { + board_id: { /** - * Table Name + * Board ID */ displayName: () => LocalizedString /** - * The table to monitor for new rows + * The ID of the board containing the record to delete. */ shortDesc: () => LocalizedString /** - * Select the Supabase table you want to monitor. The trigger will fire whenever new rows are inserted into this table. + * The unique identifier of the board containing the record you want to delete. */ longDesc: () => LocalizedString } - filter: { + record_id: { /** - * Filter + * Record ID */ displayName: () => LocalizedString /** - * Optional condition to filter new rows + * The ID of the record to delete. */ shortDesc: () => LocalizedString /** - * Apply a filter to trigger only for new rows matching specific criteria. Leave empty to trigger for all new rows. + * The unique identifier of the record you want to delete. */ longDesc: () => LocalizedString - type: { - fields: { - field: { - /** - * Field - */ - displayName: () => LocalizedString - /** - * The column to filter on - */ - shortDesc: () => LocalizedString - /** - * Select the table column to apply the filter condition to. - */ - longDesc: () => LocalizedString - } - operator: { - /** - * Operator - */ - displayName: () => LocalizedString - /** - * The comparison operator - */ - shortDesc: () => LocalizedString - /** - * Choose the comparison operator for filtering new rows. - */ - longDesc: () => LocalizedString - } - value: { - /** - * Value - */ - displayName: () => LocalizedString - /** - * The value to match - */ - shortDesc: () => LocalizedString - /** - * The value to compare against. Only new rows matching this condition will trigger the event. - */ - longDesc: () => LocalizedString - } - } - } } } } - } - expressions: { - '&&': { + get_record: { /** - * and (&&) + * Get Record */ displayName: () => LocalizedString /** - * Returns True if all arguments are True + * Retrieve details of a specific record. */ shortDesc: () => LocalizedString /** - * Returns `True` if all arguments are `True` with logic short-circuiting + * This action fetches the details of a specified record, including all column values and associated metadata. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + board_id: { /** - * Condition + * Board ID */ displayName: () => LocalizedString /** - * Boolean condition to evaluate + * The ID of the board containing the record to get. */ shortDesc: () => LocalizedString /** - * A boolean expression or condition that evaluates to True or False + * The unique identifier of the board containing the record you want to get. + */ + longDesc: () => LocalizedString + } + record_id: { + /** + * Record ID + */ + displayName: () => LocalizedString + /** + * The ID of the record to get. + */ + shortDesc: () => LocalizedString + /** + * The unique identifier of the record you want to get. */ longDesc: () => LocalizedString } } } - '||': { + move_record: { /** - * or (||) + * Move Record */ displayName: () => LocalizedString /** - * Returns True if any argument is True + * Transfer a record to another group or board. */ shortDesc: () => LocalizedString /** - * Returns `True` if any argument is `True` with logic short-circuiting + * Use this action to move a record from its current group or board to another specified group or board, maintaining its data and history. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + board_id: { /** - * Condition + * Board ID */ displayName: () => LocalizedString /** - * Boolean condition to evaluate + * The ID of the board containing the record to move. */ shortDesc: () => LocalizedString /** - * A boolean expression or condition that evaluates to True or False + * The unique identifier of the board containing the record you want to move. + */ + longDesc: () => LocalizedString + } + record_id: { + /** + * Record ID + */ + displayName: () => LocalizedString + /** + * The ID of the record to move. + */ + shortDesc: () => LocalizedString + /** + * The unique identifier of the record you want to move. + */ + longDesc: () => LocalizedString + } + destination_group_id: { + /** + * Destination Group ID + */ + displayName: () => LocalizedString + /** + * The ID of the group to move the record to. + */ + shortDesc: () => LocalizedString + /** + * The unique identifier of the group you want to move the record to. */ longDesc: () => LocalizedString } } } - NOT: { + search_records: { /** - * not (!) + * Search Records */ displayName: () => LocalizedString /** - * Logical negation + * Find records matching specific criteria. */ shortDesc: () => LocalizedString /** - * Returns the logical negation of the argument + * This action allows you to search for records that meet defined criteria, such as specific column values or statuses, and returns a list of matching records. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + board_id: { /** - * Condition + * Board ID */ displayName: () => LocalizedString /** - * Boolean condition to negate + * The ID of the board to search for records in. */ shortDesc: () => LocalizedString /** - * A boolean expression or condition to negate + * The unique identifier of the board containing the records you want to search for. + */ + longDesc: () => LocalizedString + } + query_text: { + /** + * Query + */ + displayName: () => LocalizedString + /** + * The search query to use. + */ + shortDesc: () => LocalizedString + /** + * The search query to use to find records. + */ + longDesc: () => LocalizedString + } + columnId: { + /** + * Column ID + */ + displayName: () => LocalizedString + /** + * The ID of the column to search in. + */ + shortDesc: () => LocalizedString + /** + * The unique identifier of the column to search in. + */ + longDesc: () => LocalizedString + } + limit: { + /** + * Limit + */ + displayName: () => LocalizedString + /** + * The maximum number of records to return. + */ + shortDesc: () => LocalizedString + /** + * The maximum number of records to return. + */ + longDesc: () => LocalizedString + } + cursor: { + /** + * Cursor + */ + displayName: () => LocalizedString + /** + * The cursor to use for pagination. + */ + shortDesc: () => LocalizedString + /** + * The cursor to use for pagination. */ longDesc: () => LocalizedString } } } - '==': { + update_record: { /** - * equals (==) + * Update Record */ displayName: () => LocalizedString /** - * Equality comparison + * Modify the values of a record's columns. */ shortDesc: () => LocalizedString /** - * Returns `True` if the field value equals the specified value + * Use this action to update one or more column values of a specific record, allowing you to change its data as needed. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + board_id: { /** - * Field + * Board ID */ displayName: () => LocalizedString /** - * Field to compare + * The ID of the board containing the record to update. */ shortDesc: () => LocalizedString /** - * The field whose value will be compared + * The unique identifier of the board containing the record you want to update. */ longDesc: () => LocalizedString } - '1': { + record_id: { /** - * Value + * Record ID */ displayName: () => LocalizedString /** - * Value to compare against + * The ID of the record to update. */ shortDesc: () => LocalizedString /** - * The value to compare the field against + * The unique identifier of the record you want to update. + */ + longDesc: () => LocalizedString + } + column_values: { + /** + * Column Values + */ + displayName: () => LocalizedString + /** + * The values to set for the record columns. + */ + shortDesc: () => LocalizedString + /** + * The values to set for the columns of the record you want to update. */ longDesc: () => LocalizedString } } } - '!=': { + } + triggers: { + new_record: { /** - * not equals (!=) + * New Record */ displayName: () => LocalizedString /** - * Inequality comparison + * Triggered when a new item is created. */ shortDesc: () => LocalizedString /** - * Returns `True` if the field value does not equal the specified value + * Triggered when a new record is created. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + board_id: { /** - * Field + * Board ID */ displayName: () => LocalizedString /** - * Field to compare + * The ID of the board to check for new records. */ shortDesc: () => LocalizedString /** - * The field whose value will be compared + * The unique identifier of the board that should be checked for new records. */ longDesc: () => LocalizedString } - '1': { + group_id: { /** - * Value + * Group ID */ displayName: () => LocalizedString /** - * Value to compare against + * The ID of the group to check for new records. */ shortDesc: () => LocalizedString /** - * The value to compare the field against + * The unique identifier of the group you want to check for new records in. */ longDesc: () => LocalizedString } } } - '>': { + new_record_moved_to_group: { /** - * greater than (>) + * New Record Moved To Group */ displayName: () => LocalizedString /** - * Greater than comparison + * Triggered when an item was moved to a group. */ shortDesc: () => LocalizedString /** - * Returns `True` if the field value is greater than the specified value + * Triggered when a new record is created. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + board_id: { /** - * Field + * Board ID */ displayName: () => LocalizedString /** - * Field to compare + * The ID of the board to check for new records. */ shortDesc: () => LocalizedString /** - * The field whose value will be compared + * The unique identifier of the board that should be checked for new records. */ longDesc: () => LocalizedString } - '1': { + group_id: { /** - * Value + * Group ID */ displayName: () => LocalizedString /** - * Value to compare against + * The ID of the group to check for new records. */ shortDesc: () => LocalizedString /** - * The value to compare the field against + * The unique identifier of the group you want to check for new records in. */ longDesc: () => LocalizedString } } } - '>=': { + record_column_value_updated: { /** - * greater than or equal (>=) + * Record Column Value Updated */ displayName: () => LocalizedString /** - * Greater than or equal comparison + * Triggered when a record column value is updated. */ shortDesc: () => LocalizedString /** - * Returns `True` if the field value is greater than or equal to the specified value + * Triggered when a record column value is updated. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + board_id: { /** - * Field + * Board ID */ displayName: () => LocalizedString /** - * Field to compare + * The ID of the board to check for record field updates. */ shortDesc: () => LocalizedString /** - * The field whose value will be compared + * The unique identifier of the board that should be checked for record field updates. */ longDesc: () => LocalizedString } - '1': { + column_id: { /** - * Value + * Column ID */ displayName: () => LocalizedString /** - * Value to compare against + * The ID of the column to check for new value. */ shortDesc: () => LocalizedString /** - * The value to compare the field against + * The unique identifier of the column that should be checked for new value. */ longDesc: () => LocalizedString } } } - '<': { + updated_record: { /** - * less than (<) + * Updated Record */ displayName: () => LocalizedString /** - * Less than comparison + * Triggered when an item is updated. */ shortDesc: () => LocalizedString /** - * Returns `True` if the field value is less than the specified value + * Triggered when an item on the board is updated. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + board_id: { /** - * Field + * Board ID */ displayName: () => LocalizedString /** - * Field to compare + * The ID of the board to check for updated records. */ shortDesc: () => LocalizedString /** - * The field whose value will be compared + * The unique identifier of the board that should be checked for updated records. */ longDesc: () => LocalizedString } - '1': { + group_id: { /** - * Value + * Group ID */ displayName: () => LocalizedString /** - * Value to compare against + * The ID of the group to check for new records. */ shortDesc: () => LocalizedString /** - * The value to compare the field against + * The unique identifier of the group you want to check for new records in. */ longDesc: () => LocalizedString } } } - '<=': { + } + expressions: { + '&&': { /** - * less than or equal (<=) + * and (&&) */ displayName: () => LocalizedString /** - * Less than or equal comparison + * Returns True if all arguments are True */ shortDesc: () => LocalizedString /** - * Returns `True` if the field value is less than or equal to the specified value + * Returns `True` if all arguments are `True` with logic short-circuiting */ longDesc: () => LocalizedString args: { '0': { /** - * Field + * Condition */ displayName: () => LocalizedString /** - * Field to compare + * Boolean condition to evaluate */ shortDesc: () => LocalizedString /** - * The field whose value will be compared + * A boolean expression or condition that evaluates to True or False */ longDesc: () => LocalizedString } - '1': { + } + } + '||': { + /** + * or (||) + */ + displayName: () => LocalizedString + /** + * Returns True if any argument is True + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if any argument is `True` with logic short-circuiting + */ + longDesc: () => LocalizedString + args: { + '0': { /** - * Value + * Condition */ displayName: () => LocalizedString /** - * Value to compare against + * Boolean condition to evaluate */ shortDesc: () => LocalizedString /** - * The value to compare the field against + * A boolean expression or condition that evaluates to True or False */ longDesc: () => LocalizedString } } } - like: { + '==': { /** - * like + * equal (==) */ displayName: () => LocalizedString /** - * Pattern matching (case-sensitive) + * Equality comparison */ shortDesc: () => LocalizedString /** - * Returns `True` if the field matches the pattern with % as wildcard + * Returns `True` if the field value equals the specified value */ longDesc: () => LocalizedString args: { @@ -142951,41 +141437,41 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Text field to match + * Field to compare */ shortDesc: () => LocalizedString /** - * The text field to match against the pattern + * The field whose value will be compared */ longDesc: () => LocalizedString } '1': { /** - * Pattern + * Value */ displayName: () => LocalizedString /** - * Pattern to match + * Value to compare against */ shortDesc: () => LocalizedString /** - * The pattern to match with (use % as wildcard, e.g., "%example%") + * The value to compare the field against */ longDesc: () => LocalizedString } } } - ilike: { + '!=': { /** - * ilike + * not equal (!=) */ displayName: () => LocalizedString /** - * Pattern matching (case-insensitive) + * Inequality comparison */ shortDesc: () => LocalizedString /** - * Returns `True` if the field matches the pattern (case-insensitive) with % as wildcard + * Returns `True` if the field value does not equal the specified value */ longDesc: () => LocalizedString args: { @@ -142995,41 +141481,41 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Text field to match + * Field to compare */ shortDesc: () => LocalizedString /** - * The text field to match against the pattern + * The field whose value will be compared */ longDesc: () => LocalizedString } '1': { /** - * Pattern + * Value */ displayName: () => LocalizedString /** - * Pattern to match + * Value to compare against */ shortDesc: () => LocalizedString /** - * The pattern to match with, case-insensitive (use % as wildcard, e.g., "%example%") + * The value to compare the field against */ longDesc: () => LocalizedString } } } - 'in': { + '>': { /** - * in + * higher than (>) */ displayName: () => LocalizedString /** - * In list + * Greater than comparison */ shortDesc: () => LocalizedString /** - * Returns `True` if the field value is in the provided list + * Returns `True` if the field value is greater than the specified value */ longDesc: () => LocalizedString args: { @@ -143039,41 +141525,41 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Field to check + * Field to compare */ shortDesc: () => LocalizedString /** - * The field whose value will be checked + * The field whose value will be compared */ longDesc: () => LocalizedString } '1': { /** - * Values + * Value */ displayName: () => LocalizedString /** - * List of values + * Value to compare against */ shortDesc: () => LocalizedString /** - * The list of values to check the field against + * The value to compare the field against */ longDesc: () => LocalizedString } } } - contains: { + '>=': { /** - * contains (@>) + * higher than or equal (>=) */ displayName: () => LocalizedString /** - * Array contains elements + * Greater than or equal comparison */ shortDesc: () => LocalizedString /** - * Returns `True` if the array field contains all the specified elements + * Returns `True` if the field value is greater than or equal to the specified value */ longDesc: () => LocalizedString args: { @@ -143083,1735 +141569,1403 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Array field to check + * Field to compare */ shortDesc: () => LocalizedString /** - * The array field to check for contained elements + * The field whose value will be compared */ longDesc: () => LocalizedString } '1': { /** - * Elements + * Value */ displayName: () => LocalizedString /** - * Elements to find + * Value to compare against */ shortDesc: () => LocalizedString /** - * The list of elements that should be contained in the array + * The value to compare the field against */ longDesc: () => LocalizedString } } } - } - searchOptions: { - orderBy: { + '<': { /** - * Order By + * lower than (<) */ displayName: () => LocalizedString /** - * Sort results by a specific field + * Less than comparison */ shortDesc: () => LocalizedString /** - * Define the field and direction to sort search results + * Returns `True` if the field value is less than the specified value */ longDesc: () => LocalizedString - type: { - fields: { - column: { - /** - * Column - */ - displayName: () => LocalizedString - /** - * The column to sort by - */ - shortDesc: () => LocalizedString - /** - * The name of the column to use for sorting results - */ - longDesc: () => LocalizedString - } - ascending: { - /** - * Ascending - */ - displayName: () => LocalizedString - /** - * Sort in ascending order - */ - shortDesc: () => LocalizedString - /** - * When enabled, results are sorted in ascending order (A-Z, 0-9) - */ - longDesc: () => LocalizedString - } + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Field to compare + */ + shortDesc: () => LocalizedString + /** + * The field whose value will be compared + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Value + */ + displayName: () => LocalizedString + /** + * Value to compare against + */ + shortDesc: () => LocalizedString + /** + * The value to compare the field against + */ + longDesc: () => LocalizedString } } } - limit: { - /** - * Limit - */ - displayName: () => LocalizedString - /** - * Maximum number of records to return - */ - shortDesc: () => LocalizedString - /** - * Set the maximum total number of records to retrieve from the search - */ - longDesc: () => LocalizedString - } - } - } - BambooHR: { - /** - * BambooHR - */ - displayName: () => LocalizedString - groups: { - /** - * HR & People Management - */ - '0': () => LocalizedString - } - /** - * Connect to BambooHR to manage employee data with powerful automation - */ - shortDesc: () => LocalizedString - /** - * The BambooHR integration provides comprehensive access to your HR operations. Create, read, update, and list employees with dynamic field support. The integration automatically discovers available fields in your BambooHR account, including custom fields, and provides intelligent type handling for dates, lists, and other field types. - */ - longDesc: () => LocalizedString - actions: { - get_employee: { - groups: { - /** - * Employees - */ - '0': () => LocalizedString - } + '<=': { /** - * Get Employee + * lower than or equal (<=) */ displayName: () => LocalizedString /** - * Retrieve a single employee by ID + * Less than or equal comparison */ shortDesc: () => LocalizedString /** - * Fetches detailed data for a single employee in BambooHR by their ID. Returns all requested fields with dynamically loaded field types. You can specify which fields to retrieve or fetch all available fields. + * Returns `True` if the field value is less than or equal to the specified value */ longDesc: () => LocalizedString - options: { - employee_id: { + args: { + '0': { /** - * Employee ID + * Field */ displayName: () => LocalizedString /** - * The ID of the employee to retrieve + * Field to compare */ shortDesc: () => LocalizedString /** - * Enter the unique identifier of the employee you want to fetch. Use 0 to retrieve the employee associated with your API key. + * The field whose value will be compared */ longDesc: () => LocalizedString } - fields: { + '1': { /** - * Fields + * Value */ displayName: () => LocalizedString /** - * Specific fields to retrieve + * Value to compare against */ shortDesc: () => LocalizedString /** - * Select which fields to retrieve for the employee. Leave empty to retrieve all available fields (up to 400 fields). + * The value to compare the field against */ longDesc: () => LocalizedString } } } - create_employee: { - groups: { - /** - * Employees - */ - '0': () => LocalizedString - } + 'in': { /** - * Create Employee + * in */ displayName: () => LocalizedString /** - * Create a new employee in BambooHR + * Value is in list */ shortDesc: () => LocalizedString /** - * Creates a new employee record in BambooHR. At minimum, firstName and lastName are required. The action dynamically presents all available fields based on your BambooHR configuration, including custom fields. + * Returns `True` if the field value is in the specified list of values */ longDesc: () => LocalizedString - options: { - employee_data: { + args: { + '0': { /** - * Employee Data + * Field */ displayName: () => LocalizedString /** - * The data for the new employee + * Field to check */ shortDesc: () => LocalizedString /** - * Provide values for the employee fields. The available fields are dynamically loaded from your BambooHR account and include both standard and custom fields. firstName and lastName are required. + * The field whose value will be checked + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Values + */ + displayName: () => LocalizedString + /** + * List of values + */ + shortDesc: () => LocalizedString + /** + * The list of values to check against */ longDesc: () => LocalizedString } } } - update_employee: { - groups: { - /** - * Employees - */ - '0': () => LocalizedString - } + 'not-in': { /** - * Update Employee + * not in */ displayName: () => LocalizedString /** - * Update an existing employee in BambooHR + * Value is not in list */ shortDesc: () => LocalizedString /** - * Updates an existing employee record in BambooHR. The action dynamically presents all available fields based on your BambooHR configuration. Only provide the fields you want to update. + * Returns `True` if the field value is not in the specified list of values */ longDesc: () => LocalizedString - options: { - employee_id: { + args: { + '0': { /** - * Employee ID + * Field */ displayName: () => LocalizedString /** - * The ID of the employee to update + * Field to check */ shortDesc: () => LocalizedString /** - * Enter the unique identifier of the employee you want to update. + * The field whose value will be checked */ longDesc: () => LocalizedString } - employee_data: { + '1': { /** - * Employee Data + * Values */ displayName: () => LocalizedString /** - * The data to update + * List of values */ shortDesc: () => LocalizedString /** - * Provide new values for the employee fields you want to update. The available fields are dynamically loaded from your BambooHR account. + * The list of values to check against */ longDesc: () => LocalizedString } } } - list_employees: { - groups: { - /** - * Employees - */ - '0': () => LocalizedString - } + 'is-empty': { /** - * List Employees + * is empty */ displayName: () => LocalizedString /** - * Retrieve a list of all employees + * Field is empty */ shortDesc: () => LocalizedString /** - * Fetches a list of all employees from BambooHR. You can specify which fields to retrieve for each employee. Uses the custom report endpoint for efficient bulk retrieval. + * Returns `True` if the field is empty or has no value */ longDesc: () => LocalizedString - options: { - fields: { + args: { + '0': { /** - * Fields + * Field */ displayName: () => LocalizedString /** - * Specific fields to retrieve for each employee + * Field to check */ shortDesc: () => LocalizedString /** - * Select which fields to retrieve for each employee. Leave empty to retrieve a default set of common fields (id, name, email, department, job title). + * The field to check for emptiness */ longDesc: () => LocalizedString } } } - get_whos_out: { - groups: { - /** - * Time Off - */ - '0': () => LocalizedString - } + 'is-not-empty': { /** - * Get Who's Out + * is not empty */ displayName: () => LocalizedString /** - * Get a summary of employees who are out + * Field is not empty */ shortDesc: () => LocalizedString /** - * Retrieves a list of employees who are out (vacation, sick leave, etc.) and company holidays for a given date range. If no dates are specified, returns the current day plus the next 14 days. + * Returns `True` if the field has a value */ longDesc: () => LocalizedString - options: { - start_date: { - /** - * Start Date - */ - displayName: () => LocalizedString - /** - * Start of the date range - */ - shortDesc: () => LocalizedString - /** - * The start date for the query. Defaults to today if not specified. - */ - longDesc: () => LocalizedString - } - end_date: { + args: { + '0': { /** - * End Date + * Field */ displayName: () => LocalizedString /** - * End of the date range + * Field to check */ shortDesc: () => LocalizedString /** - * The end date for the query. Defaults to 14 days from the start date if not specified. + * The field to check for a value */ longDesc: () => LocalizedString } } } - search_time_off_requests: { - groups: { - /** - * Time Off - */ - '0': () => LocalizedString - } + between: { /** - * Search Time Off Requests + * between */ displayName: () => LocalizedString /** - * Search and filter time off requests + * Value is between two values */ shortDesc: () => LocalizedString /** - * Searches time off requests in BambooHR with various filters. Returns requests matching the specified criteria including date range, employee, status, and time off type. + * Returns `True` if the field value is between two specified values (inclusive) */ longDesc: () => LocalizedString - options: { - start_date: { + args: { + '0': { /** - * Start Date + * Field */ displayName: () => LocalizedString /** - * Filter by start date + * Field to check */ shortDesc: () => LocalizedString /** - * Only show time off requests on or after this date. + * The field whose value will be checked */ longDesc: () => LocalizedString } - end_date: { + '1': { /** - * End Date + * Lower Value */ displayName: () => LocalizedString /** - * Filter by end date + * Lower bound */ shortDesc: () => LocalizedString /** - * Only show time off requests on or before this date. + * The lower bound value */ longDesc: () => LocalizedString } - employee_id: { + '2': { /** - * Employee ID + * Upper Value */ displayName: () => LocalizedString /** - * Filter by employee + * Upper bound */ shortDesc: () => LocalizedString /** - * Limit results to a specific employee by their ID. + * The upper bound value */ longDesc: () => LocalizedString } - status: { + } + } + 'contains-text': { + /** + * contains text + */ + displayName: () => LocalizedString + /** + * Contains text + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the field contains the specified text + */ + longDesc: () => LocalizedString + args: { + '0': { /** - * Status + * Field */ displayName: () => LocalizedString /** - * Filter by request status + * Text field to search */ shortDesc: () => LocalizedString /** - * Filter by one or more statuses: approved, denied, requested, canceled, superceded. + * The text field to search within */ longDesc: () => LocalizedString } - type: { + '1': { /** - * Time Off Type + * Text */ displayName: () => LocalizedString /** - * Filter by time off type + * Text to search for */ shortDesc: () => LocalizedString /** - * Filter by one or more time off types configured in your BambooHR account. + * The text string to search for within the field */ longDesc: () => LocalizedString } } } - get_all_employee_files: { - groups: { - /** - * Employee Files - */ - '0': () => LocalizedString - } + 'not-contains-text': { /** - * Get All Employee Files + * does not contain text */ displayName: () => LocalizedString /** - * List all files for an employee + * Does not contain text */ shortDesc: () => LocalizedString /** - * Retrieves all files associated with a specific employee, organized by category. Returns file metadata including name, size, upload date, and sharing status. + * Returns `True` if the field does not contain the specified text */ longDesc: () => LocalizedString - options: { - employee_id: { + args: { + '0': { /** - * Employee ID + * Field */ displayName: () => LocalizedString /** - * The employee to get files for + * Text field to search */ shortDesc: () => LocalizedString /** - * The ID of the employee whose files you want to retrieve. + * The text field to search within + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Text + */ + displayName: () => LocalizedString + /** + * Text to exclude + */ + shortDesc: () => LocalizedString + /** + * The text string that should not be present in the field */ longDesc: () => LocalizedString } } } - download_employee_file: { - groups: { - /** - * Employee Files - */ - '0': () => LocalizedString - } + 'contains-terms': { /** - * Download Employee File + * contains terms */ displayName: () => LocalizedString /** - * Download an employee file + * Contains search terms */ shortDesc: () => LocalizedString /** - * Downloads a specific file from an employee record. Returns the file content as base64-encoded binary along with the MIME type. + * Returns `True` if the field contains any of the specified search terms */ longDesc: () => LocalizedString - options: { - employee_id: { + args: { + '0': { /** - * Employee ID + * Field */ displayName: () => LocalizedString /** - * The employee who owns the file + * Text field to search */ shortDesc: () => LocalizedString /** - * The ID of the employee whose file you want to download. + * The text field to search within */ longDesc: () => LocalizedString } - file_id: { + '1': { /** - * File ID + * Terms */ displayName: () => LocalizedString /** - * The file to download + * Search terms */ shortDesc: () => LocalizedString /** - * The ID of the file to download. + * The search terms to look for within the field */ longDesc: () => LocalizedString } } } - upload_employee_file: { - groups: { - /** - * Employee Files - */ - '0': () => LocalizedString - } + 'starts-with': { /** - * Upload Employee File + * starts with */ displayName: () => LocalizedString /** - * Upload a file to an employee + * Starts with text */ shortDesc: () => LocalizedString /** - * Uploads a new file to an employee record in BambooHR. The file will be placed in the specified category. + * Returns `True` if the field starts with the specified text */ longDesc: () => LocalizedString - options: { - employee_id: { + args: { + '0': { /** - * Employee ID + * Field */ displayName: () => LocalizedString /** - * The employee to upload the file to + * Text field to check */ shortDesc: () => LocalizedString /** - * The ID of the employee to associate the file with. + * The text field to check */ longDesc: () => LocalizedString } - category: { + '1': { /** - * Category + * Text */ displayName: () => LocalizedString /** - * File category + * Starting text */ shortDesc: () => LocalizedString /** - * The category to place the file in. Categories are configured in BambooHR. + * The text that the field should start with */ longDesc: () => LocalizedString } - file: { + } + } + 'ends-with': { + /** + * ends with + */ + displayName: () => LocalizedString + /** + * Ends with text + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the field ends with the specified text + */ + longDesc: () => LocalizedString + args: { + '0': { /** - * File + * Field */ displayName: () => LocalizedString /** - * The file to upload + * Text field to check */ shortDesc: () => LocalizedString /** - * The file to upload. Must include name, MIME type, and base64-encoded content. + * The text field to check */ longDesc: () => LocalizedString } - share_with_employee: { + '1': { /** - * Share with Employee + * Text */ displayName: () => LocalizedString /** - * Make file visible to employee + * Ending text */ shortDesc: () => LocalizedString /** - * Whether to make this file visible to the employee in their self-service portal. + * The text that the field should end with */ longDesc: () => LocalizedString } } } - update_employee_file: { - groups: { - /** - * Employee Files - */ - '0': () => LocalizedString - } + 'within-the-next': { /** - * Update Employee File + * within the next */ displayName: () => LocalizedString /** - * Update employee file metadata + * Date is within the next N days */ shortDesc: () => LocalizedString /** - * Updates the metadata for an existing employee file, such as name, category, or sharing settings. + * Returns `True` if the date field falls within the specified number of days in the future */ longDesc: () => LocalizedString - options: { - employee_id: { - /** - * Employee ID - */ - displayName: () => LocalizedString - /** - * The employee who owns the file - */ - shortDesc: () => LocalizedString - /** - * The ID of the employee whose file you want to update. - */ - longDesc: () => LocalizedString - } - file_id: { + args: { + '0': { /** - * File ID + * Field */ displayName: () => LocalizedString /** - * The file to update + * Date field to check */ shortDesc: () => LocalizedString /** - * The ID of the file to update. + * The date field to check */ longDesc: () => LocalizedString } - name: { + '1': { /** - * Name + * Days */ displayName: () => LocalizedString /** - * New file name + * Number of days */ shortDesc: () => LocalizedString /** - * The new name for the file. + * The number of days in the future to check */ longDesc: () => LocalizedString } - category: { + } + } + 'within-the-last': { + /** + * within the last + */ + displayName: () => LocalizedString + /** + * Date is within the last N days + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the date field falls within the specified number of days in the past + */ + longDesc: () => LocalizedString + args: { + '0': { /** - * Category + * Field */ displayName: () => LocalizedString /** - * New category + * Date field to check */ shortDesc: () => LocalizedString /** - * Move the file to a different category. + * The date field to check */ longDesc: () => LocalizedString } - share_with_employee: { + '1': { /** - * Share with Employee + * Days */ displayName: () => LocalizedString /** - * Update sharing setting + * Number of days */ shortDesc: () => LocalizedString /** - * Whether to make this file visible to the employee. + * The number of days in the past to check */ longDesc: () => LocalizedString } } } - delete_employee_file: { - groups: { - /** - * Employee Files - */ - '0': () => LocalizedString - } + } + searchOptions: { + orderBy: { /** - * Delete Employee File + * Order By */ displayName: () => LocalizedString /** - * Delete an employee file + * Sort results by a specific field */ shortDesc: () => LocalizedString /** - * Permanently deletes a file from an employee record. This action cannot be undone. + * Define the field and direction to sort search results */ longDesc: () => LocalizedString - options: { - employee_id: { - /** - * Employee ID - */ - displayName: () => LocalizedString - /** - * The employee who owns the file - */ - shortDesc: () => LocalizedString - /** - * The ID of the employee whose file you want to delete. - */ - longDesc: () => LocalizedString - } - file_id: { - /** - * File ID - */ - displayName: () => LocalizedString - /** - * The file to delete - */ - shortDesc: () => LocalizedString - /** - * The ID of the file to delete. - */ - longDesc: () => LocalizedString + type: { + fields: { + column: { + /** + * Column + */ + displayName: () => LocalizedString + /** + * The column to sort by + */ + shortDesc: () => LocalizedString + /** + * The name of the column to use for sorting results + */ + longDesc: () => LocalizedString + } + ascending: { + /** + * Ascending + */ + displayName: () => LocalizedString + /** + * Sort in ascending order + */ + shortDesc: () => LocalizedString + /** + * When enabled, results are sorted in ascending order (A-Z, 0-9) + */ + longDesc: () => LocalizedString + } } } } - get_all_company_files: { - groups: { - /** - * Company Files - */ - '0': () => LocalizedString - } + group_id: { /** - * Get All Company Files + * Group */ displayName: () => LocalizedString /** - * List all company files + * The group to filter items by */ shortDesc: () => LocalizedString /** - * Retrieves all company files organized by category. Returns file metadata including name, size, upload date, and sharing status. + * Select a group within the board to filter items */ longDesc: () => LocalizedString - options: { - } } - download_company_file: { - groups: { - /** - * Company Files - */ - '0': () => LocalizedString - } + } + createOptions: { + group_id: { /** - * Download Company File + * Group */ displayName: () => LocalizedString /** - * Download a company file + * The group to create the item in */ shortDesc: () => LocalizedString /** - * Downloads a specific company file. Returns the file content as base64-encoded binary along with the MIME type. + * Select a group within the board where the new item will be created */ longDesc: () => LocalizedString - options: { - file_id: { + } + } + } + ZohoCRM: { + /** + * Zoho CRM + */ + displayName: () => LocalizedString + groups: { + /** + * CRM & Sales Management + */ + '0': () => LocalizedString + } + /** + * Connect to Zoho CRM to automate customer relationship management across all global data centers. + */ + shortDesc: () => LocalizedString + /** + * The Zoho CRM integration provides comprehensive actions and triggers to interact with the Zoho CRM API across all seven global data centers (US, AU, EU, IN, CN, JP, CA). Manage modules, records, users, and roles efficiently while automating your CRM workflows with support for custom modules, bulk operations, and real-time triggers. + */ + longDesc: () => LocalizedString + expressions: { + '&&': { + /** + * and (&&) + */ + displayName: () => LocalizedString + /** + * Returns True if all arguments are True + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if all arguments are `True` with logic short-circuiting + */ + longDesc: () => LocalizedString + args: { + '0': { /** - * File ID + * Condition */ displayName: () => LocalizedString /** - * The file to download + * Boolean condition to evaluate */ shortDesc: () => LocalizedString /** - * The ID of the company file to download. + * A boolean expression or condition that evaluates to True or False */ longDesc: () => LocalizedString } } } - upload_company_file: { - groups: { - /** - * Company Files - */ - '0': () => LocalizedString - } + '||': { /** - * Upload Company File + * or (||) */ displayName: () => LocalizedString /** - * Upload a company file + * Returns True if any argument is True */ shortDesc: () => LocalizedString /** - * Uploads a new file to the company files in BambooHR. The file will be placed in the specified category. + * Returns `True` if any argument is `True` with logic short-circuiting */ longDesc: () => LocalizedString - options: { - category: { + args: { + '0': { /** - * Category + * Condition */ displayName: () => LocalizedString /** - * File category + * Boolean condition to evaluate */ shortDesc: () => LocalizedString /** - * The category to place the file in. Categories are configured in BambooHR. + * A boolean expression or condition that evaluates to True or False */ longDesc: () => LocalizedString } - file: { + } + } + '==': { + /** + * equal (==) + */ + displayName: () => LocalizedString + /** + * Equality comparison + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the field value equals the specified value + */ + longDesc: () => LocalizedString + args: { + '0': { /** - * File + * Field */ displayName: () => LocalizedString /** - * The file to upload + * Field to compare */ shortDesc: () => LocalizedString /** - * The file to upload. Must include name, MIME type, and base64-encoded content. + * The field whose value will be compared */ longDesc: () => LocalizedString } - share_with_employees: { + '1': { /** - * Share with Employees + * Value */ displayName: () => LocalizedString /** - * Make file visible to employees + * Value to compare against */ shortDesc: () => LocalizedString /** - * Whether to make this file visible to all employees. + * The value to compare the field against */ longDesc: () => LocalizedString } } } - update_company_file: { - groups: { - /** - * Company Files - */ - '0': () => LocalizedString - } + '!=': { /** - * Update Company File + * not equal (!=) */ displayName: () => LocalizedString /** - * Update company file metadata + * Inequality comparison */ shortDesc: () => LocalizedString /** - * Updates the metadata for an existing company file, such as name, category, or sharing settings. + * Returns `True` if the field value does not equal the specified value */ longDesc: () => LocalizedString - options: { - file_id: { + args: { + '0': { /** - * File ID + * Field */ displayName: () => LocalizedString /** - * The file to update + * Field to compare */ shortDesc: () => LocalizedString /** - * The ID of the company file to update. + * The field whose value will be compared */ longDesc: () => LocalizedString } - name: { + '1': { /** - * Name + * Value */ displayName: () => LocalizedString /** - * New file name + * Value to compare against */ shortDesc: () => LocalizedString /** - * The new name for the file. + * The value to compare the field against */ longDesc: () => LocalizedString } - category: { + } + } + '>': { + /** + * greater than (>) + */ + displayName: () => LocalizedString + /** + * Greater than comparison + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the field value is greater than the specified value + */ + longDesc: () => LocalizedString + args: { + '0': { /** - * Category + * Field */ displayName: () => LocalizedString /** - * New category + * Field to compare */ shortDesc: () => LocalizedString /** - * Move the file to a different category. + * The field whose value will be compared */ longDesc: () => LocalizedString } - share_with_employees: { + '1': { /** - * Share with Employees + * Value */ displayName: () => LocalizedString /** - * Update sharing setting + * Value to compare against */ shortDesc: () => LocalizedString /** - * Whether to make this file visible to all employees. + * The value to compare the field against */ longDesc: () => LocalizedString } } } - delete_company_file: { - groups: { - /** - * Company Files - */ - '0': () => LocalizedString - } + '>=': { /** - * Delete Company File + * greater than or equal (>=) */ displayName: () => LocalizedString /** - * Delete a company file + * Greater than or equal comparison */ shortDesc: () => LocalizedString /** - * Permanently deletes a company file. This action cannot be undone. + * Returns `True` if the field value is greater than or equal to the specified value */ longDesc: () => LocalizedString - options: { - file_id: { + args: { + '0': { /** - * File ID + * Field */ displayName: () => LocalizedString /** - * The file to delete + * Field to compare */ shortDesc: () => LocalizedString /** - * The ID of the company file to delete. + * The field whose value will be compared + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Value + */ + displayName: () => LocalizedString + /** + * Value to compare against + */ + shortDesc: () => LocalizedString + /** + * The value to compare the field against */ longDesc: () => LocalizedString } } } - } - expressions: { - '&&': { - /** - * And - */ - displayName: () => LocalizedString - /** - * Logical AND operator - */ - shortDesc: () => LocalizedString - /** - * Combines multiple conditions where all must be true - */ - longDesc: () => LocalizedString - } - '||': { - /** - * Or - */ - displayName: () => LocalizedString - /** - * Logical OR operator - */ - shortDesc: () => LocalizedString - /** - * Combines multiple conditions where at least one must be true - */ - longDesc: () => LocalizedString - } - '==': { - /** - * Equals - */ - displayName: () => LocalizedString - /** - * Field equals value - */ - shortDesc: () => LocalizedString - /** - * Matches records where the field equals the specified value - */ - longDesc: () => LocalizedString - } - '!=': { - /** - * Not Equals - */ - displayName: () => LocalizedString - /** - * Field does not equal value - */ - shortDesc: () => LocalizedString - /** - * Matches records where the field does not equal the specified value - */ - longDesc: () => LocalizedString - } - '>': { - /** - * Greater Than - */ - displayName: () => LocalizedString - /** - * Field is greater than value - */ - shortDesc: () => LocalizedString - /** - * Matches records where the field value is greater than the specified value - */ - longDesc: () => LocalizedString - } - '>=': { - /** - * Greater Than or Equal - */ - displayName: () => LocalizedString - /** - * Field is greater than or equal to value - */ - shortDesc: () => LocalizedString - /** - * Matches records where the field value is greater than or equal to the specified value - */ - longDesc: () => LocalizedString - } '<': { /** - * Less Than - */ - displayName: () => LocalizedString - /** - * Field is less than value - */ - shortDesc: () => LocalizedString - /** - * Matches records where the field value is less than the specified value - */ - longDesc: () => LocalizedString - } - '<=': { - /** - * Less Than or Equal - */ - displayName: () => LocalizedString - /** - * Field is less than or equal to value - */ - shortDesc: () => LocalizedString - /** - * Matches records where the field value is less than or equal to the specified value - */ - longDesc: () => LocalizedString - } - contains: { - /** - * Contains - */ - displayName: () => LocalizedString - /** - * Field contains value - */ - shortDesc: () => LocalizedString - /** - * Matches records where the field contains the specified text (case-insensitive) - */ - longDesc: () => LocalizedString - } - 'is-set': { - /** - * Is Set - */ - displayName: () => LocalizedString - /** - * Field has a value - */ - shortDesc: () => LocalizedString - /** - * Matches records where the field has a value (is not empty) - */ - longDesc: () => LocalizedString - } - 'is-not-set': { - /** - * Is Not Set - */ - displayName: () => LocalizedString - /** - * Field has no value - */ - shortDesc: () => LocalizedString - /** - * Matches records where the field has no value (is empty) - */ - longDesc: () => LocalizedString - } - } - triggers: { - new_time_off_request: { - /** - * New Time Off Request + * less than (<) */ displayName: () => LocalizedString /** - * Triggers when a new time off request is submitted + * Less than comparison */ shortDesc: () => LocalizedString /** - * Fires when a new time off request is created in BambooHR with status "requested". Useful for building approval workflows or notifications. + * Returns `True` if the field value is less than the specified value */ longDesc: () => LocalizedString - options: { - employee_id: { + args: { + '0': { /** - * Employee ID + * Field */ displayName: () => LocalizedString /** - * Filter by employee + * Field to compare */ shortDesc: () => LocalizedString /** - * Only trigger for time off requests from a specific employee. + * The field whose value will be compared + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Value + */ + displayName: () => LocalizedString + /** + * Value to compare against + */ + shortDesc: () => LocalizedString + /** + * The value to compare the field against */ longDesc: () => LocalizedString } } } - new_time_off: { - /** - * New Time Off - */ - displayName: () => LocalizedString - /** - * Triggers when new approved time off appears - */ - shortDesc: () => LocalizedString - /** - * Fires when a new approved time off entry appears in the Who's Out list. This includes both employee time off and company holidays. - */ - longDesc: () => LocalizedString - options: { - } - } - new_employee: { + '<=': { /** - * New Employee + * less than or equal (<=) */ displayName: () => LocalizedString /** - * Triggers when a new employee is created + * Less than or equal comparison */ shortDesc: () => LocalizedString /** - * Fires when a new active employee is added to BambooHR. Returns basic employee information including name, email, department, and job title. + * Returns `True` if the field value is less than or equal to the specified value */ longDesc: () => LocalizedString - options: { + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Field to compare + */ + shortDesc: () => LocalizedString + /** + * The field whose value will be compared + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Value + */ + displayName: () => LocalizedString + /** + * Value to compare against + */ + shortDesc: () => LocalizedString + /** + * The value to compare the field against + */ + longDesc: () => LocalizedString + } } } - } - } - Baserow: { - /** - * Baserow - */ - displayName: () => LocalizedString - groups: { - /** - * Spreadsheets & Data Tables - */ - '0': () => LocalizedString - /** - * Databases & Backend Services - */ - '1': () => LocalizedString - } - /** - * Connect to Baserow to manage your database tables, rows, and files with powerful automation - */ - shortDesc: () => LocalizedString - /** - * The Baserow integration provides comprehensive access to your Baserow database operations. Create, read, update, and delete rows in your tables, upload files, and monitor new entries with real-time triggers. Whether you need to manage data, filter results, or track new records, this integration streamlines your Baserow workflow automation and database management. - */ - longDesc: () => LocalizedString - connectionMessage: { - /** - * Connect to Baserow - */ - title: () => LocalizedString - /** - * To connect to Baserow, you will need your **Baserow URL** and a **Database Token**. - - ## Getting Your Database Token - - 1. Log in to your Baserow instance - 2. Click on your **profile icon** in the top right corner - 3. Select **Settings** from the dropdown menu - 4. Navigate to **Database tokens** in the left sidebar - 5. Click **Create token** - 6. Give your token a descriptive name (e.g., "Qore Integration") - 7. Select the **workspace** the token should have access to - 8. Configure **table-level permissions** (create, read, update, delete) as needed - 9. Click **Create token** and copy the generated token - - ## Connection Details - - ### Baserow URL - The base URL of your Baserow instance: - - **Baserow Cloud**: Use `https://api.baserow.io` - - **Self-hosted**: Use your instance URL (e.g., `https://baserow.yourcompany.com`) - - ### Database Token - Your database token that grants access to specific workspaces and tables. Tokens are scoped to a single workspace with granular table-level permissions. - - **Note:** Database tokens provide more granular control than API tokens. Each token can be restricted to specific operations (create, read, update, delete) on individual tables within a workspace. - */ - content: () => LocalizedString - } - actions: { - create_row: { + like: { /** - * Create Row + * like */ displayName: () => LocalizedString /** - * Insert a new row into a Baserow table + * Contains text pattern */ shortDesc: () => LocalizedString /** - * Creates a new record in the specified Baserow table. The action dynamically presents the table schema, allowing you to provide values for each column. Optionally specify a row ID to insert the new row before it. Returns the newly created row with all its data. + * Returns `True` if the field value contains the specified text pattern */ longDesc: () => LocalizedString - options: { - table: { - /** - * Table - */ - displayName: () => LocalizedString - /** - * The table where the row will be inserted - */ - shortDesc: () => LocalizedString - /** - * Select the target Baserow table for inserting the new row. The available fields will be dynamically loaded based on the selected table schema. - */ - longDesc: () => LocalizedString - } - data: { + args: { + '0': { /** - * Row Data + * Field */ displayName: () => LocalizedString /** - * The data to insert into the new row + * Text field to search */ shortDesc: () => LocalizedString /** - * Provide values for the table columns. The structure is dynamically generated based on the selected table schema, showing all available columns with their data types and constraints. + * The text field to search within */ longDesc: () => LocalizedString } - before_row_id: { + '1': { /** - * Before Row ID + * Pattern */ displayName: () => LocalizedString /** - * Insert the new row before this row + * Text pattern to search for */ shortDesc: () => LocalizedString /** - * Optionally specify a row ID to insert the new row before it in the table order. Leave empty to append the row at the end. + * The text pattern to search for within the field */ longDesc: () => LocalizedString } } } - delete_row: { + 'not-like': { /** - * Delete Row + * not like */ displayName: () => LocalizedString /** - * Delete a specific row from a Baserow table + * Does not contain text pattern */ shortDesc: () => LocalizedString /** - * Removes a single row from a Baserow table by its ID. Use with caution as this operation is irreversible and permanently deletes the specified row. + * Returns `True` if the field value does not contain the specified text pattern */ longDesc: () => LocalizedString - options: { - table: { + args: { + '0': { /** - * Table + * Field */ displayName: () => LocalizedString /** - * The table to delete the row from + * Text field to search */ shortDesc: () => LocalizedString /** - * Select the Baserow table from which you want to delete a row. Ensure you have proper permissions for delete operations on this table. + * The text field to search within */ longDesc: () => LocalizedString } - row: { + '1': { /** - * Row + * Pattern */ displayName: () => LocalizedString /** - * The row to delete + * Text pattern to exclude */ shortDesc: () => LocalizedString /** - * Select the specific row to delete from the table by its ID. This row will be permanently removed. + * The text pattern that should not be present in the field */ longDesc: () => LocalizedString } } } - get_table_row: { + 'in': { /** - * Get Table Row + * in */ displayName: () => LocalizedString /** - * Retrieve a specific row from a Baserow table + * Value is in list */ shortDesc: () => LocalizedString /** - * Fetches detailed data for a single row in a Baserow table by its ID. Returns all column values for the specified row with dynamically loaded field types. + * Returns `True` if the field value matches any value in the provided list */ longDesc: () => LocalizedString - options: { - table: { + args: { + '0': { /** - * Table + * Field */ displayName: () => LocalizedString /** - * The table to retrieve the row from + * Field to check */ shortDesc: () => LocalizedString /** - * Select the Baserow table from which you want to retrieve a row. The available rows will be loaded based on this selection. + * The field whose value will be checked */ longDesc: () => LocalizedString } - row: { + '1': { /** - * Row + * Values */ displayName: () => LocalizedString /** - * The row to retrieve + * List of values to match */ shortDesc: () => LocalizedString /** - * Select the specific row to retrieve from the table by its ID. All data for this row will be returned. + * List of values to compare against */ longDesc: () => LocalizedString } } } - get_table_fields: { + 'not-in': { /** - * Get Table Fields + * not in */ displayName: () => LocalizedString /** - * Retrieve all field definitions from a Baserow table + * Value is not in list */ shortDesc: () => LocalizedString /** - * Fetches comprehensive metadata for all fields in a specific Baserow table including field types, order, descriptions, default values, and properties. This action helps you understand the structure and configuration of your database tables. + * Returns `True` if the field value does not match any value in the provided list */ longDesc: () => LocalizedString - options: { - table: { + args: { + '0': { /** - * Table + * Field */ displayName: () => LocalizedString /** - * The table to retrieve fields from + * Field to check */ shortDesc: () => LocalizedString /** - * Select the Baserow table whose field definitions you want to fetch. All fields and their configurations will be returned. + * The field whose value will be checked + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Values + */ + displayName: () => LocalizedString + /** + * List of values to exclude + */ + shortDesc: () => LocalizedString + /** + * List of values that should not match */ longDesc: () => LocalizedString } } } - list_rows: { + between: { /** - * List Rows + * between */ displayName: () => LocalizedString /** - * Query and retrieve rows from a Baserow table + * Value is between two values */ shortDesc: () => LocalizedString /** - * Fetches rows from a Baserow table with support for filtering, sorting, pagination, and search. Returns a list of records matching your query criteria along with total count and pagination information. + * Returns `True` if the field value is between two specified values (inclusive) */ longDesc: () => LocalizedString - options: { - table: { + args: { + '0': { /** - * Table + * Field */ displayName: () => LocalizedString /** - * The table to query + * Field to check */ shortDesc: () => LocalizedString /** - * Select the Baserow table from which you want to retrieve rows. The available columns for filtering and ordering will be loaded based on this selection. + * The field whose value will be checked */ longDesc: () => LocalizedString } - page: { + '1': { /** - * Page + * Lower bound */ displayName: () => LocalizedString /** - * Page number for pagination + * Minimum value */ shortDesc: () => LocalizedString /** - * Specify which page of results to retrieve. Used in combination with size for pagination through large datasets. Defaults to page 1. + * The minimum value (inclusive) */ longDesc: () => LocalizedString } - size: { + '2': { /** - * Size + * Upper bound */ displayName: () => LocalizedString /** - * Number of rows per page + * Maximum value */ shortDesc: () => LocalizedString /** - * Specify the maximum number of rows to retrieve per page. Defaults to 100 rows if not specified. + * The maximum value (inclusive) */ longDesc: () => LocalizedString } - search: { + } + } + 'not-between': { + /** + * not between + */ + displayName: () => LocalizedString + /** + * Value is not between two values + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the field value is not between two specified values + */ + longDesc: () => LocalizedString + args: { + '0': { /** - * Search + * Field */ displayName: () => LocalizedString /** - * Search term to filter rows + * Field to check */ shortDesc: () => LocalizedString /** - * Provide a search term to filter rows across all text fields in the table. Only rows containing this term will be returned. + * The field whose value will be checked */ longDesc: () => LocalizedString } - order: { + '1': { /** - * Order + * Lower bound */ displayName: () => LocalizedString /** - * Sort the results by a specific field + * Minimum value to exclude */ shortDesc: () => LocalizedString /** - * Define how to sort the retrieved rows by specifying a field and sort direction (ascending or descending). + * The lower boundary for exclusion */ longDesc: () => LocalizedString - type: { - fields: { - field: { - /** - * Field - */ - displayName: () => LocalizedString - /** - * The field to sort by - */ - shortDesc: () => LocalizedString - /** - * Select the table field used for sorting the results. - */ - longDesc: () => LocalizedString - } - direction: { - /** - * Direction - */ - displayName: () => LocalizedString - /** - * Sort direction - */ - shortDesc: () => LocalizedString - /** - * Choose ascending (+) to sort from lowest to highest, or descending (-) to sort from highest to lowest. - */ - longDesc: () => LocalizedString - } - } - } } - filter: { + '2': { /** - * Filter + * Upper bound */ displayName: () => LocalizedString /** - * Filter rows based on conditions + * Maximum value to exclude */ shortDesc: () => LocalizedString /** - * Apply multiple filter conditions to retrieve only rows that match specific criteria. Supports various comparison operators and logical combinations. + * The upper boundary for exclusion */ longDesc: () => LocalizedString - type: { - fields: { - filters: { - /** - * Filters - */ - displayName: () => LocalizedString - /** - * List of filter conditions - */ - shortDesc: () => LocalizedString - /** - * Define one or more filter conditions. Each condition specifies a field, operator, and value to match against. - */ - longDesc: () => LocalizedString - type: { - element_type: { - fields: { - type: { - /** - * Type - */ - displayName: () => LocalizedString - /** - * The comparison operator - */ - shortDesc: () => LocalizedString - /** - * Choose the comparison operator for this filter condition (equal, contains, empty, etc.). - */ - longDesc: () => LocalizedString - } - field: { - /** - * Field - */ - displayName: () => LocalizedString - /** - * The field to filter on - */ - shortDesc: () => LocalizedString - /** - * Select the table field to apply this filter condition to. - */ - longDesc: () => LocalizedString - } - value: { - /** - * Value - */ - displayName: () => LocalizedString - /** - * The value to compare against - */ - shortDesc: () => LocalizedString - /** - * The value to compare the field against using the selected operator. - */ - longDesc: () => LocalizedString - } - } - } - } - } - filter_type: { - /** - * Filter Type - */ - displayName: () => LocalizedString - /** - * Logical operator for combining filters - */ - shortDesc: () => LocalizedString - /** - * Choose AND to require all filter conditions to match, or OR to match any filter condition. - */ - longDesc: () => LocalizedString - } - } - } } } } - list_tables: { - /** - * List Tables - */ - displayName: () => LocalizedString - /** - * Get all tables in your Baserow database - */ - shortDesc: () => LocalizedString - /** - * Retrieves a list of all tables from your Baserow database with their basic metadata including table IDs, names, order, and associated database IDs. - */ - longDesc: () => LocalizedString - } - update_row: { + 'is-null': { /** - * Update Row + * is null */ displayName: () => LocalizedString /** - * Update an existing row in a Baserow table + * Field is null */ shortDesc: () => LocalizedString /** - * Updates the values of an existing row in a Baserow table. The action dynamically presents the table schema, allowing you to modify values for each column. Returns the updated row with all its current data. + * Returns `True` if the field value is null or empty */ longDesc: () => LocalizedString - options: { - table: { - /** - * Table - */ - displayName: () => LocalizedString - /** - * The table containing the row to update - */ - shortDesc: () => LocalizedString - /** - * Select the Baserow table containing the row you want to update. The available fields will be dynamically loaded based on the table schema. - */ - longDesc: () => LocalizedString - } - row: { - /** - * Row - */ - displayName: () => LocalizedString - /** - * The row to update - */ - shortDesc: () => LocalizedString - /** - * Select the specific row to update by its ID. The current values of this row will be modified. - */ - longDesc: () => LocalizedString - } - data: { + args: { + '0': { /** - * Row Data + * Field */ displayName: () => LocalizedString /** - * The new data for the row + * Field to check */ shortDesc: () => LocalizedString /** - * Provide new values for the table columns you want to update. The structure is dynamically generated based on the selected table schema. + * The field to check for null value */ longDesc: () => LocalizedString } } } - upload_file: { + 'is-not-null': { /** - * Upload File + * is not null */ displayName: () => LocalizedString /** - * Upload a file to Baserow storage + * Field is not null */ shortDesc: () => LocalizedString /** - * Uploads a file to Baserow's file storage system. Returns the uploaded file's metadata including URL, size, MIME type, and generated thumbnails for images. The uploaded file can then be referenced in file fields within your tables. + * Returns `True` if the field value is not null or empty */ longDesc: () => LocalizedString - options: { - file: { + args: { + '0': { /** - * File + * Field */ displayName: () => LocalizedString /** - * The file to upload + * Field to check */ shortDesc: () => LocalizedString /** - * Select or provide the file to upload to Baserow storage. The file will be stored and available for use in file fields. + * The field to check for non-null value */ longDesc: () => LocalizedString } @@ -144819,138 +142973,120 @@ export type TranslationFunctions = { } } triggers: { - new_document: { + new_record: { /** - * New Row + * New Record */ displayName: () => LocalizedString /** - * Triggers when a new row is added to a Baserow table + * Triggers when a new record is created in a Zoho CRM module */ shortDesc: () => LocalizedString /** - * Monitors a Baserow table for new rows and triggers when new records are inserted. Supports optional filtering and search to trigger only for rows matching specific criteria. + * Monitors a specified Zoho CRM module for newly created records and fires when a new record is detected. The trigger polls for records sorted by Created Time in descending order. You can optionally filter records by phone, email, keywords, or specific field values to only trigger for records matching your criteria. */ longDesc: () => LocalizedString options: { - table: { + module: { /** - * Table + * Module */ displayName: () => LocalizedString /** - * The table to monitor for new rows + * The Zoho CRM module to monitor for new records */ shortDesc: () => LocalizedString /** - * Select the Baserow table you want to monitor. The trigger will fire whenever new rows are inserted into this table. + * Select the Zoho CRM module (such as Leads, Contacts, Deals, Accounts, or custom modules) where you want to monitor for newly created records. Use the module API name as returned by the Modules Metadata API. */ longDesc: () => LocalizedString } - search: { + phone: { /** - * Search + * Phone Filter */ displayName: () => LocalizedString /** - * Optional search term to filter new rows + * Filter records by phone number */ shortDesc: () => LocalizedString /** - * Provide a search term to trigger only for new rows that contain this term in any text field. Leave empty to trigger for all new rows. + * Optional phone number to search for in records. When specified, only records containing this phone number will trigger the event. This uses the Zoho CRM search API to find matching records. */ longDesc: () => LocalizedString } - filter: { + email: { /** - * Filter + * Email Filter */ displayName: () => LocalizedString /** - * Optional conditions to filter new rows + * Filter records by email address */ shortDesc: () => LocalizedString /** - * Apply filter conditions to trigger only for new rows matching specific criteria. Leave empty to trigger for all new rows. + * Optional email address to search for in records. When specified, only records containing this email address will trigger the event. This uses the Zoho CRM search API to find matching records. */ longDesc: () => LocalizedString - type: { - fields: { - filters: { - /** - * Filters - */ - displayName: () => LocalizedString - /** - * List of filter conditions - */ - shortDesc: () => LocalizedString - /** - * Define one or more filter conditions. Only new rows matching these conditions will trigger the event. - */ - longDesc: () => LocalizedString - type: { - element_type: { - fields: { - type: { - /** - * Type - */ - displayName: () => LocalizedString - /** - * The comparison operator - */ - shortDesc: () => LocalizedString - /** - * Choose the comparison operator for this filter condition. - */ - longDesc: () => LocalizedString - } - field: { - /** - * Field - */ - displayName: () => LocalizedString - /** - * The field to filter on - */ - shortDesc: () => LocalizedString - /** - * Select the table field to apply this filter condition to. - */ - longDesc: () => LocalizedString - } - value: { - /** - * Value - */ - displayName: () => LocalizedString - /** - * The value to match - */ - shortDesc: () => LocalizedString - /** - * The value to compare against. Only new rows matching this condition will trigger the event. - */ - longDesc: () => LocalizedString - } - } - } + } + word: { + /** + * Keyword Search + */ + displayName: () => LocalizedString + /** + * Filter records by keyword + */ + shortDesc: () => LocalizedString + /** + * Optional keyword to search for across all searchable fields in records. When specified, only records containing this keyword will trigger the event. This uses the Zoho CRM search API to perform a comprehensive text search. + */ + longDesc: () => LocalizedString + } + field_filter: { + /** + * Field Filters + */ + displayName: () => LocalizedString + /** + * Filter records by specific field values + */ + shortDesc: () => LocalizedString + /** + * Optional list of field-value pairs to create search criteria. When specified, only records where ALL specified fields match their corresponding values will trigger the event. Uses the "equals" operator for each field comparison. + */ + longDesc: () => LocalizedString + type: { + element_type: { + fields: { + field: { + /** + * Field Name + */ + displayName: () => LocalizedString + /** + * The API name of the field to filter on + */ + shortDesc: () => LocalizedString + /** + * Select or enter the field API name from the module. Available field names can be retrieved using the Fields Metadata API. The field must be searchable to be used in filtering. + */ + longDesc: () => LocalizedString + } + value: { + /** + * Field Value + */ + displayName: () => LocalizedString + /** + * The value that the field must equal + */ + shortDesc: () => LocalizedString + /** + * Enter the exact value that the field must equal for the record to match. The comparison uses the "equals" operator, so the field value must match this value exactly. + */ + longDesc: () => LocalizedString } - } - filter_type: { - /** - * Filter Type - */ - displayName: () => LocalizedString - /** - * Logical operator for combining filters - */ - shortDesc: () => LocalizedString - /** - * Choose AND to require all filter conditions to match, or OR to match any filter condition. - */ - longDesc: () => LocalizedString } } } @@ -144958,1814 +143094,2129 @@ export type TranslationFunctions = { } } } - searchOptions: { - orderBy: { + actions: { + create_record: { /** - * Order By + * Create Record */ displayName: () => LocalizedString /** - * Sort results by a specific field + * Create a new record in a Zoho CRM module */ shortDesc: () => LocalizedString /** - * Define the field and direction to sort search results + * Creates a new record in the specified Zoho CRM module with the provided field values. Returns the record ID along with timestamps for creation and modification. The Created_By and Modified_By fields contain the user information who created the record. Supports all standard and custom modules except Documents and Projects. */ longDesc: () => LocalizedString - type: { - fields: { - column: { - /** - * Column - */ - displayName: () => LocalizedString - /** - * The column to sort by - */ - shortDesc: () => LocalizedString - /** - * The name of the column to use for sorting results - */ - longDesc: () => LocalizedString - } - ascending: { - /** - * Ascending - */ - displayName: () => LocalizedString - /** - * Sort in ascending order - */ - shortDesc: () => LocalizedString - /** - * When enabled, results are sorted in ascending order (A-Z, 0-9) - */ - longDesc: () => LocalizedString - } + options: { + module: { + /** + * Module + */ + displayName: () => LocalizedString + /** + * The Zoho CRM module where the record will be created + */ + shortDesc: () => LocalizedString + /** + * Select the target Zoho CRM module (such as Leads, Contacts, Deals, Accounts, Products, Vendors, or custom modules) where you want to create the new record. Use the Modules API to get the list of available modules and their API names. + */ + longDesc: () => LocalizedString } - } - } - } - expressions: { - '&&': { - /** - * and (&&) - */ - displayName: () => LocalizedString - /** - * Returns True if all arguments are True - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if all arguments are `True` with logic short-circuiting - */ - longDesc: () => LocalizedString - args: { - '0': { + properties: { /** - * Condition + * Record Properties */ displayName: () => LocalizedString /** - * Boolean condition to evaluate + * Field values for the new record */ shortDesc: () => LocalizedString /** - * A boolean expression or condition that evaluates to True or False + * Provide the field values for the new record as key-value pairs where keys are field API names. Available fields and their types are dynamically loaded based on the selected module. Required fields must be included, and field values must match their expected data types (text, number, date, picklist, lookup, etc.). */ longDesc: () => LocalizedString } } } - '||': { + update_record: { /** - * or (||) + * Update Record */ displayName: () => LocalizedString /** - * Returns True if any argument is True + * Update an existing record in a Zoho CRM module */ shortDesc: () => LocalizedString /** - * Returns `True` if any argument is `True` with logic short-circuiting + * Updates an existing record in the specified Zoho CRM module with the provided field values. Returns the record ID along with updated timestamps for modification. Only the fields you specify will be updated; other fields will remain unchanged. The record must exist and the user must have update permissions for the module. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + module: { /** - * Condition + * Module */ displayName: () => LocalizedString /** - * Boolean condition to evaluate + * The Zoho CRM module containing the record */ shortDesc: () => LocalizedString /** - * A boolean expression or condition that evaluates to True or False + * Select the Zoho CRM module (such as Leads, Contacts, Deals, Accounts, or custom modules) that contains the record you want to update. The module must support API operations and the user must have appropriate permissions. */ longDesc: () => LocalizedString } - } - } - '==': { - /** - * equal (==) - */ - displayName: () => LocalizedString - /** - * Equality comparison - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field value equals the specified value - */ - longDesc: () => LocalizedString - args: { - '0': { + record_id: { /** - * Field + * Record ID */ displayName: () => LocalizedString /** - * Field to compare + * The unique identifier of the record to update */ shortDesc: () => LocalizedString /** - * The field whose value will be compared + * Enter or select the unique record ID of the record you want to update. Record IDs can be retrieved using the Get Records API or from webhook notifications. The record must exist in the specified module. */ longDesc: () => LocalizedString } - '1': { + properties: { /** - * Value + * Updated Properties */ displayName: () => LocalizedString /** - * Value to compare against + * Field values to update on the record */ shortDesc: () => LocalizedString /** - * The value to compare the field against + * Provide the field values you want to update as key-value pairs where keys are field API names. Only include the fields you want to change; unspecified fields will retain their current values. Field values must match their expected data types and validation rules. */ longDesc: () => LocalizedString } } } - '!=': { + delete_record: { /** - * not equal (!=) + * Delete Record */ displayName: () => LocalizedString /** - * Inequality comparison + * Delete a record from a Zoho CRM module */ shortDesc: () => LocalizedString /** - * Returns `True` if the field value does not equal the specified value + * Permanently deletes a specific record from the specified Zoho CRM module using its unique record ID. If the module has the Recycle Bin feature enabled, the deleted record will be moved to the Recycle Bin and can be restored. Otherwise, the deletion is permanent. The user must have delete permissions for the module. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + module: { /** - * Field + * Module */ displayName: () => LocalizedString /** - * Field to compare + * The Zoho CRM module containing the record */ shortDesc: () => LocalizedString /** - * The field whose value will be compared + * Select the Zoho CRM module (such as Leads, Contacts, Deals, Accounts, or custom modules) that contains the record you want to delete. The module must support API operations and the user must have delete permissions. */ longDesc: () => LocalizedString } - '1': { + record_id: { /** - * Value + * Record ID */ displayName: () => LocalizedString /** - * Value to compare against + * The unique identifier of the record to delete */ shortDesc: () => LocalizedString /** - * The value to compare the field against + * Enter or select the unique record ID of the record you want to delete. Record IDs can be retrieved using the Get Records API. Deleting a record that has already been deleted will result in an error. */ longDesc: () => LocalizedString } } } - '>': { + get_record: { /** - * higher than (>) + * Get Record */ displayName: () => LocalizedString /** - * Greater than comparison + * Retrieve a single record from a Zoho CRM module */ shortDesc: () => LocalizedString /** - * Returns `True` if the field value is greater than the specified number + * Fetches detailed information about a specific record from the specified Zoho CRM module using its unique record ID. Returns all field values for the record including standard fields (Created_Time, Modified_Time, Created_By, Modified_By) and custom fields. Subform data, multi-select lookup fields, and multi-user lookup fields are also included in the response. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + module: { /** - * Field + * Module */ displayName: () => LocalizedString /** - * Numeric field to compare + * The Zoho CRM module containing the record */ shortDesc: () => LocalizedString /** - * The numeric field whose value will be compared + * Select the Zoho CRM module (such as Leads, Contacts, Deals, Accounts, or custom modules) that contains the record you want to retrieve. The module must support API operations and the user must have read permissions. */ longDesc: () => LocalizedString } - '1': { + record_id: { /** - * Number + * Record ID */ displayName: () => LocalizedString /** - * Number to compare against + * The unique identifier of the record to retrieve */ shortDesc: () => LocalizedString /** - * The numeric value to compare the field against + * Enter or select the unique record ID of the record you want to fetch. Record IDs can be obtained from the Get Records API, search results, or webhook notifications. The record must exist in the specified module. */ longDesc: () => LocalizedString } } } - '>=': { + list_records: { /** - * higher than or equal (>=) + * List Records */ displayName: () => LocalizedString /** - * Greater than or equal comparison + * Retrieve multiple records from a Zoho CRM module */ shortDesc: () => LocalizedString /** - * Returns `True` if the field value is greater than or equal to the specified number + * Fetches a list of records from the specified Zoho CRM module with support for field selection, pagination, sorting, and filtering. You can specify which fields to return (maximum 50 field API names), sort records by a field in ascending or descending order, and navigate through pages using tokens. Returns both the records data and pagination tokens for retrieving subsequent pages. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + module: { /** - * Field + * Module */ displayName: () => LocalizedString /** - * Numeric field to compare + * The Zoho CRM module to retrieve records from */ shortDesc: () => LocalizedString /** - * The numeric field whose value will be compared + * Select the Zoho CRM module (such as Leads, Contacts, Deals, Accounts, or custom modules) from which you want to retrieve records. The module must support API operations and the user must have read permissions. */ longDesc: () => LocalizedString } - '1': { + fields: { /** - * Number + * Fields to Return */ displayName: () => LocalizedString /** - * Number to compare against + * Specify which fields to include in the response */ shortDesc: () => LocalizedString /** - * The numeric value to compare the field against + * Select the field API names you want to retrieve for each record. You can include a maximum of 50 field API names. Use the Fields Metadata API to get the list of available fields. By default, only the ID field is returned. Add fields like Last_Name, Email, Created_Time, or custom field names as needed. */ longDesc: () => LocalizedString } - } - } - '<': { - /** - * lower than (<) - */ - displayName: () => LocalizedString - /** - * Less than comparison - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field value is less than the specified number - */ - longDesc: () => LocalizedString - args: { - '0': { + per_page: { /** - * Field + * Records Per Page */ displayName: () => LocalizedString /** - * Numeric field to compare + * Number of records to return per page */ shortDesc: () => LocalizedString /** - * The numeric field whose value will be compared + * Specify how many records to return in a single API request. Valid values are 1 to 200. The default value is 20. Use this parameter along with page_token for pagination through large result sets. */ longDesc: () => LocalizedString } - '1': { + page_token: { /** - * Number + * Page Token */ displayName: () => LocalizedString /** - * Number to compare against + * Token for retrieving the next page of results */ shortDesc: () => LocalizedString /** - * The numeric value to compare the field against + * Use the next_page_token value from a previous response to retrieve the next page of records. Leave this empty for the first page. The page_token is bound to the parameters used in the request, so do not change other parameters when using a token. */ longDesc: () => LocalizedString } - } - } - '<=': { - /** - * lower than or equal (<=) - */ - displayName: () => LocalizedString - /** - * Less than or equal comparison - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field value is less than or equal to the specified number - */ - longDesc: () => LocalizedString - args: { - '0': { + ids: { /** - * Field + * Record IDs */ displayName: () => LocalizedString /** - * Numeric field to compare + * Filter by specific record IDs */ shortDesc: () => LocalizedString /** - * The numeric field whose value will be compared + * Optional list of specific record IDs to retrieve. When provided, only records with these IDs will be returned. This is useful for fetching a specific set of records rather than paginating through all records. */ longDesc: () => LocalizedString } - '1': { + sort: { /** - * Number + * Sort Configuration */ displayName: () => LocalizedString /** - * Number to compare against + * Configure how to sort the returned records */ shortDesc: () => LocalizedString /** - * The numeric value to compare the field against + * Specify how records should be sorted in the response. You can sort by fields like id, Created_Time, or Modified_Time in either ascending (oldest first) or descending (newest first) order. */ longDesc: () => LocalizedString + type: { + fields: { + sort_by: { + /** + * Sort By Field + */ + displayName: () => LocalizedString + /** + * The field to use for sorting records + */ + shortDesc: () => LocalizedString + /** + * Select or enter the field API name to sort records by. Common options include id, Created_Time, and Modified_Time. You can also use custom field API names that support sorting. + */ + longDesc: () => LocalizedString + } + order: { + /** + * Sort Order + */ + displayName: () => LocalizedString + /** + * Sort in ascending or descending order + */ + shortDesc: () => LocalizedString + /** + * Choose whether to sort records in ascending order (asc - oldest first) or descending order (desc - newest first). The default value is descending. + */ + longDesc: () => LocalizedString + } + } + } } } } - contains: { + list_modules: { /** - * contains + * List Modules */ displayName: () => LocalizedString /** - * Contains text + * Retrieve all available modules in Zoho CRM */ shortDesc: () => LocalizedString /** - * Returns `True` if the field contains the specified text + * Fetches metadata for all modules in your Zoho CRM organization, including both standard modules (Leads, Contacts, Deals, Accounts, etc.) and custom modules. Returns comprehensive details including module permissions, API names, display labels, and capabilities like whether the module is creatable, editable, deletable, or supports features like global search and quick create. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + status: { /** - * Field + * Module Status Filter */ displayName: () => LocalizedString /** - * Text field to search + * Filter modules by their status */ shortDesc: () => LocalizedString /** - * The text field to search within + * Optional filter to retrieve only modules with specific statuses. Options include: visible (active modules shown in the UI), user_hidden (modules hidden by users), system_hidden (modules hidden by the system), and scheduled_for_deletion (modules marked for deletion). When not specified, all modules are returned. */ longDesc: () => LocalizedString } - '1': { + } + } + list_fields: { + /** + * List Module Fields + */ + displayName: () => LocalizedString + /** + * Retrieve field metadata for a Zoho CRM module + */ + shortDesc: () => LocalizedString + /** + * Fetches comprehensive metadata about all fields in a specific Zoho CRM module including field types, labels, API names, data types, validation rules, picklist values, lookup configurations, and permissions. This information is essential for understanding module structure, building dynamic forms, or validating data before creating or updating records. + */ + longDesc: () => LocalizedString + options: { + module: { /** - * Text + * Module */ displayName: () => LocalizedString /** - * Text to search for + * The Zoho CRM module to retrieve fields from */ shortDesc: () => LocalizedString /** - * The text string to search for within the field + * Select the Zoho CRM module whose field metadata you want to retrieve. The API returns detailed information about all fields including standard fields (system-defined) and custom fields (user-defined) in the module. */ longDesc: () => LocalizedString } } } - 'contains-not': { + list_users: { /** - * doesn't contain + * List Users */ displayName: () => LocalizedString /** - * Does not contain text + * Retrieve users from your Zoho CRM organization */ shortDesc: () => LocalizedString /** - * Returns `True` if the field does not contain the specified text + * Fetches a list of users in your Zoho CRM organization with support for pagination and filtering by user type. Returns comprehensive user information including name, email, role, profile, timezone, locale settings, customization preferences, and account status. Use the type parameter to filter users based on their profile and status. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + per_page: { /** - * Field + * Users Per Page */ displayName: () => LocalizedString /** - * Text field to search + * Number of users to return per page */ shortDesc: () => LocalizedString /** - * The text field to search within + * Specify how many users to return in a single API request. Valid values are 1 to 200. The default value is 20. Use this parameter along with the page parameter for pagination through large result sets. */ longDesc: () => LocalizedString } - '1': { + page: { /** - * Text + * Page Number */ displayName: () => LocalizedString /** - * Text to exclude + * The page number for pagination */ shortDesc: () => LocalizedString /** - * The text string that should not be present in the field + * Specify which page of results to retrieve, starting from 1 for the first page. Use this parameter along with per_page to navigate through multiple pages of user data. + */ + longDesc: () => LocalizedString + } + type: { + /** + * User Type Filter + */ + displayName: () => LocalizedString + /** + * Filter users by type or status + */ + shortDesc: () => LocalizedString + /** + * Optional filter to retrieve specific categories of users. Options include: AllUsers (both active and inactive), ActiveUsers (only active users), DeactiveUsers (deactivated users), ConfirmedUsers (users who confirmed their accounts), NotConfirmedUsers (unconfirmed users), DeletedUsers (deleted users), ActiveConfirmedUsers (active and confirmed), AdminUsers (users with Administrator privileges), ActiveConfirmedAdmins (active confirmed administrators), and CurrentUser (the currently authenticated CRM user). */ longDesc: () => LocalizedString } } } - 'contains-word': { + list_tags: { /** - * contains word + * List Tags */ displayName: () => LocalizedString /** - * Contains whole word + * Retrieve tags available in a Zoho CRM module */ shortDesc: () => LocalizedString /** - * Returns `True` if the field contains the specified word as a complete word + * Fetches all tags that have been created for a specific Zoho CRM module. Tags are labels used to categorize and organize records within a module for easier searching and filtering. Each tag includes its name, ID, color code, and metadata about when it was created and modified. You can add a maximum of 100 tags per module and 10 tags per record. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + module: { /** - * Field + * Module */ displayName: () => LocalizedString /** - * Text field to search + * The Zoho CRM module to retrieve tags from */ shortDesc: () => LocalizedString /** - * The text field to search within + * Select the Zoho CRM module (such as Leads, Contacts, Deals, or custom modules) whose tags you want to retrieve. Each module maintains its own set of tags. */ longDesc: () => LocalizedString } - '1': { + my_tags: { /** - * Word + * My Tags Only */ displayName: () => LocalizedString /** - * Word to search for + * Retrieve only tags created by you */ shortDesc: () => LocalizedString /** - * The complete word to search for within the field + * When set to true, only tags created by the current user will be returned. When set to false or not specified, all tags in the module will be returned regardless of who created them. */ longDesc: () => LocalizedString } } } - 'doesnt-contain-word': { + add_tags_to_records: { /** - * doesn't contain word + * Add Tags to Records */ displayName: () => LocalizedString /** - * Does not contain whole word + * Add tags to one or more records in a module */ shortDesc: () => LocalizedString /** - * Returns `True` if the field does not contain the specified word as a complete word + * Adds one or more tags to specified records in a Zoho CRM module. Tags are labels that help categorize and organize records for easier management, filtering, and searching. You can add up to 10 tags per record and a maximum of 100 tags can exist per module. Returns the count of successfully tagged records and locked records that could not be tagged. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + module: { /** - * Field + * Module */ displayName: () => LocalizedString /** - * Text field to search + * The Zoho CRM module containing the records */ shortDesc: () => LocalizedString /** - * The text field to search within + * Select the Zoho CRM module (such as Leads, Contacts, Deals, Accounts, or custom modules) that contains the records you want to tag. Tags are module-specific and must exist in the module before they can be added to records. */ longDesc: () => LocalizedString } - '1': { + tags: { /** - * Word + * Tags to Add */ displayName: () => LocalizedString /** - * Word to exclude + * List of tags to add to the records */ shortDesc: () => LocalizedString /** - * The complete word that should not be present in the field + * Specify the tags you want to add to the records. Each tag should include an ID and name. The tag ID takes precedence over the name if both are provided. You can optionally include a color_code (hex value). Use the List Tags action to retrieve available tags and their IDs. */ longDesc: () => LocalizedString + type: { + element_type: { + fields: { + id: { + /** + * Tag ID + */ + displayName: () => LocalizedString + /** + * The unique identifier of the tag + */ + shortDesc: () => LocalizedString + /** + * The unique ID of an existing tag in the module. This ID takes precedence over the name field. Use the List Tags action to retrieve tag IDs. The tag must already exist in the module. + */ + longDesc: () => LocalizedString + } + name: { + /** + * Tag Name + */ + displayName: () => LocalizedString + /** + * The display name of the tag + */ + shortDesc: () => LocalizedString + /** + * The display name of the tag. When both ID and name are provided, the ID takes precedence. If only the name is provided, the system will look up the tag by name. + */ + longDesc: () => LocalizedString + } + color_code: { + /** + * Color Code + */ + displayName: () => LocalizedString + /** + * Optional hexadecimal color code for the tag + */ + shortDesc: () => LocalizedString + /** + * Optional hexadecimal color code for visual identification of the tag (e.g., #F17574, #57B1FD). The allowed color codes are predefined in Zoho CRM. If not specified or set to null, the tag will use its default color. + */ + longDesc: () => LocalizedString + } + } + } + } } - } - } - 'length-is-lower-than': { - /** - * length is lower than - */ - displayName: () => LocalizedString - /** - * Text length is less than - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the length of the text field is less than the specified number - */ - longDesc: () => LocalizedString - args: { - '0': { + records: { /** - * Field + * Record IDs */ displayName: () => LocalizedString /** - * Text field to measure + * IDs of the records to tag */ shortDesc: () => LocalizedString /** - * The text field whose length will be measured + * List of unique record IDs to which you want to add tags. You can specify a maximum of 500 record IDs per API call. Use the Get Records API or search API to retrieve valid record IDs. */ longDesc: () => LocalizedString } - '1': { + over_write: { /** - * Length + * Overwrite Existing Tags */ displayName: () => LocalizedString /** - * Maximum length + * Replace all existing tags on the records */ shortDesc: () => LocalizedString /** - * The maximum length the field should be less than + * When set to true, replaces all existing tags on the specified records with the new tags. When set to false (default), adds the new tags while keeping existing tags. Use this option carefully as setting it to true will remove all current tags. */ longDesc: () => LocalizedString } } } - empty: { + } + searchOptions: { + orderBy: { /** - * is empty + * Order By */ displayName: () => LocalizedString /** - * Field is empty + * Sort results by a specific field */ shortDesc: () => LocalizedString /** - * Returns `True` if the field is empty or has no value + * Define the field and direction to sort search results */ longDesc: () => LocalizedString - args: { - '0': { - /** - * Field - */ - displayName: () => LocalizedString - /** - * Field to check - */ - shortDesc: () => LocalizedString - /** - * The field to check for emptiness - */ - longDesc: () => LocalizedString + type: { + fields: { + column: { + /** + * Column + */ + displayName: () => LocalizedString + /** + * The column to sort by + */ + shortDesc: () => LocalizedString + /** + * The name of the column to use for sorting results + */ + longDesc: () => LocalizedString + } + ascending: { + /** + * Ascending + */ + displayName: () => LocalizedString + /** + * Sort in ascending order + */ + shortDesc: () => LocalizedString + /** + * When enabled, results are sorted in ascending order (A-Z, 0-9) + */ + longDesc: () => LocalizedString + } } } } - 'not-empty': { + } + upsertOptions: { + duplicate_check_fields: { /** - * is not empty + * Duplicate Check Fields */ displayName: () => LocalizedString /** - * Field is not empty + * Fields to check for duplicate records */ shortDesc: () => LocalizedString /** - * Returns `True` if the field has a value + * A list of field API names used to check for duplicate records during upsert. If a record with matching values for these fields exists, it will be updated; otherwise, a new record will be created. */ longDesc: () => LocalizedString - args: { - '0': { - /** - * Field - */ - displayName: () => LocalizedString - /** - * Field to check - */ - shortDesc: () => LocalizedString - /** - * The field to check for a value - */ - longDesc: () => LocalizedString - } - } } - 'date-is': { + } + } + Firebase: { + /** + * Firebase + */ + displayName: () => LocalizedString + groups: { + /** + * Databases & Backend Services + */ + '0': () => LocalizedString + } + /** + * Connect to Firebase to manage files, users and push notifications + */ + shortDesc: () => LocalizedString + /** + * The Firebase integration provides comprehensive access to Firebase services including Cloud Storage for file management, Authentication for user management, and Firebase Cloud Messaging for push notifications. Automate file uploads, user account operations, and notification delivery across your Firebase projects. + */ + longDesc: () => LocalizedString + actions: { + list_users: { /** - * date is + * List Users */ displayName: () => LocalizedString /** - * Date equals + * Retrieve a list of users from Firebase Authentication */ shortDesc: () => LocalizedString /** - * Returns `True` if the date field equals the specified date + * Fetches users from Firebase Authentication with support for pagination. Returns user details including email, display name, verification status, and authentication metadata. Use pagination parameters to retrieve large user lists efficiently. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + project_id: { /** - * Field + * Project ID */ displayName: () => LocalizedString /** - * Date field to compare + * The Firebase project to query */ shortDesc: () => LocalizedString /** - * The date field to compare + * Select the Firebase project from which you want to retrieve users. The project must have Firebase Authentication enabled. */ longDesc: () => LocalizedString } - '1': { + max_results: { /** - * Date + * Max Results */ displayName: () => LocalizedString /** - * Date to match + * Maximum number of users to return */ shortDesc: () => LocalizedString /** - * The date value to compare against (format: YYYY-MM-DD) + * Specify the maximum number of users to retrieve in a single request. Defaults to 100 if not specified. Use pagination for larger datasets. + */ + longDesc: () => LocalizedString + } + next_page_token: { + /** + * Next Page Token + */ + displayName: () => LocalizedString + /** + * Token for retrieving the next page of results + */ + shortDesc: () => LocalizedString + /** + * Provide the pagination token from a previous response to retrieve the next set of users. Leave empty for the first page. */ longDesc: () => LocalizedString } } } - 'date-is-not': { + get_user: { /** - * date is not + * Get User */ displayName: () => LocalizedString /** - * Date does not equal + * Retrieve detailed information about a specific Firebase user */ shortDesc: () => LocalizedString /** - * Returns `True` if the date field does not equal the specified date + * Fetches comprehensive details for a specific user from Firebase Authentication including email, display name, photo URL, verification status, account creation date, and custom attributes. Useful for user profile lookups and account verification. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + project_id: { /** - * Field + * Project ID */ displayName: () => LocalizedString /** - * Date field to compare + * The Firebase project containing the user */ shortDesc: () => LocalizedString /** - * The date field to compare + * Select the Firebase project where the user account exists. The project must have Firebase Authentication enabled. */ longDesc: () => LocalizedString } - '1': { + user_id: { /** - * Date + * User ID */ displayName: () => LocalizedString /** - * Date to exclude + * The unique identifier of the user */ shortDesc: () => LocalizedString /** - * The date value that should not match (format: YYYY-MM-DD) + * Specify the Firebase user ID (localId) of the user whose details you want to retrieve. This is the unique identifier assigned by Firebase Authentication. */ longDesc: () => LocalizedString } } } - 'date-is-before': { + send_push_notification: { /** - * date is before + * Send Push Notification */ displayName: () => LocalizedString /** - * Date is before + * Send a push notification via Firebase Cloud Messaging */ shortDesc: () => LocalizedString /** - * Returns `True` if the date field is before the specified date + * Sends push notifications to specific device tokens or topics using Firebase Cloud Messaging (FCM). Supports rich notifications with titles, body text, images, and custom data payloads. Configure priority levels for Android and iOS delivery. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + project_id: { /** - * Field + * Project ID */ displayName: () => LocalizedString /** - * Date field to compare + * The Firebase project for sending notifications */ shortDesc: () => LocalizedString /** - * The date field to compare + * Select the Firebase project that will send the push notification. The project must have Firebase Cloud Messaging configured. */ longDesc: () => LocalizedString } - '1': { + token_or_topic: { /** - * Date + * Token or Topic */ displayName: () => LocalizedString /** - * Maximum date + * Device token or topic name */ shortDesc: () => LocalizedString /** - * The date that the field should be before (format: YYYY-MM-DD) + * Specify either a device registration token for sending to a specific device, or a topic name (prefixed with /topics/) for sending to all devices subscribed to that topic. */ longDesc: () => LocalizedString } - } - } - 'date-is-on-or-before': { - /** - * date is on or before - */ - displayName: () => LocalizedString - /** - * Date is on or before - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the date field is on or before the specified date - */ - longDesc: () => LocalizedString - args: { - '0': { + title: { /** - * Field + * Title */ displayName: () => LocalizedString /** - * Date field to compare + * Notification title */ shortDesc: () => LocalizedString /** - * The date field to compare + * The title text that will be displayed in the notification. Keep it concise and informative. */ longDesc: () => LocalizedString } - '1': { + body: { /** - * Date + * Body */ displayName: () => LocalizedString /** - * Maximum date + * Notification message body */ shortDesc: () => LocalizedString /** - * The date that the field should be on or before (format: YYYY-MM-DD) + * The main content of the notification message. This text appears below the title in the notification display. */ longDesc: () => LocalizedString } - } - } - 'date-is-after': { - /** - * date is after - */ - displayName: () => LocalizedString - /** - * Date is after - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the date field is after the specified date - */ - longDesc: () => LocalizedString - args: { - '0': { + image: { /** - * Field + * Image */ displayName: () => LocalizedString /** - * Date field to compare + * Optional image URL for the notification */ shortDesc: () => LocalizedString /** - * The date field to compare + * Provide a URL to an image that will be displayed in the notification. The image should be publicly accessible and in a supported format (JPEG, PNG). */ longDesc: () => LocalizedString } - '1': { + data: { /** - * Date + * Data */ displayName: () => LocalizedString /** - * Minimum date + * Custom data payload */ shortDesc: () => LocalizedString /** - * The date that the field should be after (format: YYYY-MM-DD) + * Additional custom key-value pairs to include with the notification. This data can be accessed by your app when the notification is received. + */ + longDesc: () => LocalizedString + } + priority: { + /** + * Priority + */ + displayName: () => LocalizedString + /** + * Notification delivery priority + */ + shortDesc: () => LocalizedString + /** + * Set the priority level for notification delivery. High priority notifications are delivered immediately and may wake the device. Normal priority allows for more battery-efficient delivery. */ longDesc: () => LocalizedString } } } - 'date-is-on-or-after': { + upload_file: { /** - * date is on or after + * Upload File */ displayName: () => LocalizedString /** - * Date is on or after + * Upload a file to Firebase Cloud Storage */ shortDesc: () => LocalizedString /** - * Returns `True` if the date field is on or after the specified date + * Uploads a file to a specified bucket in Firebase Cloud Storage. Returns metadata including file path, content type, size, and generation information. Optionally include custom metadata key-value pairs with the upload. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + project_id: { /** - * Field + * Project ID */ displayName: () => LocalizedString /** - * Date field to compare + * The Firebase project for storage */ shortDesc: () => LocalizedString /** - * The date field to compare + * Select the Firebase project where the file will be stored. The project must have Firebase Cloud Storage enabled. */ longDesc: () => LocalizedString } - '1': { + file_path: { /** - * Date + * File Path */ displayName: () => LocalizedString /** - * Minimum date + * Destination path in storage */ shortDesc: () => LocalizedString /** - * The date that the field should be on or after (format: YYYY-MM-DD) + * Specify the full path where the file should be stored in the bucket, including the filename and any directory structure (e.g., "images/profile/avatar.jpg"). */ longDesc: () => LocalizedString } - } - } - 'date-is-within': { - /** - * date is within - */ - displayName: () => LocalizedString - /** - * Date is within time period - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the date field falls within the specified time period - */ - longDesc: () => LocalizedString - args: { - '0': { + bucket: { /** - * Field + * Bucket */ displayName: () => LocalizedString /** - * Date field to check + * Storage bucket name */ shortDesc: () => LocalizedString /** - * The date field to check + * Select the Cloud Storage bucket where the file will be uploaded. The bucket must exist in the selected Firebase project. */ longDesc: () => LocalizedString } - '1': { + file: { /** - * Period + * File */ displayName: () => LocalizedString /** - * Time period + * The file to upload */ shortDesc: () => LocalizedString /** - * The time period to check (e.g., "today", "yesterday", "this_week", "last_month") + * Select or provide the file to upload. The file will be transferred to Firebase Cloud Storage at the specified path. + */ + longDesc: () => LocalizedString + } + metadata: { + /** + * Metadata + */ + displayName: () => LocalizedString + /** + * Custom metadata key-value pairs + */ + shortDesc: () => LocalizedString + /** + * Optional custom metadata to associate with the uploaded file. Provide as key-value pairs that can be retrieved later with the file information. */ longDesc: () => LocalizedString } } } - 'date-equals-day-of-month': { + get_file_metadata: { /** - * day of month is + * Get File Metadata */ displayName: () => LocalizedString /** - * Day of month equals + * Retrieve metadata for a specific file in Cloud Storage */ shortDesc: () => LocalizedString /** - * Returns `True` if the day of the month equals the specified number + * Fetches comprehensive metadata for a file stored in Firebase Cloud Storage including content type, size, creation date, update date, MD5 hash, custom metadata, and cache control settings. Useful for file verification and management. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + project_id: { /** - * Field + * Project ID */ displayName: () => LocalizedString /** - * Date field to check + * The Firebase project containing the file */ shortDesc: () => LocalizedString /** - * The date field whose day will be checked + * Select the Firebase project where the file is stored. The project must have Firebase Cloud Storage enabled. */ longDesc: () => LocalizedString } - '1': { + bucket: { /** - * Day + * Bucket */ displayName: () => LocalizedString /** - * Day number + * Storage bucket containing the file */ shortDesc: () => LocalizedString /** - * The day of the month (1-31) to match + * Select the Cloud Storage bucket where the file is located. The bucket must exist in the selected Firebase project. */ longDesc: () => LocalizedString } - } - } - boolean: { - /** - * is + file_path: { + /** + * File Path + */ + displayName: () => LocalizedString + /** + * Path to the file in storage + */ + shortDesc: () => LocalizedString + /** + * Specify the full path to the file in the bucket, including the filename and any directory structure. + */ + longDesc: () => LocalizedString + } + } + } + list_files_in_bucket: { + /** + * List Files in Bucket */ displayName: () => LocalizedString /** - * Boolean comparison + * List all files in a Cloud Storage bucket */ shortDesc: () => LocalizedString /** - * Returns `True` if the boolean field equals the specified value + * Retrieves a list of files from a Firebase Cloud Storage bucket with support for filtering by prefix and pagination. Returns file metadata including paths, content types, sizes, and timestamps. Useful for browsing and managing stored files. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + project_id: { /** - * Field + * Project ID */ displayName: () => LocalizedString /** - * Boolean field to check + * The Firebase project containing the bucket */ shortDesc: () => LocalizedString /** - * The boolean field to compare + * Select the Firebase project where the storage bucket exists. The project must have Firebase Cloud Storage enabled. */ longDesc: () => LocalizedString } - '1': { + bucket: { /** - * Value + * Bucket */ displayName: () => LocalizedString /** - * Boolean value + * Storage bucket to list files from */ shortDesc: () => LocalizedString /** - * The boolean value (true or false) to compare against + * Select the Cloud Storage bucket whose files you want to list. The bucket must exist in the selected Firebase project. */ longDesc: () => LocalizedString } - } - } - 'is-even-and-whole': { - /** - * is even and whole - */ - displayName: () => LocalizedString - /** - * Number is even and whole - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the number is even and a whole number - */ - longDesc: () => LocalizedString - args: { - '0': { + prefix: { /** - * Field + * Prefix */ displayName: () => LocalizedString /** - * Numeric field to check + * Optional prefix to filter files */ shortDesc: () => LocalizedString /** - * The numeric field to check + * Filter results to only include files whose paths start with this prefix. Useful for listing files in a specific directory or with a specific naming pattern. */ longDesc: () => LocalizedString } - '1': { + max_results: { /** - * Check + * Max Results */ displayName: () => LocalizedString /** - * Check value + * Maximum number of files to return */ shortDesc: () => LocalizedString /** - * Set to true to check if even and whole, false to check if not + * Specify the maximum number of files to retrieve in a single request. Defaults to 100 if not specified. Use pagination for larger result sets. + */ + longDesc: () => LocalizedString + } + page_token: { + /** + * Page Token + */ + displayName: () => LocalizedString + /** + * Token for retrieving the next page + */ + shortDesc: () => LocalizedString + /** + * Provide the pagination token from a previous response to retrieve the next set of files. Leave empty for the first page. */ longDesc: () => LocalizedString } } } - 'single-select-equal': { + list_buckets: { /** - * is + * List Buckets */ displayName: () => LocalizedString /** - * Single select equals + * List all Cloud Storage buckets in a Firebase project */ shortDesc: () => LocalizedString /** - * Returns `True` if the single select field equals the specified option + * Retrieves all Cloud Storage buckets configured for a Firebase project. Returns bucket details including names, locations, storage classes, creation dates, and update timestamps. Useful for bucket management and discovery. */ longDesc: () => LocalizedString - args: { - '0': { - /** - * Field - */ - displayName: () => LocalizedString - /** - * Single select field - */ - shortDesc: () => LocalizedString - /** - * The single select field to check - */ - longDesc: () => LocalizedString - } - '1': { + options: { + project_id: { /** - * Option + * Project ID */ displayName: () => LocalizedString /** - * Option to match + * The Firebase project to query */ shortDesc: () => LocalizedString /** - * The select option value to match + * Select the Firebase project whose storage buckets you want to list. The project must have Firebase Cloud Storage enabled. */ longDesc: () => LocalizedString } } } - 'single-select-not-equal': { + delete_file: { /** - * is not + * Delete File */ displayName: () => LocalizedString /** - * Single select does not equal + * Delete a file from Cloud Storage */ shortDesc: () => LocalizedString /** - * Returns `True` if the single select field does not equal the specified option + * Permanently removes a file from Firebase Cloud Storage. This operation is irreversible, so use with caution. Returns confirmation of the deletion including the file path and bucket name. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + project_id: { /** - * Field + * Project ID */ displayName: () => LocalizedString /** - * Single select field + * The Firebase project containing the file */ shortDesc: () => LocalizedString /** - * The single select field to check + * Select the Firebase project where the file is stored. The project must have Firebase Cloud Storage enabled. */ longDesc: () => LocalizedString } - '1': { + bucket: { /** - * Option + * Bucket */ displayName: () => LocalizedString /** - * Option to exclude + * Storage bucket containing the file */ shortDesc: () => LocalizedString /** - * The select option value to exclude + * Select the Cloud Storage bucket where the file to be deleted is located. The bucket must exist in the selected Firebase project. + */ + longDesc: () => LocalizedString + } + file_path: { + /** + * File Path + */ + displayName: () => LocalizedString + /** + * Path to the file to delete + */ + shortDesc: () => LocalizedString + /** + * Specify the full path to the file in the bucket that should be deleted, including the filename and any directory structure. This operation is permanent and cannot be undone. */ longDesc: () => LocalizedString } } } - 'single-select-is-any-of': { + } + triggers: { + new_user: { /** - * is any of + * New User */ displayName: () => LocalizedString /** - * Single select is any of + * Triggers when a new user is created in Firebase Authentication */ shortDesc: () => LocalizedString /** - * Returns `True` if the single select field matches any of the specified options + * Monitors Firebase Authentication for new user registrations and triggers when new accounts are created. Captures user details including email, display name, verification status, and authentication provider information. Useful for user onboarding workflows, welcome emails, and account setup automation. */ longDesc: () => LocalizedString - args: { - '0': { - /** - * Field - */ - displayName: () => LocalizedString - /** - * Single select field - */ - shortDesc: () => LocalizedString - /** - * The single select field to check - */ - longDesc: () => LocalizedString - } - '1': { + options: { + project_id: { /** - * Options + * Project ID */ displayName: () => LocalizedString /** - * Options list + * The Firebase project to monitor */ shortDesc: () => LocalizedString /** - * List of select option values to match against + * Select the Firebase project whose Authentication service you want to monitor for new user registrations. The project must have Firebase Authentication enabled. */ longDesc: () => LocalizedString } } } - 'single-select-is-none-of': { + } + } + Supabase: { + /** + * Supabase + */ + displayName: () => LocalizedString + groups: { + /** + * Databases & Backend Services + */ + '0': () => LocalizedString + } + /** + * Connect to Supabase to manage your database tables, storage buckets, and real-time data + */ + shortDesc: () => LocalizedString + /** + * The Supabase integration provides comprehensive access to your Supabase backend services. Manage database tables with full CRUD operations, monitor real-time changes with triggers, and handle file storage through buckets. Whether you need to query data, insert records, filter results, or track new entries, this integration streamlines your Supabase workflow automation and backend management. + */ + longDesc: () => LocalizedString + connectionMessage: { + /** + * Connect to Supabase + */ + title: () => LocalizedString + /** + * To connect to Supabase, you will need your **Project ID** (or Project URL) and a **service_role API Key**. + + ## Finding Your Project ID + + 1. Log in to the [Supabase Dashboard](https://supabase.com/dashboard) + 2. Select your project + 3. Go to **Project Settings** (gear icon) → **General** + 4. Find your **Reference ID** (this is your Project ID) + + Alternatively, your Project URL format is: `https://.supabase.co` + + ## Getting Your API Key + + 1. In your project dashboard, go to **Project Settings** → **API** + 2. Find the **Project API keys** section + 3. Copy the **service_role** key (labeled "secret") + + ⚠️ **Important**: Use the `service_role` key, NOT the `anon` key. The service_role key bypasses Row Level Security (RLS) and has full access to your database. + + ## Connection Details + + ### Project ID / Project URL + Either your project's Reference ID or the full project URL: + - Reference ID: `abcdefghijklmnop` + - Project URL: `https://abcdefghijklmnop.supabase.co` + + ### API Key (service_role) + The `service_role` secret key from your project's API settings. This key: + - Bypasses Row Level Security (RLS) + - Has full access to all database operations + - Should only be used server-side, never in client applications + + ## API Key Types + + | Key Type | Use Case | + |----------|----------| + | `anon` (public) | Client-side apps, respects RLS | + | `service_role` (secret) | Server-side operations, bypasses RLS | + + **Note:** The `service_role` key is extremely powerful and should be kept secure. Never expose it in client-side code or public repositories. For this integration, the service_role key is required to perform administrative operations. + */ + content: () => LocalizedString + } + actions: { + get_table: { + groups: { + /** + * Tables + */ + '0': () => LocalizedString + } /** - * is none of + * Get Table */ displayName: () => LocalizedString /** - * Single select is none of + * Retrieve detailed schema information about a specific Supabase table */ shortDesc: () => LocalizedString /** - * Returns `True` if the single select field does not match any of the specified options + * Fetches comprehensive metadata for a specific table including column definitions, data types, required fields, and descriptions. This action helps you understand the structure of your database tables. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + tableName: { /** - * Field + * Table Name */ displayName: () => LocalizedString /** - * Single select field + * The name of the table to retrieve */ shortDesc: () => LocalizedString /** - * The single select field to check + * Select the Supabase table whose schema information you want to fetch. The table must exist in your Supabase project. */ longDesc: () => LocalizedString } - '1': { + } + } + list_tables: { + groups: { + /** + * Tables + */ + '0': () => LocalizedString + } + /** + * List Tables + */ + displayName: () => LocalizedString + /** + * Get a list of all tables in your Supabase database + */ + shortDesc: () => LocalizedString + /** + * Retrieves all tables from your Supabase database with their basic metadata including column information and descriptions. Optionally include system tables in the results. + */ + longDesc: () => LocalizedString + options: { + include_system_tables: { /** - * Options + * Include System Tables */ displayName: () => LocalizedString /** - * Options list + * Include internal Supabase system tables in the results */ shortDesc: () => LocalizedString /** - * List of select option values to exclude + * When enabled, the response will include system tables (those starting with underscore). System tables contain Supabase internal data and are typically hidden from regular queries. */ longDesc: () => LocalizedString } } } - 'multiple-select-has': { + create_row: { + groups: { + /** + * Rows + */ + '0': () => LocalizedString + } /** - * has any of + * Create Row */ displayName: () => LocalizedString /** - * Multiple select contains + * Insert a new row into a Supabase table */ shortDesc: () => LocalizedString /** - * Returns `True` if the multiple select field contains the specified option + * Creates a new record in the specified Supabase table. The action dynamically presents the table schema, allowing you to provide values for each column. Returns the newly created row with all its data. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + tableName: { /** - * Field + * Table Name */ displayName: () => LocalizedString /** - * Multiple select field + * The table where the row will be inserted */ shortDesc: () => LocalizedString /** - * The multiple select field to check + * Select the target Supabase table for inserting the new row. The available fields will be dynamically loaded based on the selected table schema. */ longDesc: () => LocalizedString } - '1': { + values: { /** - * Option + * Row Values */ displayName: () => LocalizedString /** - * Option to find + * The data to insert into the new row */ shortDesc: () => LocalizedString /** - * The select option value to find in the field + * Provide values for the table columns. The structure is dynamically generated based on the selected table schema, showing all available columns with their data types and constraints. */ longDesc: () => LocalizedString } } } - 'multiple-select-has-not': { + list_rows: { + groups: { + /** + * Rows + */ + '0': () => LocalizedString + } /** - * doesn't have any of + * List Rows */ displayName: () => LocalizedString /** - * Multiple select does not contain + * Query and retrieve rows from a Supabase table */ shortDesc: () => LocalizedString /** - * Returns `True` if the multiple select field does not contain the specified option + * Fetches rows from a Supabase table with support for filtering, sorting, pagination, and ordering. Returns a list of records matching your query criteria along with total count information. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + tableName: { /** - * Field + * Table Name */ displayName: () => LocalizedString /** - * Multiple select field + * The table to query */ shortDesc: () => LocalizedString /** - * The multiple select field to check + * Select the Supabase table from which you want to retrieve rows. The available columns for filtering and ordering will be loaded based on this selection. */ longDesc: () => LocalizedString } - '1': { + limit: { /** - * Option + * Limit */ displayName: () => LocalizedString /** - * Option to exclude + * Maximum number of rows to return */ shortDesc: () => LocalizedString /** - * The select option value that should not be in the field + * Specify the maximum number of rows to retrieve in a single query. Useful for pagination and performance optimization. Defaults to 20 if not specified. */ longDesc: () => LocalizedString } - } - } - 'link-row-has': { - /** - * has - */ - displayName: () => LocalizedString - /** - * Link row contains - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the link row field contains the specified linked record - */ - longDesc: () => LocalizedString - args: { - '0': { + offset: { /** - * Field + * Offset */ displayName: () => LocalizedString /** - * Link row field + * Number of rows to skip */ shortDesc: () => LocalizedString /** - * The link row field to check + * Skip this many rows before starting to return results. Used in combination with limit for pagination through large datasets. */ longDesc: () => LocalizedString } - '1': { + orderBy: { /** - * Record ID + * Order By */ displayName: () => LocalizedString /** - * Linked record ID + * Sort the results by a specific column */ shortDesc: () => LocalizedString /** - * The ID of the linked record to find + * Define how to sort the retrieved rows by specifying a column and sort direction (ascending or descending). + */ + longDesc: () => LocalizedString + type: { + fields: { + column: { + /** + * Column + */ + displayName: () => LocalizedString + /** + * The column to sort by + */ + shortDesc: () => LocalizedString + /** + * Select the table column used for sorting the results. + */ + longDesc: () => LocalizedString + } + ascending: { + /** + * Ascending + */ + displayName: () => LocalizedString + /** + * Sort in ascending order + */ + shortDesc: () => LocalizedString + /** + * When enabled, sorts in ascending order (A-Z, 0-9, oldest first). When disabled, sorts in descending order (Z-A, 9-0, newest first). + */ + longDesc: () => LocalizedString + } + } + } + } + filter: { + /** + * Filter + */ + displayName: () => LocalizedString + /** + * Filter rows based on a condition + */ + shortDesc: () => LocalizedString + /** + * Apply a filter condition to retrieve only rows that match specific criteria. Supports various comparison operators for flexible querying. */ longDesc: () => LocalizedString + type: { + fields: { + field: { + /** + * Field + */ + displayName: () => LocalizedString + /** + * The column to filter on + */ + shortDesc: () => LocalizedString + /** + * Select the table column to apply the filter condition to. + */ + longDesc: () => LocalizedString + } + operator: { + /** + * Operator + */ + displayName: () => LocalizedString + /** + * The comparison operator + */ + shortDesc: () => LocalizedString + /** + * Choose the comparison operator for the filter (equals, greater than, contains, etc.). + */ + longDesc: () => LocalizedString + } + value: { + /** + * Value + */ + displayName: () => LocalizedString + /** + * The value to compare against + */ + shortDesc: () => LocalizedString + /** + * The value to compare the column against using the selected operator. For "in" operator, provide comma-separated values. + */ + longDesc: () => LocalizedString + } + } + } } } } - 'link-row-has-not': { + delete_rows: { + groups: { + /** + * Rows + */ + '0': () => LocalizedString + } /** - * doesn't have + * Delete Rows */ displayName: () => LocalizedString /** - * Link row does not contain + * Delete rows from a Supabase table based on a filter */ shortDesc: () => LocalizedString /** - * Returns `True` if the link row field does not contain the specified linked record + * Removes rows from a Supabase table that match the specified filter criteria. Returns the count of deleted rows and their data. Use with caution as this operation is irreversible. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + tableName: { /** - * Field + * Table Name */ displayName: () => LocalizedString /** - * Link row field + * The table to delete rows from */ shortDesc: () => LocalizedString /** - * The link row field to check + * Select the Supabase table from which you want to delete rows. Ensure you have proper permissions for delete operations on this table. */ longDesc: () => LocalizedString } - '1': { + filter: { /** - * Record ID + * Filter */ displayName: () => LocalizedString /** - * Linked record ID + * Condition to identify rows to delete */ shortDesc: () => LocalizedString /** - * The ID of the linked record that should not be present + * Define the filter criteria to identify which rows should be deleted. Only rows matching this condition will be removed from the table. */ longDesc: () => LocalizedString + type: { + fields: { + field: { + /** + * Field + */ + displayName: () => LocalizedString + /** + * The column to filter on + */ + shortDesc: () => LocalizedString + /** + * Select the table column to use for identifying rows to delete. + */ + longDesc: () => LocalizedString + } + operator: { + /** + * Operator + */ + displayName: () => LocalizedString + /** + * The comparison operator + */ + shortDesc: () => LocalizedString + /** + * Choose the comparison operator for the delete filter condition. + */ + longDesc: () => LocalizedString + } + value: { + /** + * Value + */ + displayName: () => LocalizedString + /** + * The value to match + */ + shortDesc: () => LocalizedString + /** + * The value to compare against. Rows matching this condition will be deleted. + */ + longDesc: () => LocalizedString + } + } + } } } } - 'link-row-contains': { + upsert_row: { + groups: { + /** + * Rows + */ + '0': () => LocalizedString + } /** - * contains + * Upsert Row */ displayName: () => LocalizedString /** - * Link row value contains + * Insert a new row or update an existing one */ shortDesc: () => LocalizedString /** - * Returns `True` if any linked record value contains the specified text + * Performs an upsert operation (insert or update) on a Supabase table. If a row with the specified unique constraint exists, it will be updated; otherwise, a new row is inserted. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + tableName: { /** - * Field + * Table Name */ displayName: () => LocalizedString /** - * Link row field + * The table for the upsert operation */ shortDesc: () => LocalizedString /** - * The link row field to search + * Select the target Supabase table. The available fields will be dynamically loaded based on the table schema. */ longDesc: () => LocalizedString } - '1': { + values: { /** - * Text + * Row Values */ displayName: () => LocalizedString /** - * Text to find + * The data to upsert */ shortDesc: () => LocalizedString /** - * The text to search for in linked record values + * Provide values for the table columns. If a row with matching unique constraints exists, these values will update it; otherwise, a new row is created. */ longDesc: () => LocalizedString } - } - } - 'link-row-not-contains': { - /** - * doesn't contain - */ - displayName: () => LocalizedString - /** - * Link row value does not contain - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if no linked record value contains the specified text - */ - longDesc: () => LocalizedString - args: { - '0': { + onConflict: { /** - * Field + * On Conflict */ displayName: () => LocalizedString /** - * Link row field + * The column(s) used to detect conflicts */ shortDesc: () => LocalizedString /** - * The link row field to search + * Specify the column or comma-separated list of columns that should be used to detect conflicts. If not specified, uses the table's primary key. */ longDesc: () => LocalizedString } - '1': { + ignoreDuplicates: { /** - * Text + * Ignore Duplicates */ displayName: () => LocalizedString /** - * Text to exclude + * Skip the operation if a duplicate exists */ shortDesc: () => LocalizedString /** - * The text that should not be in linked record values + * When enabled, if a conflicting row exists, the operation is silently ignored. When disabled (default), conflicting rows are updated with the new values. */ longDesc: () => LocalizedString } } } - 'filename-contains': { + create_bucket: { + groups: { + /** + * Storage + */ + '0': () => LocalizedString + } /** - * filename contains + * Create Storage Bucket */ displayName: () => LocalizedString /** - * File name contains text + * Create a new storage bucket in Supabase */ shortDesc: () => LocalizedString /** - * Returns `True` if any file name contains the specified text + * Creates a new storage bucket in Supabase Storage for organizing and storing files. Configure access permissions, file size limits, and allowed MIME types. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + name: { /** - * Field + * Bucket Name */ displayName: () => LocalizedString /** - * File field + * The name for the new bucket */ shortDesc: () => LocalizedString /** - * The file field to check + * Specify a unique name for the storage bucket. The name must be URL-safe and unique within your Supabase project. */ longDesc: () => LocalizedString } - '1': { + public_access: { /** - * Text + * Public Access */ displayName: () => LocalizedString /** - * Text to find + * Allow public access to bucket contents */ shortDesc: () => LocalizedString /** - * The text to search for in file names + * When enabled, files in this bucket can be accessed publicly without authentication. When disabled (default), files require authentication to access. */ longDesc: () => LocalizedString } - } - } - 'has-file-type': { - /** - * has file type - */ - displayName: () => LocalizedString - /** - * Has file with type - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field contains a file with the specified type - */ - longDesc: () => LocalizedString - args: { - '0': { + file_size_limit: { /** - * Field + * File Size Limit */ displayName: () => LocalizedString /** - * File field + * Maximum file size in bytes */ shortDesc: () => LocalizedString /** - * The file field to check + * Set the maximum file size that can be uploaded to this bucket, specified in bytes. Leave empty for no limit. */ longDesc: () => LocalizedString } - '1': { + allowed_mime_types: { /** - * Type + * Allowed MIME Types */ displayName: () => LocalizedString /** - * File type + * List of allowed file MIME types */ shortDesc: () => LocalizedString /** - * The file type to check for (e.g., "image", "document") + * Specify which file types can be uploaded to this bucket by providing a list of MIME types (e.g., image/png, application/pdf). Leave empty to allow all file types. */ longDesc: () => LocalizedString } } } - 'files-lower-than': { + list_buckets: { + groups: { + /** + * Storage + */ + '0': () => LocalizedString + } /** - * files lower than + * List Storage Buckets */ displayName: () => LocalizedString /** - * File count is less than + * Get all storage buckets in your Supabase project */ shortDesc: () => LocalizedString /** - * Returns `True` if the number of files is less than the specified count + * Retrieves a list of all storage buckets in your Supabase project with their configurations including access permissions, file size limits, and allowed MIME types. */ longDesc: () => LocalizedString - args: { - '0': { - /** - * Field - */ - displayName: () => LocalizedString - /** - * File field - */ - shortDesc: () => LocalizedString - /** - * The file field to count - */ - longDesc: () => LocalizedString - } - '1': { + } + get_bucket: { + groups: { + /** + * Storage + */ + '0': () => LocalizedString + } + /** + * Get Storage Bucket + */ + displayName: () => LocalizedString + /** + * Retrieve details of a specific storage bucket + */ + shortDesc: () => LocalizedString + /** + * Fetches detailed information about a specific Supabase storage bucket including its configuration, creation date, access permissions, and file restrictions. + */ + longDesc: () => LocalizedString + options: { + bucket_id: { /** - * Count + * Bucket ID */ displayName: () => LocalizedString /** - * Maximum count + * The ID of the bucket to retrieve */ shortDesc: () => LocalizedString /** - * The maximum number of files + * Select the storage bucket whose details you want to fetch from your Supabase project. */ longDesc: () => LocalizedString } } } - 'user-is': { + } + triggers: { + new_table_row: { /** - * is + * New Table Row */ displayName: () => LocalizedString /** - * User equals + * Triggers when a new row is added to a Supabase table */ shortDesc: () => LocalizedString /** - * Returns `True` if the user field equals the specified user + * Monitors a Supabase table for new rows and triggers when new records are inserted. Supports optional filtering to trigger only for rows matching specific criteria. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + tableName: { /** - * Field + * Table Name */ displayName: () => LocalizedString /** - * User field + * The table to monitor for new rows */ shortDesc: () => LocalizedString /** - * The user field to check + * Select the Supabase table you want to monitor. The trigger will fire whenever new rows are inserted into this table. */ longDesc: () => LocalizedString } - '1': { + filter: { /** - * User + * Filter */ displayName: () => LocalizedString /** - * User to match + * Optional condition to filter new rows */ shortDesc: () => LocalizedString /** - * The user identifier to match + * Apply a filter to trigger only for new rows matching specific criteria. Leave empty to trigger for all new rows. */ longDesc: () => LocalizedString + type: { + fields: { + field: { + /** + * Field + */ + displayName: () => LocalizedString + /** + * The column to filter on + */ + shortDesc: () => LocalizedString + /** + * Select the table column to apply the filter condition to. + */ + longDesc: () => LocalizedString + } + operator: { + /** + * Operator + */ + displayName: () => LocalizedString + /** + * The comparison operator + */ + shortDesc: () => LocalizedString + /** + * Choose the comparison operator for filtering new rows. + */ + longDesc: () => LocalizedString + } + value: { + /** + * Value + */ + displayName: () => LocalizedString + /** + * The value to match + */ + shortDesc: () => LocalizedString + /** + * The value to compare against. Only new rows matching this condition will trigger the event. + */ + longDesc: () => LocalizedString + } + } + } } } } - 'user-is-not': { + } + expressions: { + '&&': { /** - * is not + * and (&&) */ displayName: () => LocalizedString /** - * User does not equal + * Returns True if all arguments are True */ shortDesc: () => LocalizedString /** - * Returns `True` if the user field does not equal the specified user + * Returns `True` if all arguments are `True` with logic short-circuiting */ longDesc: () => LocalizedString args: { '0': { /** - * Field - */ - displayName: () => LocalizedString - /** - * User field - */ - shortDesc: () => LocalizedString - /** - * The user field to check - */ - longDesc: () => LocalizedString - } - '1': { - /** - * User + * Condition */ displayName: () => LocalizedString /** - * User to exclude + * Boolean condition to evaluate */ shortDesc: () => LocalizedString /** - * The user identifier to exclude + * A boolean expression or condition that evaluates to True or False */ longDesc: () => LocalizedString } } } - 'multiple-collaborators-has': { + '||': { /** - * has + * or (||) */ displayName: () => LocalizedString /** - * Has collaborator + * Returns True if any argument is True */ shortDesc: () => LocalizedString /** - * Returns `True` if the multiple collaborators field contains the specified user + * Returns `True` if any argument is `True` with logic short-circuiting */ longDesc: () => LocalizedString args: { '0': { /** - * Field + * Condition */ displayName: () => LocalizedString /** - * Collaborators field + * Boolean condition to evaluate */ shortDesc: () => LocalizedString /** - * The multiple collaborators field to check + * A boolean expression or condition that evaluates to True or False */ longDesc: () => LocalizedString } - '1': { + } + } + NOT: { + /** + * not (!) + */ + displayName: () => LocalizedString + /** + * Logical negation + */ + shortDesc: () => LocalizedString + /** + * Returns the logical negation of the argument + */ + longDesc: () => LocalizedString + args: { + '0': { /** - * User + * Condition */ displayName: () => LocalizedString /** - * User to find + * Boolean condition to negate */ shortDesc: () => LocalizedString /** - * The user identifier to find + * A boolean expression or condition to negate */ longDesc: () => LocalizedString } } } - 'multiple-collaborators-has-not': { + '==': { /** - * doesn't have + * equals (==) */ displayName: () => LocalizedString /** - * Does not have collaborator + * Equality comparison */ shortDesc: () => LocalizedString /** - * Returns `True` if the multiple collaborators field does not contain the specified user + * Returns `True` if the field value equals the specified value */ longDesc: () => LocalizedString args: { @@ -146775,41 +145226,41 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Collaborators field + * Field to compare */ shortDesc: () => LocalizedString /** - * The multiple collaborators field to check + * The field whose value will be compared */ longDesc: () => LocalizedString } '1': { /** - * User + * Value */ displayName: () => LocalizedString /** - * User to exclude + * Value to compare against */ shortDesc: () => LocalizedString /** - * The user identifier that should not be present + * The value to compare the field against */ longDesc: () => LocalizedString } } } - 'has-empty-value': { + '!=': { /** - * has empty value + * not equals (!=) */ displayName: () => LocalizedString /** - * Lookup has empty value + * Inequality comparison */ shortDesc: () => LocalizedString /** - * Returns `True` if the lookup field has at least one empty value + * Returns `True` if the field value does not equal the specified value */ longDesc: () => LocalizedString args: { @@ -146819,41 +145270,41 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Lookup field + * Field to compare */ shortDesc: () => LocalizedString /** - * The lookup field to check for empty values + * The field whose value will be compared */ longDesc: () => LocalizedString } '1': { /** - * Subfield + * Value */ displayName: () => LocalizedString /** - * Subfield to check + * Value to compare against */ shortDesc: () => LocalizedString /** - * The specific subfield within the lookup to check + * The value to compare the field against */ longDesc: () => LocalizedString } } } - 'has-not-empty-value': { + '>': { /** - * doesn't have empty value + * greater than (>) */ displayName: () => LocalizedString /** - * Lookup has no empty values + * Greater than comparison */ shortDesc: () => LocalizedString /** - * Returns `True` if the lookup field has no empty values + * Returns `True` if the field value is greater than the specified value */ longDesc: () => LocalizedString args: { @@ -146863,41 +145314,41 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Lookup field + * Field to compare */ shortDesc: () => LocalizedString /** - * The lookup field to check + * The field whose value will be compared */ longDesc: () => LocalizedString } '1': { /** - * Subfield + * Value */ displayName: () => LocalizedString /** - * Subfield to check + * Value to compare against */ shortDesc: () => LocalizedString /** - * The specific subfield within the lookup to check + * The value to compare the field against */ longDesc: () => LocalizedString } } } - 'has-value-equal': { + '>=': { /** - * has value equal + * greater than or equal (>=) */ displayName: () => LocalizedString /** - * Lookup value equals + * Greater than or equal comparison */ shortDesc: () => LocalizedString /** - * Returns `True` if the lookup field has a value equal to the specified value + * Returns `True` if the field value is greater than or equal to the specified value */ longDesc: () => LocalizedString args: { @@ -146907,11 +145358,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Lookup field + * Field to compare */ shortDesc: () => LocalizedString /** - * The lookup field to check + * The field whose value will be compared */ longDesc: () => LocalizedString } @@ -146921,27 +145372,27 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Value to match + * Value to compare against */ shortDesc: () => LocalizedString /** - * The value to find in the lookup field + * The value to compare the field against */ longDesc: () => LocalizedString } } } - 'has-not-value-equal': { + '<': { /** - * doesn't have value equal + * less than (<) */ displayName: () => LocalizedString /** - * Lookup value does not equal + * Less than comparison */ shortDesc: () => LocalizedString /** - * Returns `True` if the lookup field does not have a value equal to the specified value + * Returns `True` if the field value is less than the specified value */ longDesc: () => LocalizedString args: { @@ -146951,11 +145402,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Lookup field + * Field to compare */ shortDesc: () => LocalizedString /** - * The lookup field to check + * The field whose value will be compared */ longDesc: () => LocalizedString } @@ -146965,27 +145416,27 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Value to exclude + * Value to compare against */ shortDesc: () => LocalizedString /** - * The value that should not be in the lookup field + * The value to compare the field against */ longDesc: () => LocalizedString } } } - 'has-value-contains': { + '<=': { /** - * has value contains + * less than or equal (<=) */ displayName: () => LocalizedString /** - * Lookup value contains + * Less than or equal comparison */ shortDesc: () => LocalizedString /** - * Returns `True` if the lookup field has a value containing the specified text + * Returns `True` if the field value is less than or equal to the specified value */ longDesc: () => LocalizedString args: { @@ -146995,41 +145446,41 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Lookup field + * Field to compare */ shortDesc: () => LocalizedString /** - * The lookup field to search + * The field whose value will be compared */ longDesc: () => LocalizedString } '1': { /** - * Text + * Value */ displayName: () => LocalizedString /** - * Text to find + * Value to compare against */ shortDesc: () => LocalizedString /** - * The text to search for in lookup values + * The value to compare the field against */ longDesc: () => LocalizedString } } } - 'has-not-value-contains': { + like: { /** - * doesn't have value contains + * like */ displayName: () => LocalizedString /** - * Lookup value does not contain + * Pattern matching (case-sensitive) */ shortDesc: () => LocalizedString /** - * Returns `True` if the lookup field does not have a value containing the specified text + * Returns `True` if the field matches the pattern with % as wildcard */ longDesc: () => LocalizedString args: { @@ -147039,41 +145490,41 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Lookup field + * Text field to match */ shortDesc: () => LocalizedString /** - * The lookup field to search + * The text field to match against the pattern */ longDesc: () => LocalizedString } '1': { /** - * Text + * Pattern */ displayName: () => LocalizedString /** - * Text to exclude + * Pattern to match */ shortDesc: () => LocalizedString /** - * The text that should not be in lookup values + * The pattern to match with (use % as wildcard, e.g., "%example%") */ longDesc: () => LocalizedString } } } - 'has-value-contains-word': { + ilike: { /** - * has value contains word + * ilike */ displayName: () => LocalizedString /** - * Lookup value contains word + * Pattern matching (case-insensitive) */ shortDesc: () => LocalizedString /** - * Returns `True` if the lookup field has a value containing the specified word + * Returns `True` if the field matches the pattern (case-insensitive) with % as wildcard */ longDesc: () => LocalizedString args: { @@ -147083,41 +145534,41 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Lookup field + * Text field to match */ shortDesc: () => LocalizedString /** - * The lookup field to search + * The text field to match against the pattern */ longDesc: () => LocalizedString } '1': { /** - * Word + * Pattern */ displayName: () => LocalizedString /** - * Word to find + * Pattern to match */ shortDesc: () => LocalizedString /** - * The complete word to search for in lookup values + * The pattern to match with, case-insensitive (use % as wildcard, e.g., "%example%") */ longDesc: () => LocalizedString } } } - 'has-not-value-contains-word': { + 'in': { /** - * doesn't have value contains word + * in */ displayName: () => LocalizedString /** - * Lookup value does not contain word + * In list */ shortDesc: () => LocalizedString /** - * Returns `True` if the lookup field does not have a value containing the specified word + * Returns `True` if the field value is in the provided list */ longDesc: () => LocalizedString args: { @@ -147127,41 +145578,41 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Lookup field + * Field to check */ shortDesc: () => LocalizedString /** - * The lookup field to search + * The field whose value will be checked */ longDesc: () => LocalizedString } '1': { /** - * Word + * Values */ displayName: () => LocalizedString /** - * Word to exclude + * List of values */ shortDesc: () => LocalizedString /** - * The complete word that should not be in lookup values + * The list of values to check the field against */ longDesc: () => LocalizedString } } } - 'has-value-length-is-lower-than': { + contains: { /** - * has value length is lower than + * contains (@>) */ displayName: () => LocalizedString /** - * Lookup value length is less than + * Array contains elements */ shortDesc: () => LocalizedString /** - * Returns `True` if the lookup field has a value with length less than the specified number + * Returns `True` if the array field contains all the specified elements */ longDesc: () => LocalizedString args: { @@ -147171,4109 +145622,8197 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Lookup field + * Array field to check */ shortDesc: () => LocalizedString /** - * The lookup field to measure + * The array field to check for contained elements */ longDesc: () => LocalizedString } '1': { /** - * Length + * Elements */ displayName: () => LocalizedString /** - * Maximum length + * Elements to find */ shortDesc: () => LocalizedString /** - * The maximum length for lookup values + * The list of elements that should be contained in the array */ longDesc: () => LocalizedString } } } - 'has-all-values-equal': { + } + searchOptions: { + orderBy: { /** - * has all values equal + * Order By */ displayName: () => LocalizedString /** - * All lookup values equal + * Sort results by a specific field */ shortDesc: () => LocalizedString /** - * Returns `True` if all values in the lookup field equal the specified value + * Define the field and direction to sort search results */ longDesc: () => LocalizedString - args: { - '0': { - /** - * Field - */ - displayName: () => LocalizedString - /** - * Lookup field - */ - shortDesc: () => LocalizedString - /** - * The lookup field to check - */ - longDesc: () => LocalizedString - } - '1': { - /** - * Value - */ - displayName: () => LocalizedString - /** - * Value to match - */ - shortDesc: () => LocalizedString - /** - * The value that all lookup values should equal - */ - longDesc: () => LocalizedString + type: { + fields: { + column: { + /** + * Column + */ + displayName: () => LocalizedString + /** + * The column to sort by + */ + shortDesc: () => LocalizedString + /** + * The name of the column to use for sorting results + */ + longDesc: () => LocalizedString + } + ascending: { + /** + * Ascending + */ + displayName: () => LocalizedString + /** + * Sort in ascending order + */ + shortDesc: () => LocalizedString + /** + * When enabled, results are sorted in ascending order (A-Z, 0-9) + */ + longDesc: () => LocalizedString + } } } } - 'has-any-select-option-equal': { + limit: { /** - * has any select option equal + * Limit */ displayName: () => LocalizedString /** - * Lookup has select option + * Maximum number of records to return */ shortDesc: () => LocalizedString /** - * Returns `True` if the lookup field has any select option equal to the specified value + * Set the maximum total number of records to retrieve from the search */ longDesc: () => LocalizedString - args: { - '0': { - /** - * Field - */ - displayName: () => LocalizedString - /** - * Lookup field - */ - shortDesc: () => LocalizedString - /** - * The lookup field with select options - */ - longDesc: () => LocalizedString - } - '1': { - /** - * Option - */ - displayName: () => LocalizedString - /** - * Option to find - */ - shortDesc: () => LocalizedString - /** - * The select option value to find - */ - longDesc: () => LocalizedString - } - } } - 'has-none-select-option-equal': { + } + } + BambooHR: { + /** + * BambooHR + */ + displayName: () => LocalizedString + groups: { + /** + * HR & People Management + */ + '0': () => LocalizedString + } + /** + * Connect to BambooHR to manage employee data with powerful automation + */ + shortDesc: () => LocalizedString + /** + * The BambooHR integration provides comprehensive access to your HR operations. Create, read, update, and list employees with dynamic field support. The integration automatically discovers available fields in your BambooHR account, including custom fields, and provides intelligent type handling for dates, lists, and other field types. + */ + longDesc: () => LocalizedString + actions: { + get_employee: { + groups: { + /** + * Employees + */ + '0': () => LocalizedString + } /** - * doesn't have select option equal + * Get Employee */ displayName: () => LocalizedString /** - * Lookup has no select option + * Retrieve a single employee by ID */ shortDesc: () => LocalizedString /** - * Returns `True` if the lookup field has no select option equal to the specified value + * Fetches detailed data for a single employee in BambooHR by their ID. Returns all requested fields with dynamically loaded field types. You can specify which fields to retrieve or fetch all available fields. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + employee_id: { /** - * Field + * Employee ID */ displayName: () => LocalizedString /** - * Lookup field + * The ID of the employee to retrieve */ shortDesc: () => LocalizedString /** - * The lookup field with select options + * Enter the unique identifier of the employee you want to fetch. Use 0 to retrieve the employee associated with your API key. */ longDesc: () => LocalizedString } - '1': { + fields: { /** - * Option + * Fields */ displayName: () => LocalizedString /** - * Option to exclude + * Specific fields to retrieve */ shortDesc: () => LocalizedString /** - * The select option value that should not be present + * Select which fields to retrieve for the employee. Leave empty to retrieve all available fields (up to 400 fields). */ longDesc: () => LocalizedString } } } - 'has-value-higher': { + create_employee: { + groups: { + /** + * Employees + */ + '0': () => LocalizedString + } /** - * has value higher than + * Create Employee */ displayName: () => LocalizedString /** - * Lookup value is greater than + * Create a new employee in BambooHR */ shortDesc: () => LocalizedString /** - * Returns `True` if the lookup field has a numeric value greater than the specified number + * Creates a new employee record in BambooHR. At minimum, firstName and lastName are required. The action dynamically presents all available fields based on your BambooHR configuration, including custom fields. */ longDesc: () => LocalizedString - args: { - '0': { - /** - * Field - */ - displayName: () => LocalizedString - /** - * Lookup field - */ - shortDesc: () => LocalizedString - /** - * The lookup field with numeric values - */ - longDesc: () => LocalizedString - } - '1': { + options: { + employee_data: { /** - * Number + * Employee Data */ displayName: () => LocalizedString /** - * Minimum value + * The data for the new employee */ shortDesc: () => LocalizedString /** - * The number that lookup values should be greater than + * Provide values for the employee fields. The available fields are dynamically loaded from your BambooHR account and include both standard and custom fields. firstName and lastName are required. */ longDesc: () => LocalizedString } } } - 'has-not-value-higher': { + update_employee: { + groups: { + /** + * Employees + */ + '0': () => LocalizedString + } /** - * doesn't have value higher than + * Update Employee */ displayName: () => LocalizedString /** - * Lookup value is not greater than + * Update an existing employee in BambooHR */ shortDesc: () => LocalizedString /** - * Returns `True` if the lookup field does not have a numeric value greater than the specified number + * Updates an existing employee record in BambooHR. The action dynamically presents all available fields based on your BambooHR configuration. Only provide the fields you want to update. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + employee_id: { /** - * Field + * Employee ID */ displayName: () => LocalizedString /** - * Lookup field + * The ID of the employee to update */ shortDesc: () => LocalizedString /** - * The lookup field with numeric values + * Enter the unique identifier of the employee you want to update. */ longDesc: () => LocalizedString } - '1': { + employee_data: { /** - * Number + * Employee Data */ displayName: () => LocalizedString /** - * Maximum value + * The data to update */ shortDesc: () => LocalizedString /** - * The number that lookup values should not be greater than + * Provide new values for the employee fields you want to update. The available fields are dynamically loaded from your BambooHR account. */ longDesc: () => LocalizedString } } } - 'has-value-higher-or-equal': { + list_employees: { + groups: { + /** + * Employees + */ + '0': () => LocalizedString + } /** - * has value higher than or equal + * List Employees */ displayName: () => LocalizedString /** - * Lookup value is greater than or equal + * Retrieve a list of all employees */ shortDesc: () => LocalizedString /** - * Returns `True` if the lookup field has a numeric value greater than or equal to the specified number + * Fetches a list of all employees from BambooHR. You can specify which fields to retrieve for each employee. Uses the custom report endpoint for efficient bulk retrieval. */ longDesc: () => LocalizedString - args: { - '0': { - /** - * Field - */ - displayName: () => LocalizedString - /** - * Lookup field - */ - shortDesc: () => LocalizedString - /** - * The lookup field with numeric values - */ - longDesc: () => LocalizedString - } - '1': { + options: { + fields: { /** - * Number + * Fields */ displayName: () => LocalizedString /** - * Minimum value + * Specific fields to retrieve for each employee */ shortDesc: () => LocalizedString /** - * The number that lookup values should be greater than or equal to + * Select which fields to retrieve for each employee. Leave empty to retrieve a default set of common fields (id, name, email, department, job title). */ longDesc: () => LocalizedString } } } - 'has-not-value-higher-or-equal': { + get_whos_out: { + groups: { + /** + * Time Off + */ + '0': () => LocalizedString + } /** - * doesn't have value higher than or equal + * Get Who's Out */ displayName: () => LocalizedString /** - * Lookup value is not greater than or equal + * Get a summary of employees who are out */ shortDesc: () => LocalizedString /** - * Returns `True` if the lookup field does not have a numeric value greater than or equal to the specified number + * Retrieves a list of employees who are out (vacation, sick leave, etc.) and company holidays for a given date range. If no dates are specified, returns the current day plus the next 14 days. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + start_date: { /** - * Field + * Start Date */ displayName: () => LocalizedString /** - * Lookup field + * Start of the date range */ shortDesc: () => LocalizedString /** - * The lookup field with numeric values + * The start date for the query. Defaults to today if not specified. */ longDesc: () => LocalizedString } - '1': { + end_date: { /** - * Number + * End Date */ displayName: () => LocalizedString /** - * Threshold value + * End of the date range */ shortDesc: () => LocalizedString /** - * The number that lookup values should not be greater than or equal to + * The end date for the query. Defaults to 14 days from the start date if not specified. */ longDesc: () => LocalizedString } } } - 'has-value-lower': { + search_time_off_requests: { + groups: { + /** + * Time Off + */ + '0': () => LocalizedString + } /** - * has value lower than + * Search Time Off Requests */ displayName: () => LocalizedString /** - * Lookup value is less than + * Search and filter time off requests */ shortDesc: () => LocalizedString /** - * Returns `True` if the lookup field has a numeric value less than the specified number + * Searches time off requests in BambooHR with various filters. Returns requests matching the specified criteria including date range, employee, status, and time off type. */ longDesc: () => LocalizedString - args: { - '0': { - /** - * Field - */ - displayName: () => LocalizedString - /** - * Lookup field - */ - shortDesc: () => LocalizedString - /** - * The lookup field with numeric values - */ - longDesc: () => LocalizedString - } - '1': { + options: { + start_date: { /** - * Number + * Start Date */ displayName: () => LocalizedString /** - * Maximum value + * Filter by start date */ shortDesc: () => LocalizedString /** - * The number that lookup values should be less than + * Only show time off requests on or after this date. */ longDesc: () => LocalizedString } - } - } - 'has-not-value-lower': { - /** - * doesn't have value lower than - */ - displayName: () => LocalizedString - /** - * Lookup value is not less than - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the lookup field does not have a numeric value less than the specified number - */ - longDesc: () => LocalizedString - args: { - '0': { + end_date: { /** - * Field + * End Date */ displayName: () => LocalizedString /** - * Lookup field + * Filter by end date */ shortDesc: () => LocalizedString /** - * The lookup field with numeric values + * Only show time off requests on or before this date. */ longDesc: () => LocalizedString } - '1': { + employee_id: { /** - * Number + * Employee ID */ displayName: () => LocalizedString /** - * Minimum value + * Filter by employee */ shortDesc: () => LocalizedString /** - * The number that lookup values should not be less than + * Limit results to a specific employee by their ID. */ longDesc: () => LocalizedString } - } - } - 'has-value-lower-or-equal': { - /** - * has value lower than or equal - */ - displayName: () => LocalizedString - /** - * Lookup value is less than or equal - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the lookup field has a numeric value less than or equal to the specified number - */ - longDesc: () => LocalizedString - args: { - '0': { + status: { /** - * Field + * Status */ displayName: () => LocalizedString /** - * Lookup field + * Filter by request status */ shortDesc: () => LocalizedString /** - * The lookup field with numeric values + * Filter by one or more statuses: approved, denied, requested, canceled, superceded. */ longDesc: () => LocalizedString } - '1': { + type: { /** - * Number + * Time Off Type */ displayName: () => LocalizedString /** - * Maximum value + * Filter by time off type */ shortDesc: () => LocalizedString /** - * The number that lookup values should be less than or equal to + * Filter by one or more time off types configured in your BambooHR account. */ longDesc: () => LocalizedString } } } - 'has-not-value-lower-or-equal': { + get_all_employee_files: { + groups: { + /** + * Employee Files + */ + '0': () => LocalizedString + } /** - * doesn't have value lower than or equal + * Get All Employee Files */ displayName: () => LocalizedString /** - * Lookup value is not less than or equal + * List all files for an employee */ shortDesc: () => LocalizedString /** - * Returns `True` if the lookup field does not have a numeric value less than or equal to the specified number + * Retrieves all files associated with a specific employee, organized by category. Returns file metadata including name, size, upload date, and sharing status. */ longDesc: () => LocalizedString - args: { - '0': { - /** - * Field - */ - displayName: () => LocalizedString - /** - * Lookup field - */ - shortDesc: () => LocalizedString - /** - * The lookup field with numeric values - */ - longDesc: () => LocalizedString - } - '1': { + options: { + employee_id: { /** - * Number + * Employee ID */ displayName: () => LocalizedString /** - * Threshold value + * The employee to get files for */ shortDesc: () => LocalizedString /** - * The number that lookup values should not be less than or equal to + * The ID of the employee whose files you want to retrieve. */ longDesc: () => LocalizedString } } } - 'has-date-equal': { + download_employee_file: { + groups: { + /** + * Employee Files + */ + '0': () => LocalizedString + } /** - * has date equal + * Download Employee File */ displayName: () => LocalizedString /** - * Lookup date equals + * Download an employee file */ shortDesc: () => LocalizedString /** - * Returns `True` if the lookup field has a date equal to the specified date + * Downloads a specific file from an employee record. Returns the file content as base64-encoded binary along with the MIME type. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + employee_id: { /** - * Field + * Employee ID */ displayName: () => LocalizedString /** - * Lookup field + * The employee who owns the file */ shortDesc: () => LocalizedString /** - * The lookup field with date values + * The ID of the employee whose file you want to download. */ longDesc: () => LocalizedString } - '1': { + file_id: { /** - * Date + * File ID */ displayName: () => LocalizedString /** - * Date to match + * The file to download */ shortDesc: () => LocalizedString /** - * The date that lookup values should equal (format: YYYY-MM-DD) + * The ID of the file to download. */ longDesc: () => LocalizedString } } } - 'has-not-date-equal': { + upload_employee_file: { + groups: { + /** + * Employee Files + */ + '0': () => LocalizedString + } /** - * doesn't have date equal + * Upload Employee File */ displayName: () => LocalizedString /** - * Lookup date does not equal + * Upload a file to an employee */ shortDesc: () => LocalizedString /** - * Returns `True` if the lookup field does not have a date equal to the specified date + * Uploads a new file to an employee record in BambooHR. The file will be placed in the specified category. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + employee_id: { /** - * Field + * Employee ID */ displayName: () => LocalizedString /** - * Lookup field + * The employee to upload the file to */ shortDesc: () => LocalizedString /** - * The lookup field with date values + * The ID of the employee to associate the file with. */ longDesc: () => LocalizedString } - '1': { + category: { /** - * Date + * Category */ displayName: () => LocalizedString /** - * Date to exclude + * File category */ shortDesc: () => LocalizedString /** - * The date that lookup values should not equal (format: YYYY-MM-DD) + * The category to place the file in. Categories are configured in BambooHR. */ longDesc: () => LocalizedString } - } - } - 'has-date-before': { - /** - * has date before - */ - displayName: () => LocalizedString - /** - * Lookup date is before - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the lookup field has a date before the specified date - */ - longDesc: () => LocalizedString - args: { - '0': { + file: { /** - * Field + * File */ displayName: () => LocalizedString /** - * Lookup field + * The file to upload */ shortDesc: () => LocalizedString /** - * The lookup field with date values + * The file to upload. Must include name, MIME type, and base64-encoded content. */ longDesc: () => LocalizedString } - '1': { + share_with_employee: { /** - * Date + * Share with Employee */ displayName: () => LocalizedString /** - * Maximum date + * Make file visible to employee */ shortDesc: () => LocalizedString /** - * The date that lookup values should be before (format: YYYY-MM-DD) + * Whether to make this file visible to the employee in their self-service portal. */ longDesc: () => LocalizedString } } } - 'has-not-date-before': { + update_employee_file: { + groups: { + /** + * Employee Files + */ + '0': () => LocalizedString + } /** - * doesn't have date before + * Update Employee File */ displayName: () => LocalizedString /** - * Lookup date is not before + * Update employee file metadata */ shortDesc: () => LocalizedString /** - * Returns `True` if the lookup field does not have a date before the specified date + * Updates the metadata for an existing employee file, such as name, category, or sharing settings. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + employee_id: { /** - * Field + * Employee ID */ displayName: () => LocalizedString /** - * Lookup field + * The employee who owns the file */ shortDesc: () => LocalizedString /** - * The lookup field with date values + * The ID of the employee whose file you want to update. */ longDesc: () => LocalizedString } - '1': { + file_id: { /** - * Date + * File ID */ displayName: () => LocalizedString /** - * Threshold date + * The file to update */ shortDesc: () => LocalizedString /** - * The date that lookup values should not be before (format: YYYY-MM-DD) + * The ID of the file to update. */ longDesc: () => LocalizedString } - } - } - 'has-date-on-or-before': { - /** - * has date on or before - */ - displayName: () => LocalizedString - /** - * Lookup date is on or before - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the lookup field has a date on or before the specified date - */ - longDesc: () => LocalizedString - args: { - '0': { + name: { /** - * Field + * Name */ displayName: () => LocalizedString /** - * Lookup field + * New file name */ shortDesc: () => LocalizedString /** - * The lookup field with date values + * The new name for the file. */ longDesc: () => LocalizedString } - '1': { + category: { /** - * Date + * Category */ displayName: () => LocalizedString /** - * Maximum date + * New category */ shortDesc: () => LocalizedString /** - * The date that lookup values should be on or before (format: YYYY-MM-DD) + * Move the file to a different category. + */ + longDesc: () => LocalizedString + } + share_with_employee: { + /** + * Share with Employee + */ + displayName: () => LocalizedString + /** + * Update sharing setting + */ + shortDesc: () => LocalizedString + /** + * Whether to make this file visible to the employee. */ longDesc: () => LocalizedString } } } - 'has-not-date-on-or-before': { + delete_employee_file: { + groups: { + /** + * Employee Files + */ + '0': () => LocalizedString + } /** - * doesn't have date on or before + * Delete Employee File */ displayName: () => LocalizedString /** - * Lookup date is not on or before + * Delete an employee file */ shortDesc: () => LocalizedString /** - * Returns `True` if the lookup field does not have a date on or before the specified date + * Permanently deletes a file from an employee record. This action cannot be undone. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + employee_id: { /** - * Field + * Employee ID */ displayName: () => LocalizedString /** - * Lookup field + * The employee who owns the file */ shortDesc: () => LocalizedString /** - * The lookup field with date values + * The ID of the employee whose file you want to delete. */ longDesc: () => LocalizedString } - '1': { + file_id: { /** - * Date + * File ID */ displayName: () => LocalizedString /** - * Threshold date + * The file to delete */ shortDesc: () => LocalizedString /** - * The date that lookup values should not be on or before (format: YYYY-MM-DD) + * The ID of the file to delete. */ longDesc: () => LocalizedString } } } - 'has-date-after': { + get_all_company_files: { + groups: { + /** + * Company Files + */ + '0': () => LocalizedString + } /** - * has date after + * Get All Company Files */ displayName: () => LocalizedString /** - * Lookup date is after + * List all company files */ shortDesc: () => LocalizedString /** - * Returns `True` if the lookup field has a date after the specified date + * Retrieves all company files organized by category. Returns file metadata including name, size, upload date, and sharing status. */ longDesc: () => LocalizedString - args: { - '0': { - /** - * Field - */ - displayName: () => LocalizedString - /** - * Lookup field - */ - shortDesc: () => LocalizedString - /** - * The lookup field with date values - */ - longDesc: () => LocalizedString - } - '1': { - /** - * Date - */ - displayName: () => LocalizedString - /** - * Minimum date - */ - shortDesc: () => LocalizedString - /** - * The date that lookup values should be after (format: YYYY-MM-DD) - */ - longDesc: () => LocalizedString - } + options: { } } - 'has-not-date-after': { + download_company_file: { + groups: { + /** + * Company Files + */ + '0': () => LocalizedString + } /** - * doesn't have date after + * Download Company File */ displayName: () => LocalizedString /** - * Lookup date is not after + * Download a company file */ shortDesc: () => LocalizedString /** - * Returns `True` if the lookup field does not have a date after the specified date + * Downloads a specific company file. Returns the file content as base64-encoded binary along with the MIME type. */ longDesc: () => LocalizedString - args: { - '0': { - /** - * Field - */ - displayName: () => LocalizedString - /** - * Lookup field - */ - shortDesc: () => LocalizedString - /** - * The lookup field with date values - */ - longDesc: () => LocalizedString - } - '1': { + options: { + file_id: { /** - * Date + * File ID */ displayName: () => LocalizedString /** - * Threshold date + * The file to download */ shortDesc: () => LocalizedString /** - * The date that lookup values should not be after (format: YYYY-MM-DD) + * The ID of the company file to download. */ longDesc: () => LocalizedString } } } - 'has-date-on-or-after': { + upload_company_file: { + groups: { + /** + * Company Files + */ + '0': () => LocalizedString + } /** - * has date on or after + * Upload Company File */ displayName: () => LocalizedString /** - * Lookup date is on or after + * Upload a company file */ shortDesc: () => LocalizedString /** - * Returns `True` if the lookup field has a date on or after the specified date + * Uploads a new file to the company files in BambooHR. The file will be placed in the specified category. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + category: { /** - * Field + * Category */ displayName: () => LocalizedString /** - * Lookup field + * File category */ shortDesc: () => LocalizedString /** - * The lookup field with date values + * The category to place the file in. Categories are configured in BambooHR. */ longDesc: () => LocalizedString } - '1': { + file: { /** - * Date + * File */ displayName: () => LocalizedString /** - * Minimum date + * The file to upload */ shortDesc: () => LocalizedString /** - * The date that lookup values should be on or after (format: YYYY-MM-DD) + * The file to upload. Must include name, MIME type, and base64-encoded content. + */ + longDesc: () => LocalizedString + } + share_with_employees: { + /** + * Share with Employees + */ + displayName: () => LocalizedString + /** + * Make file visible to employees + */ + shortDesc: () => LocalizedString + /** + * Whether to make this file visible to all employees. */ longDesc: () => LocalizedString } } } - 'has-not-date-on-or-after': { + update_company_file: { + groups: { + /** + * Company Files + */ + '0': () => LocalizedString + } /** - * doesn't have date on or after + * Update Company File */ displayName: () => LocalizedString /** - * Lookup date is not on or after + * Update company file metadata */ shortDesc: () => LocalizedString /** - * Returns `True` if the lookup field does not have a date on or after the specified date + * Updates the metadata for an existing company file, such as name, category, or sharing settings. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + file_id: { /** - * Field + * File ID */ displayName: () => LocalizedString /** - * Lookup field + * The file to update */ shortDesc: () => LocalizedString /** - * The lookup field with date values + * The ID of the company file to update. */ longDesc: () => LocalizedString } - '1': { + name: { /** - * Date + * Name */ displayName: () => LocalizedString /** - * Threshold date + * New file name */ shortDesc: () => LocalizedString /** - * The date that lookup values should not be on or after (format: YYYY-MM-DD) + * The new name for the file. */ longDesc: () => LocalizedString } - } - } - 'has-date-within': { - /** - * has date within - */ - displayName: () => LocalizedString - /** - * Lookup date is within period - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the lookup field has a date within the specified time period - */ - longDesc: () => LocalizedString - args: { - '0': { + category: { /** - * Field + * Category */ displayName: () => LocalizedString /** - * Lookup field + * New category */ shortDesc: () => LocalizedString /** - * The lookup field with date values + * Move the file to a different category. */ longDesc: () => LocalizedString } - '1': { + share_with_employees: { /** - * Period + * Share with Employees */ displayName: () => LocalizedString /** - * Time period + * Update sharing setting */ shortDesc: () => LocalizedString /** - * The time period to check (e.g., "today", "this_week", "last_month") + * Whether to make this file visible to all employees. */ longDesc: () => LocalizedString } } } - 'has-not-date-within': { + delete_company_file: { + groups: { + /** + * Company Files + */ + '0': () => LocalizedString + } /** - * doesn't have date within + * Delete Company File */ displayName: () => LocalizedString /** - * Lookup date is not within period + * Delete a company file */ shortDesc: () => LocalizedString /** - * Returns `True` if the lookup field does not have a date within the specified time period + * Permanently deletes a company file. This action cannot be undone. */ longDesc: () => LocalizedString - args: { - '0': { - /** - * Field - */ - displayName: () => LocalizedString - /** - * Lookup field - */ - shortDesc: () => LocalizedString - /** - * The lookup field with date values - */ - longDesc: () => LocalizedString - } - '1': { + options: { + file_id: { /** - * Period + * File ID */ displayName: () => LocalizedString /** - * Time period + * The file to delete */ shortDesc: () => LocalizedString /** - * The time period to exclude (e.g., "today", "this_week", "last_month") + * The ID of the company file to delete. */ longDesc: () => LocalizedString } } } } - } - Firestore: { - /** - * Firestore - */ - displayName: () => LocalizedString - groups: { - /** - * Databases & Backend Services - */ - '0': () => LocalizedString - } - /** - * Connect to Google Cloud Firestore to manage your NoSQL document database. - */ - shortDesc: () => LocalizedString - /** - * The Firestore integration enables you to interact with Google Cloud Firestore, a flexible, scalable NoSQL cloud database. Create, read, update, and delete documents, manage collections, and execute queries to automate your document database operations seamlessly. - */ - longDesc: () => LocalizedString - triggers: { - new_document: { + expressions: { + '&&': { /** - * New Document + * And */ displayName: () => LocalizedString /** - * Triggers when a new document is created in a Firestore collection + * Logical AND operator */ shortDesc: () => LocalizedString /** - * Monitors a Firestore collection for newly created documents. Documents are ordered based on your specified criteria, and the trigger activates when new documents appear at the top of the ordered list. You can optionally filter documents and customize the ordering to track specific types of documents. + * Combines multiple conditions where all must be true */ longDesc: () => LocalizedString - options: { - project_id: { - /** - * Project ID - */ - displayName: () => LocalizedString - /** - * The Google Cloud project ID - */ - shortDesc: () => LocalizedString - /** - * The unique identifier for your Google Cloud project containing the Firestore database - */ - longDesc: () => LocalizedString - } - collection_path: { - /** - * Collection Path - */ - displayName: () => LocalizedString - /** - * The path to the Firestore collection - */ - shortDesc: () => LocalizedString - /** - * The full path to the collection you want to monitor. For nested collections, use the format: parent_collection/parent_doc_id/nested_collection - */ - longDesc: () => LocalizedString - } - filters: { - /** - * Filters - */ - displayName: () => LocalizedString - /** - * Optional filters to apply to documents - */ - shortDesc: () => LocalizedString - /** - * Define one or more filters to narrow down which documents will trigger the event. Multiple filters are combined with AND logic. - */ - longDesc: () => LocalizedString - type: { - element_type: { - fields: { - field: { - /** - * Field - */ - displayName: () => LocalizedString - /** - * The document field to filter on - */ - shortDesc: () => LocalizedString - /** - * Select the field name in the document that you want to filter - */ - longDesc: () => LocalizedString - } - operator: { - /** - * Operator - */ - displayName: () => LocalizedString - /** - * The comparison operator - */ - shortDesc: () => LocalizedString - /** - * The comparison operation to perform between the field value and your specified value - */ - longDesc: () => LocalizedString - } - value: { - /** - * Value - */ - displayName: () => LocalizedString - /** - * The value to compare against - */ - shortDesc: () => LocalizedString - /** - * The value to use in the comparison. The value will be automatically converted to the appropriate type (string, number, boolean, or null) - */ - longDesc: () => LocalizedString - } - } - } - } - } - order_by: { + } + '||': { + /** + * Or + */ + displayName: () => LocalizedString + /** + * Logical OR operator + */ + shortDesc: () => LocalizedString + /** + * Combines multiple conditions where at least one must be true + */ + longDesc: () => LocalizedString + } + '==': { + /** + * Equals + */ + displayName: () => LocalizedString + /** + * Field equals value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field equals the specified value + */ + longDesc: () => LocalizedString + } + '!=': { + /** + * Not Equals + */ + displayName: () => LocalizedString + /** + * Field does not equal value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field does not equal the specified value + */ + longDesc: () => LocalizedString + } + '>': { + /** + * Greater Than + */ + displayName: () => LocalizedString + /** + * Field is greater than value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field value is greater than the specified value + */ + longDesc: () => LocalizedString + } + '>=': { + /** + * Greater Than or Equal + */ + displayName: () => LocalizedString + /** + * Field is greater than or equal to value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field value is greater than or equal to the specified value + */ + longDesc: () => LocalizedString + } + '<': { + /** + * Less Than + */ + displayName: () => LocalizedString + /** + * Field is less than value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field value is less than the specified value + */ + longDesc: () => LocalizedString + } + '<=': { + /** + * Less Than or Equal + */ + displayName: () => LocalizedString + /** + * Field is less than or equal to value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field value is less than or equal to the specified value + */ + longDesc: () => LocalizedString + } + contains: { + /** + * Contains + */ + displayName: () => LocalizedString + /** + * Field contains value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field contains the specified text (case-insensitive) + */ + longDesc: () => LocalizedString + } + 'is-set': { + /** + * Is Set + */ + displayName: () => LocalizedString + /** + * Field has a value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field has a value (is not empty) + */ + longDesc: () => LocalizedString + } + 'is-not-set': { + /** + * Is Not Set + */ + displayName: () => LocalizedString + /** + * Field has no value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field has no value (is empty) + */ + longDesc: () => LocalizedString + } + } + triggers: { + new_time_off_request: { + /** + * New Time Off Request + */ + displayName: () => LocalizedString + /** + * Triggers when a new time off request is submitted + */ + shortDesc: () => LocalizedString + /** + * Fires when a new time off request is created in BambooHR with status "requested". Useful for building approval workflows or notifications. + */ + longDesc: () => LocalizedString + options: { + employee_id: { /** - * Order By + * Employee ID */ displayName: () => LocalizedString /** - * Specify how to order documents + * Filter by employee */ shortDesc: () => LocalizedString /** - * Define the ordering criteria for documents. The trigger will activate for documents that appear at the top of the ordered list. If not specified, documents are ordered by creation time in descending order (newest first). + * Only trigger for time off requests from a specific employee. */ longDesc: () => LocalizedString - type: { - fields: { - field: { - /** - * Field - */ - displayName: () => LocalizedString - /** - * The field to order by - */ - shortDesc: () => LocalizedString - /** - * Select the document field to use for ordering - */ - longDesc: () => LocalizedString - } - direction: { - /** - * Direction - */ - displayName: () => LocalizedString - /** - * Sort direction - */ - shortDesc: () => LocalizedString - /** - * Choose ascending (oldest/smallest first) or descending (newest/largest first) order - */ - longDesc: () => LocalizedString - } - } - } } } } + new_time_off: { + /** + * New Time Off + */ + displayName: () => LocalizedString + /** + * Triggers when new approved time off appears + */ + shortDesc: () => LocalizedString + /** + * Fires when a new approved time off entry appears in the Who's Out list. This includes both employee time off and company holidays. + */ + longDesc: () => LocalizedString + options: { + } + } + new_employee: { + /** + * New Employee + */ + displayName: () => LocalizedString + /** + * Triggers when a new employee is created + */ + shortDesc: () => LocalizedString + /** + * Fires when a new active employee is added to BambooHR. Returns basic employee information including name, email, department, and job title. + */ + longDesc: () => LocalizedString + options: { + } + } + } + } + Baserow: { + /** + * Baserow + */ + displayName: () => LocalizedString + groups: { + /** + * Spreadsheets & Data Tables + */ + '0': () => LocalizedString + /** + * Databases & Backend Services + */ + '1': () => LocalizedString + } + /** + * Connect to Baserow to manage your database tables, rows, and files with powerful automation + */ + shortDesc: () => LocalizedString + /** + * The Baserow integration provides comprehensive access to your Baserow database operations. Create, read, update, and delete rows in your tables, upload files, and monitor new entries with real-time triggers. Whether you need to manage data, filter results, or track new records, this integration streamlines your Baserow workflow automation and database management. + */ + longDesc: () => LocalizedString + connectionMessage: { + /** + * Connect to Baserow + */ + title: () => LocalizedString + /** + * To connect to Baserow, you will need your **Baserow URL** and a **Database Token**. + + ## Getting Your Database Token + + 1. Log in to your Baserow instance + 2. Click on your **profile icon** in the top right corner + 3. Select **Settings** from the dropdown menu + 4. Navigate to **Database tokens** in the left sidebar + 5. Click **Create token** + 6. Give your token a descriptive name (e.g., "Qore Integration") + 7. Select the **workspace** the token should have access to + 8. Configure **table-level permissions** (create, read, update, delete) as needed + 9. Click **Create token** and copy the generated token + + ## Connection Details + + ### Baserow URL + The base URL of your Baserow instance: + - **Baserow Cloud**: Use `https://api.baserow.io` + - **Self-hosted**: Use your instance URL (e.g., `https://baserow.yourcompany.com`) + + ### Database Token + Your database token that grants access to specific workspaces and tables. Tokens are scoped to a single workspace with granular table-level permissions. + + **Note:** Database tokens provide more granular control than API tokens. Each token can be restricted to specific operations (create, read, update, delete) on individual tables within a workspace. + */ + content: () => LocalizedString } actions: { - list_projects: { + create_row: { /** - * List Projects + * Create Row */ displayName: () => LocalizedString /** - * List all Google Cloud projects accessible with the current credentials + * Insert a new row into a Baserow table */ shortDesc: () => LocalizedString /** - * Retrieves a list of all Google Cloud projects that are accessible with your credentials. You can filter projects by name and use pagination to navigate through large result sets. This is useful for discovering which projects contain Firestore databases. + * Creates a new record in the specified Baserow table. The action dynamically presents the table schema, allowing you to provide values for each column. Optionally specify a row ID to insert the new row before it. Returns the newly created row with all its data. */ longDesc: () => LocalizedString options: { - name: { + table: { /** - * Project Name + * Table */ displayName: () => LocalizedString /** - * Filter projects by name + * The table where the row will be inserted */ shortDesc: () => LocalizedString /** - * Optional filter to search for projects containing this name. The search is case-insensitive and matches partial names. + * Select the target Baserow table for inserting the new row. The available fields will be dynamically loaded based on the selected table schema. */ longDesc: () => LocalizedString } - page_size: { + data: { /** - * Page Size + * Row Data */ displayName: () => LocalizedString /** - * Number of projects to return per page + * The data to insert into the new row */ shortDesc: () => LocalizedString /** - * The maximum number of projects to return in a single request. Default is 100. Use this with pagination tokens to retrieve large result sets. + * Provide values for the table columns. The structure is dynamically generated based on the selected table schema, showing all available columns with their data types and constraints. */ longDesc: () => LocalizedString } - next_page_token: { + before_row_id: { /** - * Next Page Token + * Before Row ID */ displayName: () => LocalizedString /** - * Token for retrieving the next page of results + * Insert the new row before this row */ shortDesc: () => LocalizedString /** - * Pagination token obtained from a previous request. Use this to retrieve the next page of projects when there are more results than the page size. + * Optionally specify a row ID to insert the new row before it in the table order. Leave empty to append the row at the end. */ longDesc: () => LocalizedString } } } - create_document: { - groups: { - /** - * Documents - */ - '0': () => LocalizedString - } + delete_row: { /** - * Create Document + * Delete Row */ displayName: () => LocalizedString /** - * Create a new document in a Firestore collection + * Delete a specific row from a Baserow table */ shortDesc: () => LocalizedString /** - * Creates a new document in the specified Firestore collection. You can either let Firestore auto-generate a document ID or provide your own. The document data can be specified through structured fields or as a custom hash object. + * Removes a single row from a Baserow table by its ID. Use with caution as this operation is irreversible and permanently deletes the specified row. */ longDesc: () => LocalizedString options: { - project_id: { - /** - * Project ID - */ - displayName: () => LocalizedString - /** - * The Google Cloud project ID - */ - shortDesc: () => LocalizedString - /** - * The unique identifier for your Google Cloud project containing the Firestore database - */ - longDesc: () => LocalizedString - } - collection_path: { - /** - * Collection Path - */ - displayName: () => LocalizedString - /** - * The path to the Firestore collection - */ - shortDesc: () => LocalizedString - /** - * The full path to the collection where the document will be created. For nested collections, use the format: parent_collection/parent_doc_id/nested_collection - */ - longDesc: () => LocalizedString - } - document_id: { - /** - * Document ID - */ - displayName: () => LocalizedString - /** - * Custom document ID (optional) - */ - shortDesc: () => LocalizedString - /** - * Optional custom identifier for the document. If not provided, Firestore will auto-generate a unique ID. Document IDs must be valid UTF-8 strings and cannot contain forward slashes. - */ - longDesc: () => LocalizedString - } - data: { + table: { /** - * Document Data + * Table */ displayName: () => LocalizedString /** - * The data to store in the document + * The table to delete the row from */ shortDesc: () => LocalizedString /** - * The structured data to store in the document. This will be dynamically typed based on the collection schema if available. Each field will be stored with its appropriate Firestore data type. + * Select the Baserow table from which you want to delete a row. Ensure you have proper permissions for delete operations on this table. */ longDesc: () => LocalizedString } - additional_data: { + row: { /** - * Additional Data + * Row */ displayName: () => LocalizedString /** - * Additional fields to include in the document + * The row to delete */ shortDesc: () => LocalizedString /** - * Optional additional fields to merge with the structured data. Use this to add fields that are not part of the predefined schema or to include dynamic fields. + * Select the specific row to delete from the table by its ID. This row will be permanently removed. */ longDesc: () => LocalizedString } } } - get_document: { - groups: { - /** - * Documents - */ - '0': () => LocalizedString - } + get_table_row: { /** - * Get Document + * Get Table Row */ displayName: () => LocalizedString /** - * Retrieve a specific document from a Firestore collection + * Retrieve a specific row from a Baserow table */ shortDesc: () => LocalizedString /** - * Fetches a single document by its ID from a Firestore collection. Returns the complete document data including metadata such as creation time and last update time. This action will fail if the document does not exist. + * Fetches detailed data for a single row in a Baserow table by its ID. Returns all column values for the specified row with dynamically loaded field types. */ longDesc: () => LocalizedString options: { - project_id: { + table: { /** - * Project ID + * Table */ displayName: () => LocalizedString /** - * The Google Cloud project ID + * The table to retrieve the row from */ shortDesc: () => LocalizedString /** - * The unique identifier for your Google Cloud project containing the Firestore database + * Select the Baserow table from which you want to retrieve a row. The available rows will be loaded based on this selection. */ longDesc: () => LocalizedString } - collection_path: { + row: { /** - * Collection Path + * Row */ displayName: () => LocalizedString /** - * The path to the Firestore collection + * The row to retrieve */ shortDesc: () => LocalizedString /** - * The full path to the collection containing the document. For nested collections, use the format: parent_collection/parent_doc_id/nested_collection + * Select the specific row to retrieve from the table by its ID. All data for this row will be returned. */ longDesc: () => LocalizedString } - document_id: { + } + } + get_table_fields: { + /** + * Get Table Fields + */ + displayName: () => LocalizedString + /** + * Retrieve all field definitions from a Baserow table + */ + shortDesc: () => LocalizedString + /** + * Fetches comprehensive metadata for all fields in a specific Baserow table including field types, order, descriptions, default values, and properties. This action helps you understand the structure and configuration of your database tables. + */ + longDesc: () => LocalizedString + options: { + table: { /** - * Document ID + * Table */ displayName: () => LocalizedString /** - * The ID of the document to retrieve + * The table to retrieve fields from */ shortDesc: () => LocalizedString /** - * The unique identifier of the document you want to retrieve. This is the document ID that was either auto-generated or specified when the document was created. + * Select the Baserow table whose field definitions you want to fetch. All fields and their configurations will be returned. */ longDesc: () => LocalizedString } } } - update_document: { - groups: { - /** - * Documents - */ - '0': () => LocalizedString - } + list_rows: { /** - * Update Document + * List Rows */ displayName: () => LocalizedString /** - * Update an existing document in a Firestore collection + * Query and retrieve rows from a Baserow table */ shortDesc: () => LocalizedString /** - * Updates an existing document in Firestore with new data. You can choose to merge the new data with existing fields or replace the entire document. By default, the update merges new fields while preserving unspecified fields. + * Fetches rows from a Baserow table with support for filtering, sorting, pagination, and search. Returns a list of records matching your query criteria along with total count and pagination information. */ longDesc: () => LocalizedString options: { - project_id: { + table: { /** - * Project ID + * Table */ displayName: () => LocalizedString /** - * The Google Cloud project ID + * The table to query */ shortDesc: () => LocalizedString /** - * The unique identifier for your Google Cloud project containing the Firestore database + * Select the Baserow table from which you want to retrieve rows. The available columns for filtering and ordering will be loaded based on this selection. */ longDesc: () => LocalizedString } - collection_path: { + page: { /** - * Collection Path + * Page */ displayName: () => LocalizedString /** - * The path to the Firestore collection + * Page number for pagination */ shortDesc: () => LocalizedString /** - * The full path to the collection containing the document. For nested collections, use the format: parent_collection/parent_doc_id/nested_collection + * Specify which page of results to retrieve. Used in combination with size for pagination through large datasets. Defaults to page 1. */ longDesc: () => LocalizedString } - document_id: { + size: { /** - * Document ID + * Size */ displayName: () => LocalizedString /** - * The ID of the document to update + * Number of rows per page */ shortDesc: () => LocalizedString /** - * The unique identifier of the document you want to update. The document must exist or the operation will fail. + * Specify the maximum number of rows to retrieve per page. Defaults to 100 rows if not specified. */ longDesc: () => LocalizedString } - data: { + search: { /** - * Document Data + * Search */ displayName: () => LocalizedString /** - * The new data for the document + * Search term to filter rows */ shortDesc: () => LocalizedString /** - * The data to update in the document. When merge is enabled, only the specified fields will be updated. When merge is disabled, this data will replace the entire document. + * Provide a search term to filter rows across all text fields in the table. Only rows containing this term will be returned. */ longDesc: () => LocalizedString } - additional_data: { + order: { /** - * Additional Data + * Order */ displayName: () => LocalizedString /** - * Additional fields to update + * Sort the results by a specific field */ shortDesc: () => LocalizedString /** - * Optional additional fields to merge with the structured data. Use this to update fields that are not part of the predefined schema or to include dynamic fields. + * Define how to sort the retrieved rows by specifying a field and sort direction (ascending or descending). */ longDesc: () => LocalizedString + type: { + fields: { + field: { + /** + * Field + */ + displayName: () => LocalizedString + /** + * The field to sort by + */ + shortDesc: () => LocalizedString + /** + * Select the table field used for sorting the results. + */ + longDesc: () => LocalizedString + } + direction: { + /** + * Direction + */ + displayName: () => LocalizedString + /** + * Sort direction + */ + shortDesc: () => LocalizedString + /** + * Choose ascending (+) to sort from lowest to highest, or descending (-) to sort from highest to lowest. + */ + longDesc: () => LocalizedString + } + } + } } - merge: { + filter: { /** - * Merge + * Filter */ displayName: () => LocalizedString /** - * Whether to merge with existing data + * Filter rows based on conditions */ shortDesc: () => LocalizedString /** - * When true (default), only the specified fields are updated and other fields remain unchanged. When false, the entire document is replaced with the new data. + * Apply multiple filter conditions to retrieve only rows that match specific criteria. Supports various comparison operators and logical combinations. */ longDesc: () => LocalizedString + type: { + fields: { + filters: { + /** + * Filters + */ + displayName: () => LocalizedString + /** + * List of filter conditions + */ + shortDesc: () => LocalizedString + /** + * Define one or more filter conditions. Each condition specifies a field, operator, and value to match against. + */ + longDesc: () => LocalizedString + type: { + element_type: { + fields: { + type: { + /** + * Type + */ + displayName: () => LocalizedString + /** + * The comparison operator + */ + shortDesc: () => LocalizedString + /** + * Choose the comparison operator for this filter condition (equal, contains, empty, etc.). + */ + longDesc: () => LocalizedString + } + field: { + /** + * Field + */ + displayName: () => LocalizedString + /** + * The field to filter on + */ + shortDesc: () => LocalizedString + /** + * Select the table field to apply this filter condition to. + */ + longDesc: () => LocalizedString + } + value: { + /** + * Value + */ + displayName: () => LocalizedString + /** + * The value to compare against + */ + shortDesc: () => LocalizedString + /** + * The value to compare the field against using the selected operator. + */ + longDesc: () => LocalizedString + } + } + } + } + } + filter_type: { + /** + * Filter Type + */ + displayName: () => LocalizedString + /** + * Logical operator for combining filters + */ + shortDesc: () => LocalizedString + /** + * Choose AND to require all filter conditions to match, or OR to match any filter condition. + */ + longDesc: () => LocalizedString + } + } + } } } } - delete_document: { - groups: { - /** - * Documents - */ - '0': () => LocalizedString - } + list_tables: { /** - * Delete Document + * List Tables */ displayName: () => LocalizedString /** - * Delete a document from a Firestore collection + * Get all tables in your Baserow database */ shortDesc: () => LocalizedString /** - * Permanently deletes a document from a Firestore collection. This operation cannot be undone. The document must exist or the operation will fail. All subcollections under the document will NOT be automatically deleted. + * Retrieves a list of all tables from your Baserow database with their basic metadata including table IDs, names, order, and associated database IDs. + */ + longDesc: () => LocalizedString + } + update_row: { + /** + * Update Row + */ + displayName: () => LocalizedString + /** + * Update an existing row in a Baserow table + */ + shortDesc: () => LocalizedString + /** + * Updates the values of an existing row in a Baserow table. The action dynamically presents the table schema, allowing you to modify values for each column. Returns the updated row with all its current data. */ longDesc: () => LocalizedString options: { - project_id: { + table: { /** - * Project ID + * Table */ displayName: () => LocalizedString /** - * The Google Cloud project ID + * The table containing the row to update */ shortDesc: () => LocalizedString /** - * The unique identifier for your Google Cloud project containing the Firestore database + * Select the Baserow table containing the row you want to update. The available fields will be dynamically loaded based on the table schema. */ longDesc: () => LocalizedString } - collection_path: { + row: { /** - * Collection Path + * Row */ displayName: () => LocalizedString /** - * The path to the Firestore collection + * The row to update */ shortDesc: () => LocalizedString /** - * The full path to the collection containing the document. For nested collections, use the format: parent_collection/parent_doc_id/nested_collection + * Select the specific row to update by its ID. The current values of this row will be modified. */ longDesc: () => LocalizedString } - document_id: { + data: { /** - * Document ID + * Row Data */ displayName: () => LocalizedString /** - * The ID of the document to delete + * The new data for the row */ shortDesc: () => LocalizedString /** - * The unique identifier of the document you want to delete. The document must exist or the operation will fail. + * Provide new values for the table columns you want to update. The structure is dynamically generated based on the selected table schema. */ longDesc: () => LocalizedString } } } - list_documents: { - groups: { - /** - * Documents - */ - '0': () => LocalizedString - } + upload_file: { /** - * List Documents + * Upload File */ displayName: () => LocalizedString /** - * List all documents in a Firestore collection + * Upload a file to Baserow storage */ shortDesc: () => LocalizedString /** - * Retrieves all documents from a specified Firestore collection. You can limit the number of results and specify ordering criteria. This action returns the complete document data along with metadata for each document. + * Uploads a file to Baserow's file storage system. Returns the uploaded file's metadata including URL, size, MIME type, and generated thumbnails for images. The uploaded file can then be referenced in file fields within your tables. */ longDesc: () => LocalizedString options: { - project_id: { - /** - * Project ID - */ - displayName: () => LocalizedString - /** - * The Google Cloud project ID - */ - shortDesc: () => LocalizedString - /** - * The unique identifier for your Google Cloud project containing the Firestore database - */ - longDesc: () => LocalizedString - } - collection_path: { + file: { /** - * Collection Path + * File */ displayName: () => LocalizedString /** - * The path to the Firestore collection + * The file to upload */ shortDesc: () => LocalizedString /** - * The full path to the collection whose documents you want to list. For nested collections, use the format: parent_collection/parent_doc_id/nested_collection + * Select or provide the file to upload to Baserow storage. The file will be stored and available for use in file fields. */ longDesc: () => LocalizedString } - limit: { + } + } + } + triggers: { + new_document: { + /** + * New Row + */ + displayName: () => LocalizedString + /** + * Triggers when a new row is added to a Baserow table + */ + shortDesc: () => LocalizedString + /** + * Monitors a Baserow table for new rows and triggers when new records are inserted. Supports optional filtering and search to trigger only for rows matching specific criteria. + */ + longDesc: () => LocalizedString + options: { + table: { /** - * Limit + * Table */ displayName: () => LocalizedString /** - * Maximum number of documents to return + * The table to monitor for new rows */ shortDesc: () => LocalizedString /** - * The maximum number of documents to retrieve. Default is 100. Use this to control the size of the result set and improve performance. + * Select the Baserow table you want to monitor. The trigger will fire whenever new rows are inserted into this table. */ longDesc: () => LocalizedString } - order_by: { + search: { /** - * Order By + * Search */ displayName: () => LocalizedString /** - * Field to order documents by + * Optional search term to filter new rows */ shortDesc: () => LocalizedString /** - * Optional field name to use for ordering the documents. The field must exist in the documents and be of a comparable type (string, number, date). + * Provide a search term to trigger only for new rows that contain this term in any text field. Leave empty to trigger for all new rows. */ longDesc: () => LocalizedString } - order_direction: { + filter: { /** - * Order Direction + * Filter */ displayName: () => LocalizedString /** - * Sort direction for ordering + * Optional conditions to filter new rows */ shortDesc: () => LocalizedString /** - * The direction to sort documents when an order_by field is specified. Choose ascending for lowest to highest or descending for highest to lowest. + * Apply filter conditions to trigger only for new rows matching specific criteria. Leave empty to trigger for all new rows. */ longDesc: () => LocalizedString + type: { + fields: { + filters: { + /** + * Filters + */ + displayName: () => LocalizedString + /** + * List of filter conditions + */ + shortDesc: () => LocalizedString + /** + * Define one or more filter conditions. Only new rows matching these conditions will trigger the event. + */ + longDesc: () => LocalizedString + type: { + element_type: { + fields: { + type: { + /** + * Type + */ + displayName: () => LocalizedString + /** + * The comparison operator + */ + shortDesc: () => LocalizedString + /** + * Choose the comparison operator for this filter condition. + */ + longDesc: () => LocalizedString + } + field: { + /** + * Field + */ + displayName: () => LocalizedString + /** + * The field to filter on + */ + shortDesc: () => LocalizedString + /** + * Select the table field to apply this filter condition to. + */ + longDesc: () => LocalizedString + } + value: { + /** + * Value + */ + displayName: () => LocalizedString + /** + * The value to match + */ + shortDesc: () => LocalizedString + /** + * The value to compare against. Only new rows matching this condition will trigger the event. + */ + longDesc: () => LocalizedString + } + } + } + } + } + filter_type: { + /** + * Filter Type + */ + displayName: () => LocalizedString + /** + * Logical operator for combining filters + */ + shortDesc: () => LocalizedString + /** + * Choose AND to require all filter conditions to match, or OR to match any filter condition. + */ + longDesc: () => LocalizedString + } + } + } } } } - list_collections: { - groups: { - /** - * Collections - */ - '0': () => LocalizedString + } + searchOptions: { + orderBy: { + /** + * Order By + */ + displayName: () => LocalizedString + /** + * Sort results by a specific field + */ + shortDesc: () => LocalizedString + /** + * Define the field and direction to sort search results + */ + longDesc: () => LocalizedString + type: { + fields: { + column: { + /** + * Column + */ + displayName: () => LocalizedString + /** + * The column to sort by + */ + shortDesc: () => LocalizedString + /** + * The name of the column to use for sorting results + */ + longDesc: () => LocalizedString + } + ascending: { + /** + * Ascending + */ + displayName: () => LocalizedString + /** + * Sort in ascending order + */ + shortDesc: () => LocalizedString + /** + * When enabled, results are sorted in ascending order (A-Z, 0-9) + */ + longDesc: () => LocalizedString + } + } } + } + } + expressions: { + '&&': { /** - * List Collections + * and (&&) */ displayName: () => LocalizedString /** - * List all collections in a Firestore database or document + * Returns True if all arguments are True */ shortDesc: () => LocalizedString /** - * Retrieves all collection IDs at the root level of a Firestore database or within a specific document. This is useful for discovering the structure of your Firestore database and navigating nested collections. + * Returns `True` if all arguments are `True` with logic short-circuiting */ longDesc: () => LocalizedString - options: { - project_id: { + args: { + '0': { /** - * Project ID + * Condition */ displayName: () => LocalizedString /** - * The Google Cloud project ID + * Boolean condition to evaluate */ shortDesc: () => LocalizedString /** - * The unique identifier for your Google Cloud project containing the Firestore database + * A boolean expression or condition that evaluates to True or False */ longDesc: () => LocalizedString } - parent_document_path: { + } + } + '||': { + /** + * or (||) + */ + displayName: () => LocalizedString + /** + * Returns True if any argument is True + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if any argument is `True` with logic short-circuiting + */ + longDesc: () => LocalizedString + args: { + '0': { /** - * Parent Document Path + * Condition */ displayName: () => LocalizedString /** - * Path to the parent document (optional) + * Boolean condition to evaluate */ shortDesc: () => LocalizedString /** - * Optional path to a document whose subcollections you want to list. If not specified, lists root-level collections. Format: collection_id/document_id + * A boolean expression or condition that evaluates to True or False */ longDesc: () => LocalizedString } } } - get_collection: { + '==': { /** - * Get Collection + * equal (==) */ displayName: () => LocalizedString /** - * Get information about a Firestore collection + * Equality comparison */ shortDesc: () => LocalizedString /** - * Retrieves metadata and information about a specific Firestore collection. This includes checking if the collection exists, whether it has documents, and optionally retrieving sample documents from the collection. + * Returns `True` if the field value equals the specified value */ longDesc: () => LocalizedString - options: { - project_id: { + args: { + '0': { /** - * Project ID + * Field */ displayName: () => LocalizedString /** - * The Google Cloud project ID + * Field to compare */ shortDesc: () => LocalizedString /** - * The unique identifier for your Google Cloud project containing the Firestore database + * The field whose value will be compared */ longDesc: () => LocalizedString } - collection_id: { + '1': { /** - * Collection ID + * Value */ displayName: () => LocalizedString /** - * The ID of the collection + * Value to compare against */ shortDesc: () => LocalizedString /** - * The identifier of the collection you want to retrieve information about. This is the collection name without any parent path. + * The value to compare the field against */ longDesc: () => LocalizedString } - parent_document_path: { + } + } + '!=': { + /** + * not equal (!=) + */ + displayName: () => LocalizedString + /** + * Inequality comparison + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the field value does not equal the specified value + */ + longDesc: () => LocalizedString + args: { + '0': { /** - * Parent Document Path + * Field */ displayName: () => LocalizedString /** - * Path to the parent document (optional) + * Field to compare */ shortDesc: () => LocalizedString /** - * Optional path to the parent document if this is a subcollection. If not specified, assumes this is a root-level collection. Format: collection_id/document_id + * The field whose value will be compared */ longDesc: () => LocalizedString } - include_sample_documents: { + '1': { /** - * Include Sample Documents + * Value */ displayName: () => LocalizedString /** - * Whether to include sample documents + * Value to compare against */ shortDesc: () => LocalizedString /** - * When true, includes sample documents from the collection in the response. This helps you understand the structure and content of the collection. - */ - longDesc: () => LocalizedString - } - sample_limit: { - /** - * Sample Limit - */ - displayName: () => LocalizedString - /** - * Number of sample documents to include - */ - shortDesc: () => LocalizedString - /** - * The maximum number of sample documents to retrieve when include_sample_documents is true. Default is 5. + * The value to compare the field against */ longDesc: () => LocalizedString } } } - query_documents: { + '>': { /** - * Query Documents + * higher than (>) */ displayName: () => LocalizedString /** - * Query documents in a Firestore collection with filters and ordering + * Greater than comparison */ shortDesc: () => LocalizedString /** - * Performs advanced queries on a Firestore collection with support for multiple filters, ordering, and limits. This allows you to search for specific documents based on field values and retrieve them in a particular order. + * Returns `True` if the field value is greater than the specified number */ longDesc: () => LocalizedString - options: { - project_id: { - /** - * Project ID - */ - displayName: () => LocalizedString - /** - * The Google Cloud project ID - */ - shortDesc: () => LocalizedString - /** - * The unique identifier for your Google Cloud project containing the Firestore database - */ - longDesc: () => LocalizedString - } - collection_path: { + args: { + '0': { /** - * Collection Path + * Field */ displayName: () => LocalizedString /** - * The path to the Firestore collection + * Numeric field to compare */ shortDesc: () => LocalizedString /** - * The full path to the collection you want to query. For nested collections, use the format: parent_collection/parent_doc_id/nested_collection + * The numeric field whose value will be compared */ longDesc: () => LocalizedString } - filters: { + '1': { /** - * Filters + * Number */ displayName: () => LocalizedString /** - * Filter criteria for documents + * Number to compare against */ shortDesc: () => LocalizedString /** - * Optional list of filters to apply to the query. Multiple filters are combined with AND logic. Each filter specifies a field, comparison operator, and value to match. + * The numeric value to compare the field against */ longDesc: () => LocalizedString - type: { - element_type: { - fields: { - field: { - /** - * Field - */ - displayName: () => LocalizedString - /** - * The document field to filter on - */ - shortDesc: () => LocalizedString - /** - * The name of the field in the document to apply the filter to. The field must exist in the documents being queried. - */ - longDesc: () => LocalizedString - } - operator: { - /** - * Operator - */ - displayName: () => LocalizedString - /** - * The comparison operator - */ - shortDesc: () => LocalizedString - /** - * The comparison operator to use for filtering. Options include equality, inequality, comparison operators, and array operators. - */ - longDesc: () => LocalizedString - } - value: { - /** - * Value - */ - displayName: () => LocalizedString - /** - * The value to compare against - */ - shortDesc: () => LocalizedString - /** - * The value to use in the comparison. The value type should match the field type in the documents (string, number, boolean, etc.). - */ - longDesc: () => LocalizedString - } - } - } - } } - order_by: { + } + } + '>=': { + /** + * higher than or equal (>=) + */ + displayName: () => LocalizedString + /** + * Greater than or equal comparison + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the field value is greater than or equal to the specified number + */ + longDesc: () => LocalizedString + args: { + '0': { /** - * Order By + * Field */ displayName: () => LocalizedString /** - * Ordering criteria for results + * Numeric field to compare */ shortDesc: () => LocalizedString /** - * Optional list of ordering criteria to apply to the query results. Documents will be sorted by the specified fields in the order they are listed. + * The numeric field whose value will be compared */ longDesc: () => LocalizedString - type: { - element_type: { - fields: { - field: { - /** - * Field - */ - displayName: () => LocalizedString - /** - * The field to order by - */ - shortDesc: () => LocalizedString - /** - * The name of the field to use for ordering. The field must exist in the documents and be of a comparable type. - */ - longDesc: () => LocalizedString - } - direction: { - /** - * Direction - */ - displayName: () => LocalizedString - /** - * Sort direction - */ - shortDesc: () => LocalizedString - /** - * The direction to sort: ascending (lowest to highest) or descending (highest to lowest). - */ - longDesc: () => LocalizedString - } - } - } - } } - limit: { + '1': { /** - * Limit + * Number */ displayName: () => LocalizedString /** - * Maximum number of documents to return + * Number to compare against */ shortDesc: () => LocalizedString /** - * The maximum number of documents to retrieve. Default is 100. Use this to control query performance and result set size. + * The numeric value to compare the field against */ longDesc: () => LocalizedString } } } - backup_to_google_cloud_storage: { + '<': { /** - * Backup to Google Cloud Storage + * lower than (<) */ displayName: () => LocalizedString /** - * Export Firestore data to Google Cloud Storage + * Less than comparison */ shortDesc: () => LocalizedString /** - * Creates a backup of your Firestore database or specific collections by exporting the data to Google Cloud Storage. This is useful for disaster recovery, data migration, or creating snapshots of your database at a point in time. + * Returns `True` if the field value is less than the specified number */ longDesc: () => LocalizedString - options: { - project_id: { - /** - * Project ID - */ - displayName: () => LocalizedString - /** - * The Google Cloud project ID - */ - shortDesc: () => LocalizedString - /** - * The unique identifier for your Google Cloud project containing the Firestore database to backup - */ - longDesc: () => LocalizedString - } - output_uri_prefix: { + args: { + '0': { /** - * Output URI Prefix + * Field */ displayName: () => LocalizedString /** - * GCS bucket URI where backup will be stored + * Numeric field to compare */ shortDesc: () => LocalizedString /** - * The Google Cloud Storage URI prefix where the backup files will be written. Format: gs://bucket-name/path/to/backup. The bucket must already exist and you must have write permissions. + * The numeric field whose value will be compared */ longDesc: () => LocalizedString } - collection_ids: { + '1': { /** - * Collection IDs + * Number */ displayName: () => LocalizedString /** - * Specific collections to backup (optional) + * Number to compare against */ shortDesc: () => LocalizedString /** - * Optional list of collection IDs to backup. If not specified, the entire database will be backed up. Use this to create selective backups of specific collections. + * The numeric value to compare the field against */ longDesc: () => LocalizedString } } } - restore_from_google_cloud_storage: { + '<=': { /** - * Restore from Google Cloud Storage + * lower than or equal (<=) */ displayName: () => LocalizedString /** - * Import Firestore data from Google Cloud Storage + * Less than or equal comparison */ shortDesc: () => LocalizedString /** - * Restores Firestore data from a previous backup stored in Google Cloud Storage. This operation can restore the entire database or specific collections. Warning: This will overwrite existing documents with the same IDs. + * Returns `True` if the field value is less than or equal to the specified number */ longDesc: () => LocalizedString - options: { - project_id: { - /** - * Project ID - */ - displayName: () => LocalizedString - /** - * The Google Cloud project ID - */ - shortDesc: () => LocalizedString - /** - * The unique identifier for your Google Cloud project where the data will be restored - */ - longDesc: () => LocalizedString - } - input_uri_prefix: { + args: { + '0': { /** - * Input URI Prefix + * Field */ displayName: () => LocalizedString /** - * GCS bucket URI where backup is stored + * Numeric field to compare */ shortDesc: () => LocalizedString /** - * The Google Cloud Storage URI prefix where the backup files are located. This should match the output_uri_prefix used when creating the backup. Format: gs://bucket-name/path/to/backup + * The numeric field whose value will be compared */ longDesc: () => LocalizedString } - collection_ids: { + '1': { /** - * Collection IDs + * Number */ displayName: () => LocalizedString /** - * Specific collections to restore (optional) + * Number to compare against */ shortDesc: () => LocalizedString /** - * Optional list of collection IDs to restore from the backup. If not specified, all collections in the backup will be restored. Use this to selectively restore specific collections. + * The numeric value to compare the field against */ longDesc: () => LocalizedString } } } - } - } - Sentry: { - /** - * Sentry - */ - displayName: () => LocalizedString - groups: { - /** - * DevOps & Cloud Infrastructure - */ - '0': () => LocalizedString - } - /** - * Monitor and fix errors, track performance issues, and maintain application health with the developer-first debugging platform. - */ - shortDesc: () => LocalizedString - /** - * The Sentry integration enables comprehensive error monitoring and performance tracking for your applications. Access projects, issues, events, and teams to quickly identify, triage, and resolve problems. With real-time alerts and detailed debugging context including stack traces, breadcrumbs, and user impact metrics, Sentry helps your team maintain code quality and deliver seamless user experiences. - */ - longDesc: () => LocalizedString - connectionMessage: { - /** - * Connect to Sentry - */ - title: () => LocalizedString - /** - * To connect to Sentry, you will need an **Auth Token** and your **Organization Slug**. - - ## Getting Your Auth Token - - ### Option 1: User Auth Token (Recommended for personal use) - 1. Log in to [Sentry](https://sentry.io/) - 2. Go to **Settings** → **Account** → **API** → **Auth Tokens** - 3. Click **Create New Token** - 4. Select the required scopes: - - `project:read` - Read project information - - `project:write` - Modify projects - - `org:read` - Read organization data - - `event:read` - Read events - - `member:read` - Read team members - 5. Click **Create Token** and copy it immediately - - Direct link: [sentry.io/settings/account/api/auth-tokens/](https://sentry.io/settings/account/api/auth-tokens/) - - ### Option 2: Internal Integration Token (Recommended for production) - 1. Go to **Settings** → **Developer Settings** → **Custom Integrations** - 2. Click **Create New Integration** → **Internal Integration** - 3. Configure the name and required permissions - 4. After saving, copy the generated token - - ## Finding Your Organization Slug - - Your organization slug is in your Sentry URL: - - If your Sentry URL is `https://your-org.sentry.io/`, your slug is `your-org` - - For sentry.io hosted accounts: `https://sentry.io/organizations/your-org/` → slug is `your-org` - - ## Connection Details - - ### Auth Token - Your Sentry authentication token. Starts with `sntrys_` for newer tokens or may have different prefixes for legacy tokens. - - ### Organization Slug - The URL-friendly identifier for your organization (found in your Sentry URL). - - **Note:** Auth tokens inherit permissions based on your user role and the scopes you selected. For production integrations, use Internal Integration tokens which can be scoped to specific permissions and managed at the organization level. - */ - content: () => LocalizedString - } - triggers: { - new_project_issue: { + contains: { /** - * New Project Issue + * contains */ displayName: () => LocalizedString /** - * Triggers when a new issue is detected in a specific project + * Contains text */ shortDesc: () => LocalizedString /** - * Monitors a specific Sentry project and triggers when a new issue (grouped error or problem) is detected. Issues represent single bugs or problems in your application, with events grouped by fingerprint. Use optional query filters and time periods to focus on specific types of issues. + * Returns `True` if the field contains the specified text */ longDesc: () => LocalizedString - options: { - projectId: { - /** - * Project ID - */ - displayName: () => LocalizedString - /** - * The project to monitor for new issues - */ - shortDesc: () => LocalizedString - /** - * Select the Sentry project you want to monitor. Projects represent individual applications or services within your organization. - */ - longDesc: () => LocalizedString - } - query: { + args: { + '0': { /** - * Query Filter + * Field */ displayName: () => LocalizedString /** - * Optional search query to filter issues + * Text field to search */ shortDesc: () => LocalizedString /** - * Use Sentry query syntax to filter which issues trigger this event. For example, filter by browser, device, tags, or whether errors are unhandled. + * The text field to search within */ longDesc: () => LocalizedString } - statsPeriod: { + '1': { /** - * Statistics Period + * Text */ displayName: () => LocalizedString /** - * Time period for issue statistics + * Text to search for */ shortDesc: () => LocalizedString /** - * The time range for collecting issue statistics. Affects metrics like event counts and user impact within the selected period. + * The text string to search for within the field */ longDesc: () => LocalizedString } } } - new_organization_issue: { + 'contains-not': { /** - * New Organization Issue + * doesn't contain */ displayName: () => LocalizedString /** - * Triggers when a new issue is detected across the entire organization + * Does not contain text */ shortDesc: () => LocalizedString /** - * Monitors all projects within your Sentry organization and triggers when a new issue is detected in any project. This provides organization-wide visibility into problems across all applications and services. Use query filters to focus on specific issue types or characteristics. + * Returns `True` if the field does not contain the specified text */ longDesc: () => LocalizedString - options: { - query: { + args: { + '0': { /** - * Query Filter + * Field */ displayName: () => LocalizedString /** - * Optional search query to filter issues + * Text field to search */ shortDesc: () => LocalizedString /** - * Use Sentry query syntax to filter which issues trigger this event across all projects. Filter by properties like platform, environment, release, or custom tags. + * The text field to search within */ longDesc: () => LocalizedString } - statsPeriod: { + '1': { /** - * Statistics Period + * Text */ displayName: () => LocalizedString /** - * Time period for issue statistics + * Text to exclude */ shortDesc: () => LocalizedString /** - * The time range for collecting issue statistics across all projects. Determines the time window for metrics like frequency and user impact. + * The text string that should not be present in the field */ longDesc: () => LocalizedString } } } - } - actions: { - list_projects: { + 'contains-word': { /** - * List Projects + * contains word */ displayName: () => LocalizedString /** - * Retrieve all projects in your organization + * Contains whole word */ shortDesc: () => LocalizedString /** - * Fetches a paginated list of all projects within your Sentry organization. Each project represents an individual application or service being monitored. Returns project details including name, platform, creation date, team membership, and configuration. + * Returns `True` if the field contains the specified word as a complete word */ longDesc: () => LocalizedString - options: { - cursor: { + args: { + '0': { /** - * Cursor + * Field */ displayName: () => LocalizedString /** - * Pagination cursor for retrieving additional results + * Text field to search */ shortDesc: () => LocalizedString /** - * Use the cursor from a previous response to fetch the next or previous page of results. Leave empty to start from the beginning. + * The text field to search within */ longDesc: () => LocalizedString } - } - } - get_project: { - /** - * Get Project Details - */ - displayName: () => LocalizedString - /** - * Retrieve detailed information about a specific project - */ - shortDesc: () => LocalizedString - /** - * Fetches comprehensive details about a specific Sentry project, including configuration options, team assignments, integrations, features, symbol sources, and project statistics. Use this to understand project settings and capabilities. - */ - longDesc: () => LocalizedString - options: { - projectId: { + '1': { /** - * Project ID + * Word */ displayName: () => LocalizedString /** - * The project to retrieve + * Word to search for */ shortDesc: () => LocalizedString /** - * Select or enter the slug identifier of the project you want to retrieve details for. + * The complete word to search for within the field */ longDesc: () => LocalizedString } } } - list_project_events: { + 'doesnt-contain-word': { /** - * List Project Events + * doesn't contain word */ displayName: () => LocalizedString /** - * Retrieve events from a specific project + * Does not contain whole word */ shortDesc: () => LocalizedString /** - * Fetches a paginated list of events (individual error or transaction occurrences) from a specific project. Events are the raw data sent to Sentry and are grouped into issues. Use the full parameter to retrieve complete event payloads including context, breadcrumbs, and metadata. + * Returns `True` if the field does not contain the specified word as a complete word */ longDesc: () => LocalizedString - options: { - projectId: { - /** - * Project ID - */ - displayName: () => LocalizedString - /** - * The project to retrieve events from - */ - shortDesc: () => LocalizedString - /** - * Select the project whose events you want to list. - */ - longDesc: () => LocalizedString - } - full: { + args: { + '0': { /** - * Full Details + * Field */ displayName: () => LocalizedString /** - * Whether to return complete event data + * Text field to search */ shortDesc: () => LocalizedString /** - * When enabled, returns the full event payload including all context, breadcrumbs, stack traces, and metadata. When disabled, returns summary information only. + * The text field to search within */ longDesc: () => LocalizedString } - cursor: { + '1': { /** - * Cursor + * Word */ displayName: () => LocalizedString /** - * Pagination cursor for retrieving additional results + * Word to exclude */ shortDesc: () => LocalizedString /** - * Use the cursor from a previous response to navigate through pages of events. + * The complete word that should not be present in the field */ longDesc: () => LocalizedString } } } - get_event: { + 'length-is-lower-than': { /** - * Get Event Details + * length is lower than */ displayName: () => LocalizedString /** - * Retrieve detailed information about a specific event + * Text length is less than */ shortDesc: () => LocalizedString /** - * Fetches complete details about a specific event, including the full stack trace, breadcrumbs (trail of events leading to the error), user context, device information, tags, SDK details, and all captured metadata. Essential for debugging and understanding the exact conditions when an error occurred. + * Returns `True` if the length of the text field is less than the specified number */ longDesc: () => LocalizedString - options: { - projectId: { + args: { + '0': { /** - * Project ID + * Field */ displayName: () => LocalizedString /** - * The project containing the event + * Text field to measure */ shortDesc: () => LocalizedString /** - * Select the project that the event belongs to. + * The text field whose length will be measured */ longDesc: () => LocalizedString } - eventId: { + '1': { /** - * Event ID + * Length */ displayName: () => LocalizedString /** - * The unique identifier of the event + * Maximum length */ shortDesc: () => LocalizedString /** - * Enter the event ID (hexadecimal string) you want to retrieve. Event IDs can be found in issue details or event listings. + * The maximum length the field should be less than */ longDesc: () => LocalizedString } } } - list_project_issues: { + empty: { /** - * List Project Issues + * is empty */ displayName: () => LocalizedString /** - * Retrieve issues from a specific project + * Field is empty */ shortDesc: () => LocalizedString /** - * Fetches a paginated list of issues (grouped errors or problems) from a specific project. Issues represent single bugs affecting your application, with multiple event occurrences grouped by fingerprint. Filter by query to find specific types of issues, and use statistics period to see relevant metrics. + * Returns `True` if the field is empty or has no value */ longDesc: () => LocalizedString - options: { - projectId: { - /** - * Project ID - */ - displayName: () => LocalizedString - /** - * The project to retrieve issues from - */ - shortDesc: () => LocalizedString - /** - * Select the project whose issues you want to list. - */ - longDesc: () => LocalizedString - } - query: { + args: { + '0': { /** - * Query Filter + * Field */ displayName: () => LocalizedString /** - * Search query to filter issues + * Field to check */ shortDesc: () => LocalizedString /** - * Use Sentry query syntax to filter issues by properties like status, assignee, tags, platform, or time range. Example: "is:unresolved assigned:me" + * The field to check for emptiness */ longDesc: () => LocalizedString } - statsPeriod: { + } + } + 'not-empty': { + /** + * is not empty + */ + displayName: () => LocalizedString + /** + * Field is not empty + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the field has a value + */ + longDesc: () => LocalizedString + args: { + '0': { /** - * Statistics Period + * Field */ displayName: () => LocalizedString /** - * Time period for issue statistics + * Field to check */ shortDesc: () => LocalizedString /** - * The time range for calculating issue statistics such as event count, frequency, and user impact. + * The field to check for a value */ longDesc: () => LocalizedString } - shortIdLookup: { + } + } + 'date-is': { + /** + * date is + */ + displayName: () => LocalizedString + /** + * Date equals + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the date field equals the specified date + */ + longDesc: () => LocalizedString + args: { + '0': { /** - * Short ID Lookup + * Field */ displayName: () => LocalizedString /** - * Whether to look up issues by their short ID + * Date field to compare */ shortDesc: () => LocalizedString /** - * When enabled, allows searching for issues using their short IDs (e.g., PROJECT-123) instead of full issue IDs. + * The date field to compare */ longDesc: () => LocalizedString } - cursor: { + '1': { /** - * Cursor + * Date */ displayName: () => LocalizedString /** - * Pagination cursor for retrieving additional results + * Date to match */ shortDesc: () => LocalizedString /** - * Use the cursor from a previous response to navigate through pages of issues. + * The date value to compare against (format: YYYY-MM-DD) */ longDesc: () => LocalizedString } } } - list_organization_issues: { + 'date-is-not': { /** - * List Organization Issues + * date is not */ displayName: () => LocalizedString /** - * Retrieve issues across the entire organization + * Date does not equal */ shortDesc: () => LocalizedString /** - * Fetches a paginated list of issues from all projects within your organization. This provides organization-wide visibility into problems across all applications and services. Use query filters to narrow down results by project, platform, status, or other criteria. + * Returns `True` if the date field does not equal the specified date */ longDesc: () => LocalizedString - options: { - query: { + args: { + '0': { /** - * Query Filter + * Field */ displayName: () => LocalizedString /** - * Search query to filter issues + * Date field to compare */ shortDesc: () => LocalizedString /** - * Use Sentry query syntax to filter issues across all projects. Filter by project, platform, environment, status, tags, or any other issue property. + * The date field to compare */ longDesc: () => LocalizedString } - statsPeriod: { + '1': { /** - * Statistics Period + * Date */ displayName: () => LocalizedString /** - * Time period for issue statistics + * Date to exclude */ shortDesc: () => LocalizedString /** - * The time range for calculating issue statistics and metrics across the organization. + * The date value that should not match (format: YYYY-MM-DD) */ longDesc: () => LocalizedString } - shortIdLookup: { + } + } + 'date-is-before': { + /** + * date is before + */ + displayName: () => LocalizedString + /** + * Date is before + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the date field is before the specified date + */ + longDesc: () => LocalizedString + args: { + '0': { /** - * Short ID Lookup + * Field */ displayName: () => LocalizedString /** - * Whether to look up issues by their short ID + * Date field to compare */ shortDesc: () => LocalizedString /** - * When enabled, allows searching for issues using their short IDs across all projects. + * The date field to compare */ longDesc: () => LocalizedString } - cursor: { + '1': { /** - * Cursor + * Date */ displayName: () => LocalizedString /** - * Pagination cursor for retrieving additional results + * Maximum date */ shortDesc: () => LocalizedString /** - * Use the cursor from a previous response to retrieve additional pages of organization-wide issues. + * The date that the field should be before (format: YYYY-MM-DD) */ longDesc: () => LocalizedString } } } - get_issue: { + 'date-is-on-or-before': { /** - * Get Issue Details + * date is on or before */ displayName: () => LocalizedString /** - * Retrieve detailed information about a specific issue + * Date is on or before */ shortDesc: () => LocalizedString /** - * Fetches comprehensive details about a specific issue, including its status, metadata, assignment, statistics (event count, user impact, frequency), participants, activity history, linked integrations, and the latest event details. Essential for understanding the full context and history of a problem. + * Returns `True` if the date field is on or before the specified date */ longDesc: () => LocalizedString - options: { - issueId: { + args: { + '0': { /** - * Issue ID + * Field */ displayName: () => LocalizedString /** - * The unique identifier of the issue + * Date field to compare */ shortDesc: () => LocalizedString /** - * Enter the issue ID you want to retrieve. Issue IDs are numeric values that can be found in the Sentry UI or from list operations. + * The date field to compare + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Date + */ + displayName: () => LocalizedString + /** + * Maximum date + */ + shortDesc: () => LocalizedString + /** + * The date that the field should be on or before (format: YYYY-MM-DD) */ longDesc: () => LocalizedString } } } - update_issue: { + 'date-is-after': { /** - * Update Issue + * date is after */ displayName: () => LocalizedString /** - * Update the status or properties of an issue + * Date is after */ shortDesc: () => LocalizedString /** - * Modifies an issue's status (resolved, unresolved, ignored), assignment, bookmarked state, subscription status, or visibility. Use this to triage issues, assign them to team members, resolve bugs, or mark issues as ignored. Status changes can trigger alerts and affect issue grouping. + * Returns `True` if the date field is after the specified date */ longDesc: () => LocalizedString - options: { - projectId: { + args: { + '0': { /** - * Project ID + * Field */ displayName: () => LocalizedString /** - * The project containing the issue (optional) + * Date field to compare */ shortDesc: () => LocalizedString /** - * Optionally specify the project for context. While issues can be updated by ID alone, providing the project can be helpful for organization. + * The date field to compare */ longDesc: () => LocalizedString } - issueId: { + '1': { /** - * Issue ID + * Date */ displayName: () => LocalizedString /** - * The unique identifier of the issue to update + * Minimum date */ shortDesc: () => LocalizedString /** - * Enter the issue ID you want to update. You can find issue IDs in the Sentry UI or from list/search operations. + * The date that the field should be after (format: YYYY-MM-DD) */ longDesc: () => LocalizedString } - status: { + } + } + 'date-is-on-or-after': { + /** + * date is on or after + */ + displayName: () => LocalizedString + /** + * Date is on or after + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the date field is on or after the specified date + */ + longDesc: () => LocalizedString + args: { + '0': { /** - * Status + * Field */ displayName: () => LocalizedString /** - * The new status for the issue + * Date field to compare */ shortDesc: () => LocalizedString /** - * Change the issue status to control its lifecycle. "Resolved" marks it as fixed, "Unresolved" reopens it, "Ignored" archives it temporarily, and "Resolved in Next Release" indicates it will be fixed in an upcoming deployment. + * The date field to compare */ longDesc: () => LocalizedString } - assignedTo: { + '1': { /** - * Assigned To + * Date */ displayName: () => LocalizedString /** - * User or team to assign the issue to + * Minimum date */ shortDesc: () => LocalizedString /** - * Assign the issue to a specific user or team for ownership and accountability. Enter a team slug (e.g., "team:backend") or user ID. + * The date that the field should be on or after (format: YYYY-MM-DD) */ longDesc: () => LocalizedString } - hasSeen: { + } + } + 'date-is-within': { + /** + * date is within + */ + displayName: () => LocalizedString + /** + * Date is within time period + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the date field falls within the specified time period + */ + longDesc: () => LocalizedString + args: { + '0': { /** - * Has Seen + * Field */ displayName: () => LocalizedString /** - * Mark whether the issue has been viewed + * Date field to check */ shortDesc: () => LocalizedString /** - * Mark the issue as seen (reviewed) or unseen. This helps track which issues have been triaged by your team. + * The date field to check */ longDesc: () => LocalizedString } - isBookmarked: { + '1': { /** - * Is Bookmarked + * Period */ displayName: () => LocalizedString /** - * Bookmark status for the issue + * Time period */ shortDesc: () => LocalizedString /** - * Bookmark the issue for easy access and filtering. Bookmarked issues appear in your personal issue list. + * The time period to check (e.g., "today", "yesterday", "this_week", "last_month") */ longDesc: () => LocalizedString } - isSubscribed: { + } + } + 'date-equals-day-of-month': { + /** + * day of month is + */ + displayName: () => LocalizedString + /** + * Day of month equals + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the day of the month equals the specified number + */ + longDesc: () => LocalizedString + args: { + '0': { /** - * Is Subscribed + * Field */ displayName: () => LocalizedString /** - * Subscription status for notifications + * Date field to check */ shortDesc: () => LocalizedString /** - * Subscribe to or unsubscribe from notifications about this issue. When subscribed, you'll receive alerts when the issue changes or escalates. + * The date field whose day will be checked */ longDesc: () => LocalizedString } - isPublic: { + '1': { /** - * Is Public + * Day */ displayName: () => LocalizedString /** - * Whether the issue should be publicly accessible + * Day number */ shortDesc: () => LocalizedString /** - * Control whether the issue is publicly visible via a share link. Public issues can be viewed by anyone with the link, even without Sentry access. + * The day of the month (1-31) to match */ longDesc: () => LocalizedString } } } - list_teams: { + boolean: { /** - * List Teams + * is */ displayName: () => LocalizedString /** - * Retrieve all teams in your organization + * Boolean comparison */ shortDesc: () => LocalizedString /** - * Fetches a paginated list of all teams within your Sentry organization. Teams represent groups of developers working together on projects. Returns team details including member count, access permissions, role assignments, linked projects, and external team integrations. + * Returns `True` if the boolean field equals the specified value */ longDesc: () => LocalizedString - options: { - cursor: { + args: { + '0': { /** - * Cursor + * Field */ displayName: () => LocalizedString /** - * Pagination cursor for retrieving additional results + * Boolean field to check */ shortDesc: () => LocalizedString /** - * Use the cursor from a previous response to navigate through pages of teams. + * The boolean field to compare */ longDesc: () => LocalizedString } - } - } - get_team: { - /** - * Get Team Details - */ - displayName: () => LocalizedString - /** - * Retrieve detailed information about a specific team - */ - shortDesc: () => LocalizedString - /** - * Fetches comprehensive details about a specific team, including its members, assigned projects, access permissions, role settings, external integrations (like Slack channels), and organization-level role. Use this to understand team structure and project ownership. - */ - longDesc: () => LocalizedString - options: { - teamId: { + '1': { /** - * Team ID + * Value */ displayName: () => LocalizedString /** - * The team slug to retrieve + * Boolean value */ shortDesc: () => LocalizedString /** - * Enter the team slug (URL-friendly identifier) of the team you want to retrieve details for. + * The boolean value (true or false) to compare against */ longDesc: () => LocalizedString } } } - } - } - Patreon: { - /** - * Patreon - */ - displayName: () => LocalizedString - groups: { - /** - * Social Media Management - */ - '0': () => LocalizedString - } - /** - * Connect to Patreon to manage your creator content, memberships, and patron relationships. - */ - shortDesc: () => LocalizedString - /** - * The Patreon integration enables creators to automate their patron management workflows. Access patron data, manage memberships, track campaigns, and engage with your community through comprehensive API actions and real-time triggers for patron activities. - */ - longDesc: () => LocalizedString - actions: { - list_campaigns: { + 'is-even-and-whole': { /** - * List Campaigns + * is even and whole */ displayName: () => LocalizedString /** - * Retrieve a list of campaigns for the authenticated creator + * Number is even and whole */ shortDesc: () => LocalizedString /** - * Fetches a paginated list of campaigns associated with the authenticated Patreon account. Returns comprehensive campaign information including patron counts, settings, and metadata. + * Returns `True` if the number is even and a whole number */ longDesc: () => LocalizedString - options: { - count: { + args: { + '0': { /** - * Count + * Field */ displayName: () => LocalizedString /** - * Maximum number of campaigns to return + * Numeric field to check */ shortDesc: () => LocalizedString /** - * Specifies the maximum number of campaigns to retrieve in a single request. Defaults to 20 if not specified. + * The numeric field to check */ longDesc: () => LocalizedString } - cursor: { + '1': { /** - * Cursor + * Check */ displayName: () => LocalizedString /** - * Pagination cursor for retrieving the next set of results + * Check value */ shortDesc: () => LocalizedString /** - * Use the cursor returned from a previous request to fetch the next page of campaigns. Leave empty for the first page. + * Set to true to check if even and whole, false to check if not */ longDesc: () => LocalizedString } } } - list_campaign_members: { + 'single-select-equal': { /** - * List Campaign Members + * is */ displayName: () => LocalizedString /** - * Retrieve members of a specific campaign + * Single select equals */ shortDesc: () => LocalizedString /** - * Fetches a paginated list of members (patrons) for a specified campaign. Returns detailed member information including pledge amounts, payment status, and membership details. + * Returns `True` if the single select field equals the specified option */ longDesc: () => LocalizedString - options: { - campaignId: { - /** - * Campaign ID - */ - displayName: () => LocalizedString - /** - * The ID of the campaign to retrieve members from - */ - shortDesc: () => LocalizedString - /** - * Select the campaign whose members you want to retrieve. This is a required field. - */ - longDesc: () => LocalizedString - } - count: { + args: { + '0': { /** - * Count + * Field */ displayName: () => LocalizedString /** - * Maximum number of members to return + * Single select field */ shortDesc: () => LocalizedString /** - * Specifies the maximum number of members to retrieve in a single request. Defaults to 20 if not specified. + * The single select field to check */ longDesc: () => LocalizedString } - cursor: { + '1': { /** - * Cursor + * Option */ displayName: () => LocalizedString /** - * Pagination cursor for retrieving the next set of results + * Option to match */ shortDesc: () => LocalizedString /** - * Use the cursor returned from a previous request to fetch the next page of members. Leave empty for the first page. + * The select option value to match */ longDesc: () => LocalizedString } } } - get_campaign: { + 'single-select-not-equal': { /** - * Get Campaign + * is not */ displayName: () => LocalizedString /** - * Retrieve detailed information about a specific campaign + * Single select does not equal */ shortDesc: () => LocalizedString /** - * Fetches comprehensive details about a single campaign including summary, creation details, social media integration, RSS feed settings, and patron statistics. + * Returns `True` if the single select field does not equal the specified option */ longDesc: () => LocalizedString - options: { - campaignId: { + args: { + '0': { /** - * Campaign ID + * Field */ displayName: () => LocalizedString /** - * The ID of the campaign to retrieve + * Single select field */ shortDesc: () => LocalizedString /** - * Select the campaign you want to get detailed information about. This is a required field. + * The single select field to check + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Option + */ + displayName: () => LocalizedString + /** + * Option to exclude + */ + shortDesc: () => LocalizedString + /** + * The select option value to exclude */ longDesc: () => LocalizedString } } } - get_member: { + 'single-select-is-any-of': { /** - * Get Member + * is any of */ displayName: () => LocalizedString /** - * Retrieve detailed information about a specific member + * Single select is any of */ shortDesc: () => LocalizedString /** - * Fetches comprehensive details about a single campaign member (patron) including pledge amounts, payment history, membership status, and relationship timeline. + * Returns `True` if the single select field matches any of the specified options */ longDesc: () => LocalizedString - options: { - campaignId: { + args: { + '0': { /** - * Campaign ID + * Field */ displayName: () => LocalizedString /** - * The campaign to filter members from + * Single select field */ shortDesc: () => LocalizedString /** - * Optionally select a campaign to filter the member selection. This helps narrow down the member list when searching. + * The single select field to check */ longDesc: () => LocalizedString } - memberId: { + '1': { /** - * Member ID + * Options */ displayName: () => LocalizedString /** - * The ID of the member to retrieve + * Options list */ shortDesc: () => LocalizedString /** - * Select or enter the ID of the member (patron) whose details you want to retrieve. This is a required field. + * List of select option values to match against */ longDesc: () => LocalizedString } } } - list_posts: { + 'single-select-is-none-of': { /** - * List Posts + * is none of */ displayName: () => LocalizedString /** - * Retrieve posts from a specific campaign + * Single select is none of */ shortDesc: () => LocalizedString /** - * Fetches a paginated list of posts from a specified campaign, sorted by publish date. Returns post content, metadata, and engagement information. + * Returns `True` if the single select field does not match any of the specified options */ longDesc: () => LocalizedString - options: { - campaignId: { - /** - * Campaign ID - */ - displayName: () => LocalizedString - /** - * The ID of the campaign to retrieve posts from - */ - shortDesc: () => LocalizedString - /** - * Select the campaign whose posts you want to retrieve. This is a required field. - */ - longDesc: () => LocalizedString - } - count: { + args: { + '0': { /** - * Count + * Field */ displayName: () => LocalizedString /** - * Maximum number of posts to return + * Single select field */ shortDesc: () => LocalizedString /** - * Specifies the maximum number of posts to retrieve in a single request. Defaults to 20 if not specified. + * The single select field to check */ longDesc: () => LocalizedString } - cursor: { + '1': { /** - * Cursor + * Options */ displayName: () => LocalizedString /** - * Pagination cursor for retrieving the next set of results + * Options list */ shortDesc: () => LocalizedString /** - * Use the cursor returned from a previous request to fetch the next page of posts. Leave empty for the first page. + * List of select option values to exclude */ longDesc: () => LocalizedString } } } - get_post: { + 'multiple-select-has': { /** - * Get Post + * has any of */ displayName: () => LocalizedString /** - * Retrieve detailed information about a specific post + * Multiple select contains */ shortDesc: () => LocalizedString /** - * Fetches comprehensive details about a single post including content, publish information, access settings, and engagement metrics. + * Returns `True` if the multiple select field contains the specified option */ longDesc: () => LocalizedString - options: { - campaignId: { + args: { + '0': { /** - * Campaign ID + * Field */ displayName: () => LocalizedString /** - * The campaign to filter posts from + * Multiple select field */ shortDesc: () => LocalizedString /** - * Optionally select a campaign to filter the post selection. This helps narrow down the post list when searching. + * The multiple select field to check */ longDesc: () => LocalizedString } - postId: { + '1': { /** - * Post ID + * Option */ displayName: () => LocalizedString /** - * The ID of the post to retrieve + * Option to find */ shortDesc: () => LocalizedString /** - * Select or enter the ID of the post whose details you want to retrieve. This is a required field. + * The select option value to find in the field */ longDesc: () => LocalizedString } } } - } - triggers: { - pledge_trigger: { + 'multiple-select-has-not': { /** - * Pledge Event + * doesn't have any of */ displayName: () => LocalizedString /** - * Triggers when a pledge is created, updated, or deleted + * Multiple select does not contain */ shortDesc: () => LocalizedString /** - * Monitors pledge events for a specific campaign using Patreon webhooks. This trigger fires when a member creates, updates, or deletes their pledge, allowing you to automate workflows based on patron pledge activity. + * Returns `True` if the multiple select field does not contain the specified option */ longDesc: () => LocalizedString - options: { - campaignId: { + args: { + '0': { /** - * Campaign ID + * Field */ displayName: () => LocalizedString /** - * The campaign to monitor for pledge events + * Multiple select field */ shortDesc: () => LocalizedString /** - * Select the campaign you want to monitor for pledge-related events. This is a required field. + * The multiple select field to check */ longDesc: () => LocalizedString } - trigger: { + '1': { /** - * Trigger Event + * Option */ displayName: () => LocalizedString /** - * The specific pledge event to monitor + * Option to exclude */ shortDesc: () => LocalizedString /** - * Select which type of pledge event should trigger this workflow. Choose from pledge creation (when a member first pledges or a follower becomes a patron), pledge updates (upgrades or downgrades), or pledge deletion. + * The select option value that should not be in the field */ longDesc: () => LocalizedString } } } - member_trigger: { + 'link-row-has': { /** - * Member Event + * has */ displayName: () => LocalizedString /** - * Triggers when a member is created, updated, or deleted + * Link row contains */ shortDesc: () => LocalizedString /** - * Monitors member events for a specific campaign using Patreon webhooks. This trigger fires when a member is created, their information is updated (including payment charging events), or their membership is deleted. + * Returns `True` if the link row field contains the specified linked record */ longDesc: () => LocalizedString - options: { - campaignId: { + args: { + '0': { /** - * Campaign ID + * Field */ displayName: () => LocalizedString /** - * The campaign to monitor for member events + * Link row field */ shortDesc: () => LocalizedString /** - * Select the campaign you want to monitor for member-related events. This is a required field. + * The link row field to check */ longDesc: () => LocalizedString } - trigger: { + '1': { /** - * Trigger Event + * Record ID */ displayName: () => LocalizedString /** - * The specific member event to monitor + * Linked record ID */ shortDesc: () => LocalizedString /** - * Select which type of member event should trigger this workflow. Member creation occurs only if there was no prior payment between patron and creator. Updates include payment charging events. Deletion only occurs if no prior payment happened. + * The ID of the linked record to find */ longDesc: () => LocalizedString } } } - post_trigger: { + 'link-row-has-not': { /** - * Post Event + * doesn't have */ displayName: () => LocalizedString /** - * Triggers when a post is published, updated, or deleted + * Link row does not contain */ shortDesc: () => LocalizedString /** - * Monitors post events for a specific campaign using Patreon webhooks. This trigger fires when a post is published, updated, or deleted on the campaign, allowing you to automate content distribution and notifications. + * Returns `True` if the link row field does not contain the specified linked record */ longDesc: () => LocalizedString - options: { - campaignId: { + args: { + '0': { /** - * Campaign ID + * Field */ displayName: () => LocalizedString /** - * The campaign to monitor for post events + * Link row field */ shortDesc: () => LocalizedString /** - * Select the campaign you want to monitor for post-related events. This is a required field. + * The link row field to check */ longDesc: () => LocalizedString } - trigger: { + '1': { /** - * Trigger Event + * Record ID */ displayName: () => LocalizedString /** - * The specific post event to monitor + * Linked record ID */ shortDesc: () => LocalizedString /** - * Select which type of post event should trigger this workflow. Choose from post publication, post updates, or post deletion events. + * The ID of the linked record that should not be present */ longDesc: () => LocalizedString } } } - } - } - Asana: { - /** - * Asana - */ - displayName: () => LocalizedString - groups: { - /** - * Project & Task Management - */ - '0': () => LocalizedString - } - /** - * Automate workflows by integrating with the Asana project management platform - */ - shortDesc: () => LocalizedString - /** - * Connect to Asana to automate task management, project monitoring, and team collaboration workflows. Use these triggers to respond to changes in tasks, projects, and workspaces. - */ - longDesc: () => LocalizedString - triggers: { - task_completed: { + 'link-row-contains': { /** - * Task Completed + * contains */ displayName: () => LocalizedString /** - * Triggers when a task is marked complete in a specific project + * Link row value contains */ shortDesc: () => LocalizedString /** - * Initiates a workflow when any task within the specified project is marked as completed. Use this to automate follow-up actions or notifications upon task completion. + * Returns `True` if any linked record value contains the specified text */ longDesc: () => LocalizedString - options: { - project: { + args: { + '0': { /** - * Project ID + * Field */ displayName: () => LocalizedString /** - * The project containing the completed tasks + * Link row field */ shortDesc: () => LocalizedString /** - * The unique identifier of the project where task completions will be monitored + * The link row field to search */ longDesc: () => LocalizedString } - workspace: { + '1': { /** - * Workspace ID + * Text */ displayName: () => LocalizedString /** - * The workspace containing the project + * Text to find */ shortDesc: () => LocalizedString /** - * The unique identifier of the workspace where the project exists + * The text to search for in linked record values */ longDesc: () => LocalizedString } } - event_info: { - /** - * Event data - */ - desc: () => LocalizedString - type: { - fields: { - events: { - /** - * Events - */ - displayName: () => LocalizedString - /** - * List of event objects - */ - shortDesc: () => LocalizedString - /** - * An array containing event objects that represent individual changes or actions within Asana. - */ - longDesc: () => LocalizedString - type: { - fields: { - action: { - /** - * Action - */ - displayName: () => LocalizedString - /** - * Type of action performed - */ - shortDesc: () => LocalizedString - /** - * Specifies the nature of the action that triggered the event; for task completion, this is typically 'changed'. - */ - longDesc: () => LocalizedString - /** - * string - */ - type: () => LocalizedString - } - parent: { - /** - * Parent Resource - */ - displayName: () => LocalizedString - /** - * Parent resource details - */ - shortDesc: () => LocalizedString - /** - * Information about the parent resource associated with the event, if applicable. For tasks, this could be the project or parent task. - */ - longDesc: () => LocalizedString - type: { - fields: { - gid: { - /** - * Parent GID - */ - displayName: () => LocalizedString - /** - * Globally unique identifier of the parent resource - */ - shortDesc: () => LocalizedString - /** - * The unique identifier assigned to the parent resource within Asana. - */ - longDesc: () => LocalizedString - /** - * string - */ - type: () => LocalizedString - } - resource_type: { - /** - * Parent Resource Type - */ - displayName: () => LocalizedString - /** - * Type of the parent resource - */ - shortDesc: () => LocalizedString - /** - * The specific type of the parent resource, such as 'project' or 'task'. - */ - longDesc: () => LocalizedString - /** - * string - */ - type: () => LocalizedString - } - resource_subtype: { - /** - * Parent Resource Subtype - */ - displayName: () => LocalizedString - /** - * Subtype of the parent resource - */ - shortDesc: () => LocalizedString - /** - * The subtype classification of the parent resource, providing more specific categorization. - */ - longDesc: () => LocalizedString - /** - * string - */ - type: () => LocalizedString - } - } - } - } - resource: { - /** - * Resource - */ - displayName: () => LocalizedString - /** - * Affected resource details - */ - shortDesc: () => LocalizedString - /** - * Information about the resource that was directly affected by the event; in this case, the task that was completed. - */ - longDesc: () => LocalizedString - type: { - fields: { - gid: { - /** - * Resource GID - */ - displayName: () => LocalizedString - /** - * Globally unique identifier of the resource - */ - shortDesc: () => LocalizedString - /** - * The unique identifier assigned to the resource within Asana. - */ - longDesc: () => LocalizedString - /** - * string - */ - type: () => LocalizedString - } - resource_type: { - /** - * Resource Type - */ - displayName: () => LocalizedString - /** - * Type of the resource - */ - shortDesc: () => LocalizedString - /** - * The specific type of the resource, which would be 'task' for task completion events. - */ - longDesc: () => LocalizedString - /** - * string - */ - type: () => LocalizedString - } - resource_subtype: { - /** - * Resource Subtype - */ - displayName: () => LocalizedString - /** - * Subtype of the resource - */ - shortDesc: () => LocalizedString - /** - * The subtype classification of the resource, providing more specific categorization. - */ - longDesc: () => LocalizedString - /** - * string - */ - type: () => LocalizedString - } - } - } - } - change: { - /** - * Change Details - */ - displayName: () => LocalizedString - /** - * Details of the change - */ - shortDesc: () => LocalizedString - /** - * Specific information about the change that occurred, including the field affected and the nature of the change. - */ - longDesc: () => LocalizedString - type: { - fields: { - field: { - /** - * Changed Field - */ - displayName: () => LocalizedString - /** - * Field that was changed - */ - shortDesc: () => LocalizedString - /** - * The specific field within the resource that was modified; for task completion, this is 'completed'. - */ - longDesc: () => LocalizedString - /** - * string - */ - type: () => LocalizedString - } - action: { - /** - * Change Action - */ - displayName: () => LocalizedString - /** - * Nature of the change - */ - shortDesc: () => LocalizedString - /** - * Describes how the field was changed; for task completion, this is 'changed'. - */ - longDesc: () => LocalizedString - /** - * string - */ - type: () => LocalizedString - } - } - } - } - user: { - /** - * User - */ - displayName: () => LocalizedString - /** - * User details - */ - shortDesc: () => LocalizedString - /** - * Information about the user who initiated the action that triggered the event. - */ - longDesc: () => LocalizedString - type: { - fields: { - gid: { - /** - * User GID - */ - displayName: () => LocalizedString - /** - * Globally unique identifier of the user - */ - shortDesc: () => LocalizedString - /** - * The unique identifier assigned to the user within Asana. - */ - longDesc: () => LocalizedString - /** - * string - */ - type: () => LocalizedString - } - resource_type: { - /** - * User Resource Type - */ - displayName: () => LocalizedString - /** - * Type of the user resource - */ - shortDesc: () => LocalizedString - /** - * The resource type, typically 'user', indicating the entity is a user. - */ - longDesc: () => LocalizedString - /** - * string - */ - type: () => LocalizedString - } - } - } - } - created_at: { - /** - * Creation Timestamp - */ - displayName: () => LocalizedString - /** - * Event creation time - */ - shortDesc: () => LocalizedString - /** - * The timestamp indicating when the event was created. - */ - longDesc: () => LocalizedString - /** - * string - */ - type: () => LocalizedString - } - } - } - } - } + } + 'link-row-not-contains': { + /** + * doesn't contain + */ + displayName: () => LocalizedString + /** + * Link row value does not contain + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if no linked record value contains the specified text + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Link row field + */ + shortDesc: () => LocalizedString + /** + * The link row field to search + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Text + */ + displayName: () => LocalizedString + /** + * Text to exclude + */ + shortDesc: () => LocalizedString + /** + * The text that should not be in linked record values + */ + longDesc: () => LocalizedString } } } - attachment_added: { + 'filename-contains': { /** - * Attachment Added + * filename contains */ displayName: () => LocalizedString /** - * Triggers when an attachment is uploaded to a task + * File name contains text */ shortDesc: () => LocalizedString /** - * Initiates a workflow when a file is attached to any task within the specified project. Optionally filter by a specific task. Use this to process or track files as they are added to tasks. + * Returns `True` if any file name contains the specified text */ longDesc: () => LocalizedString - options: { - project: { + args: { + '0': { /** - * Project ID + * Field */ displayName: () => LocalizedString /** - * The project containing the tasks with attachments + * File field */ shortDesc: () => LocalizedString /** - * The unique identifier of the project where attachment activities will be monitored + * The file field to check */ longDesc: () => LocalizedString } - task: { + '1': { /** - * Task ID (Optional) + * Text */ displayName: () => LocalizedString /** - * Specific task to monitor for attachments + * Text to find */ shortDesc: () => LocalizedString /** - * The unique identifier of a specific task to monitor. If not provided, attachments from all tasks in the project will trigger the workflow + * The text to search for in file names */ longDesc: () => LocalizedString } - workspace: { + } + } + 'has-file-type': { + /** + * has file type + */ + displayName: () => LocalizedString + /** + * Has file with type + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the field contains a file with the specified type + */ + longDesc: () => LocalizedString + args: { + '0': { /** - * Workspace ID + * Field */ displayName: () => LocalizedString /** - * The workspace containing the project + * File field */ shortDesc: () => LocalizedString /** - * The unique identifier of the workspace where the project exists + * The file field to check + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Type + */ + displayName: () => LocalizedString + /** + * File type + */ + shortDesc: () => LocalizedString + /** + * The file type to check for (e.g., "image", "document") */ longDesc: () => LocalizedString } } - event_info: { - /** - * Event data - */ - desc: () => LocalizedString - type: { - fields: { - events: { - /** - * Events - */ - displayName: () => LocalizedString - /** - * List of event objects - */ - shortDesc: () => LocalizedString - /** - * An array containing event objects that represent individual changes or actions within Asana. - */ - longDesc: () => LocalizedString - type: { - fields: { - action: { - /** - * Action - */ - displayName: () => LocalizedString - /** - * Type of action performed - */ - shortDesc: () => LocalizedString - /** - * Specifies the nature of the action that triggered the event; for task completion, this is typically 'changed'. - */ - longDesc: () => LocalizedString - /** - * string - */ - type: () => LocalizedString - } - parent: { - /** - * Parent Resource - */ - displayName: () => LocalizedString - /** - * Parent resource details - */ - shortDesc: () => LocalizedString - /** - * Information about the parent resource associated with the event, if applicable. For tasks, this could be the project or parent task. - */ - longDesc: () => LocalizedString - type: { - fields: { - gid: { - /** - * Parent GID - */ - displayName: () => LocalizedString - /** - * Globally unique identifier of the parent resource - */ - shortDesc: () => LocalizedString - /** - * The unique identifier assigned to the parent resource within Asana. - */ - longDesc: () => LocalizedString - /** - * string - */ - type: () => LocalizedString - } - resource_type: { - /** - * Parent Resource Type - */ - displayName: () => LocalizedString - /** - * Type of the parent resource - */ - shortDesc: () => LocalizedString - /** - * The specific type of the parent resource, such as 'project' or 'task'. - */ - longDesc: () => LocalizedString - /** - * string - */ - type: () => LocalizedString - } - resource_subtype: { - /** - * Parent Resource Subtype - */ - displayName: () => LocalizedString - /** - * Subtype of the parent resource - */ - shortDesc: () => LocalizedString - /** - * The subtype classification of the parent resource, providing more specific categorization. - */ - longDesc: () => LocalizedString - /** - * string - */ - type: () => LocalizedString - } - } - } - } - resource: { - /** - * Resource - */ - displayName: () => LocalizedString - /** - * Affected resource details - */ - shortDesc: () => LocalizedString - /** - * Information about the resource that was directly affected by the event; in this case, the task that was completed. - */ - longDesc: () => LocalizedString - type: { - fields: { - gid: { - /** - * Resource GID - */ - displayName: () => LocalizedString - /** - * Globally unique identifier of the resource - */ - shortDesc: () => LocalizedString - /** - * The unique identifier assigned to the resource within Asana. - */ - longDesc: () => LocalizedString - /** - * string - */ - type: () => LocalizedString - } - resource_type: { - /** - * Resource Type - */ - displayName: () => LocalizedString - /** - * Type of the resource - */ - shortDesc: () => LocalizedString - /** - * The specific type of the resource, which would be 'task' for task completion events. - */ - longDesc: () => LocalizedString - /** - * string - */ - type: () => LocalizedString - } - resource_subtype: { - /** - * Resource Subtype - */ - displayName: () => LocalizedString - /** - * Subtype of the resource - */ - shortDesc: () => LocalizedString - /** - * The subtype classification of the resource, providing more specific categorization. - */ - longDesc: () => LocalizedString - /** - * string - */ - type: () => LocalizedString - } - } - } - } - change: { - /** - * Change Details - */ - displayName: () => LocalizedString - /** - * Details of the change - */ - shortDesc: () => LocalizedString - /** - * Specific information about the change that occurred, including the field affected and the nature of the change. - */ - longDesc: () => LocalizedString - type: { - fields: { - field: { - /** - * Changed Field - */ - displayName: () => LocalizedString - /** - * Field that was changed - */ - shortDesc: () => LocalizedString - /** - * The specific field within the resource that was modified; for task completion, this is 'completed'. - */ - longDesc: () => LocalizedString - /** - * string - */ - type: () => LocalizedString - } - action: { - /** - * Change Action - */ - displayName: () => LocalizedString - /** - * Nature of the change - */ - shortDesc: () => LocalizedString - /** - * Describes how the field was changed; for task completion, this is 'changed'. - */ - longDesc: () => LocalizedString - /** - * string - */ - type: () => LocalizedString - } - } - } - } - user: { - /** - * User - */ - displayName: () => LocalizedString - /** - * User details - */ - shortDesc: () => LocalizedString - /** - * Information about the user who initiated the action that triggered the event. - */ - longDesc: () => LocalizedString - type: { - fields: { - gid: { - /** - * User GID - */ - displayName: () => LocalizedString - /** - * Globally unique identifier of the user - */ - shortDesc: () => LocalizedString - /** - * The unique identifier assigned to the user within Asana. - */ - longDesc: () => LocalizedString - /** - * string - */ - type: () => LocalizedString - } - resource_type: { - /** - * User Resource Type - */ - displayName: () => LocalizedString - /** - * Type of the user resource - */ - shortDesc: () => LocalizedString - /** - * The resource type, typically 'user', indicating the entity is a user. - */ - longDesc: () => LocalizedString - /** - * string - */ - type: () => LocalizedString - } - } - } - } - created_at: { - /** - * Creation Timestamp - */ - displayName: () => LocalizedString - /** - * Event creation time - */ - shortDesc: () => LocalizedString - /** - * The timestamp indicating when the event was created. - */ - longDesc: () => LocalizedString - /** - * string - */ - type: () => LocalizedString - } - } - } - } - } + } + 'files-lower-than': { + /** + * files lower than + */ + displayName: () => LocalizedString + /** + * File count is less than + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the number of files is less than the specified count + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * File field + */ + shortDesc: () => LocalizedString + /** + * The file field to count + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Count + */ + displayName: () => LocalizedString + /** + * Maximum count + */ + shortDesc: () => LocalizedString + /** + * The maximum number of files + */ + longDesc: () => LocalizedString } } } - subtask_completed: { + 'user-is': { /** - * Subtask Completed + * is */ displayName: () => LocalizedString /** - * Triggers when a subtask is marked complete + * User equals */ shortDesc: () => LocalizedString /** - * Initiates a workflow when a subtask within a specific parent task is marked as completed. Use this to track progress on multi-stage tasks or to trigger the next steps in a workflow. + * Returns `True` if the user field equals the specified user */ longDesc: () => LocalizedString - options: { - project: { + args: { + '0': { /** - * Project ID + * Field */ displayName: () => LocalizedString /** - * The project containing the parent task + * User field */ shortDesc: () => LocalizedString /** - * The unique identifier of the project where the parent task exists + * The user field to check */ longDesc: () => LocalizedString } - workspace: { + '1': { /** - * Workspace ID + * User */ displayName: () => LocalizedString /** - * The workspace containing the project + * User to match */ shortDesc: () => LocalizedString /** - * The unique identifier of the workspace where the project exists + * The user identifier to match */ longDesc: () => LocalizedString } - task: { + } + } + 'user-is-not': { + /** + * is not + */ + displayName: () => LocalizedString + /** + * User does not equal + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the user field does not equal the specified user + */ + longDesc: () => LocalizedString + args: { + '0': { /** - * Parent Task ID + * Field */ displayName: () => LocalizedString /** - * The parent task containing the subtasks + * User field */ shortDesc: () => LocalizedString /** - * The unique identifier of the parent task whose subtasks will be monitored for completion + * The user field to check + */ + longDesc: () => LocalizedString + } + '1': { + /** + * User + */ + displayName: () => LocalizedString + /** + * User to exclude + */ + shortDesc: () => LocalizedString + /** + * The user identifier to exclude */ longDesc: () => LocalizedString } } - event_info: { - /** - * Event data - */ - desc: () => LocalizedString - type: { - fields: { - events: { - /** - * Events - */ - displayName: () => LocalizedString - /** - * List of event objects - */ - shortDesc: () => LocalizedString - /** - * An array containing event objects that represent individual changes or actions within Asana. - */ - longDesc: () => LocalizedString - type: { - fields: { - action: { - /** - * Action - */ - displayName: () => LocalizedString - /** - * Type of action performed - */ - shortDesc: () => LocalizedString - /** - * Specifies the nature of the action that triggered the event; for task completion, this is typically 'changed'. - */ - longDesc: () => LocalizedString - /** + } + 'multiple-collaborators-has': { + /** + * has + */ + displayName: () => LocalizedString + /** + * Has collaborator + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the multiple collaborators field contains the specified user + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Collaborators field + */ + shortDesc: () => LocalizedString + /** + * The multiple collaborators field to check + */ + longDesc: () => LocalizedString + } + '1': { + /** + * User + */ + displayName: () => LocalizedString + /** + * User to find + */ + shortDesc: () => LocalizedString + /** + * The user identifier to find + */ + longDesc: () => LocalizedString + } + } + } + 'multiple-collaborators-has-not': { + /** + * doesn't have + */ + displayName: () => LocalizedString + /** + * Does not have collaborator + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the multiple collaborators field does not contain the specified user + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Collaborators field + */ + shortDesc: () => LocalizedString + /** + * The multiple collaborators field to check + */ + longDesc: () => LocalizedString + } + '1': { + /** + * User + */ + displayName: () => LocalizedString + /** + * User to exclude + */ + shortDesc: () => LocalizedString + /** + * The user identifier that should not be present + */ + longDesc: () => LocalizedString + } + } + } + 'has-empty-value': { + /** + * has empty value + */ + displayName: () => LocalizedString + /** + * Lookup has empty value + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the lookup field has at least one empty value + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Lookup field + */ + shortDesc: () => LocalizedString + /** + * The lookup field to check for empty values + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Subfield + */ + displayName: () => LocalizedString + /** + * Subfield to check + */ + shortDesc: () => LocalizedString + /** + * The specific subfield within the lookup to check + */ + longDesc: () => LocalizedString + } + } + } + 'has-not-empty-value': { + /** + * doesn't have empty value + */ + displayName: () => LocalizedString + /** + * Lookup has no empty values + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the lookup field has no empty values + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Lookup field + */ + shortDesc: () => LocalizedString + /** + * The lookup field to check + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Subfield + */ + displayName: () => LocalizedString + /** + * Subfield to check + */ + shortDesc: () => LocalizedString + /** + * The specific subfield within the lookup to check + */ + longDesc: () => LocalizedString + } + } + } + 'has-value-equal': { + /** + * has value equal + */ + displayName: () => LocalizedString + /** + * Lookup value equals + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the lookup field has a value equal to the specified value + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Lookup field + */ + shortDesc: () => LocalizedString + /** + * The lookup field to check + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Value + */ + displayName: () => LocalizedString + /** + * Value to match + */ + shortDesc: () => LocalizedString + /** + * The value to find in the lookup field + */ + longDesc: () => LocalizedString + } + } + } + 'has-not-value-equal': { + /** + * doesn't have value equal + */ + displayName: () => LocalizedString + /** + * Lookup value does not equal + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the lookup field does not have a value equal to the specified value + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Lookup field + */ + shortDesc: () => LocalizedString + /** + * The lookup field to check + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Value + */ + displayName: () => LocalizedString + /** + * Value to exclude + */ + shortDesc: () => LocalizedString + /** + * The value that should not be in the lookup field + */ + longDesc: () => LocalizedString + } + } + } + 'has-value-contains': { + /** + * has value contains + */ + displayName: () => LocalizedString + /** + * Lookup value contains + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the lookup field has a value containing the specified text + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Lookup field + */ + shortDesc: () => LocalizedString + /** + * The lookup field to search + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Text + */ + displayName: () => LocalizedString + /** + * Text to find + */ + shortDesc: () => LocalizedString + /** + * The text to search for in lookup values + */ + longDesc: () => LocalizedString + } + } + } + 'has-not-value-contains': { + /** + * doesn't have value contains + */ + displayName: () => LocalizedString + /** + * Lookup value does not contain + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the lookup field does not have a value containing the specified text + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Lookup field + */ + shortDesc: () => LocalizedString + /** + * The lookup field to search + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Text + */ + displayName: () => LocalizedString + /** + * Text to exclude + */ + shortDesc: () => LocalizedString + /** + * The text that should not be in lookup values + */ + longDesc: () => LocalizedString + } + } + } + 'has-value-contains-word': { + /** + * has value contains word + */ + displayName: () => LocalizedString + /** + * Lookup value contains word + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the lookup field has a value containing the specified word + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Lookup field + */ + shortDesc: () => LocalizedString + /** + * The lookup field to search + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Word + */ + displayName: () => LocalizedString + /** + * Word to find + */ + shortDesc: () => LocalizedString + /** + * The complete word to search for in lookup values + */ + longDesc: () => LocalizedString + } + } + } + 'has-not-value-contains-word': { + /** + * doesn't have value contains word + */ + displayName: () => LocalizedString + /** + * Lookup value does not contain word + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the lookup field does not have a value containing the specified word + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Lookup field + */ + shortDesc: () => LocalizedString + /** + * The lookup field to search + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Word + */ + displayName: () => LocalizedString + /** + * Word to exclude + */ + shortDesc: () => LocalizedString + /** + * The complete word that should not be in lookup values + */ + longDesc: () => LocalizedString + } + } + } + 'has-value-length-is-lower-than': { + /** + * has value length is lower than + */ + displayName: () => LocalizedString + /** + * Lookup value length is less than + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the lookup field has a value with length less than the specified number + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Lookup field + */ + shortDesc: () => LocalizedString + /** + * The lookup field to measure + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Length + */ + displayName: () => LocalizedString + /** + * Maximum length + */ + shortDesc: () => LocalizedString + /** + * The maximum length for lookup values + */ + longDesc: () => LocalizedString + } + } + } + 'has-all-values-equal': { + /** + * has all values equal + */ + displayName: () => LocalizedString + /** + * All lookup values equal + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if all values in the lookup field equal the specified value + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Lookup field + */ + shortDesc: () => LocalizedString + /** + * The lookup field to check + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Value + */ + displayName: () => LocalizedString + /** + * Value to match + */ + shortDesc: () => LocalizedString + /** + * The value that all lookup values should equal + */ + longDesc: () => LocalizedString + } + } + } + 'has-any-select-option-equal': { + /** + * has any select option equal + */ + displayName: () => LocalizedString + /** + * Lookup has select option + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the lookup field has any select option equal to the specified value + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Lookup field + */ + shortDesc: () => LocalizedString + /** + * The lookup field with select options + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Option + */ + displayName: () => LocalizedString + /** + * Option to find + */ + shortDesc: () => LocalizedString + /** + * The select option value to find + */ + longDesc: () => LocalizedString + } + } + } + 'has-none-select-option-equal': { + /** + * doesn't have select option equal + */ + displayName: () => LocalizedString + /** + * Lookup has no select option + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the lookup field has no select option equal to the specified value + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Lookup field + */ + shortDesc: () => LocalizedString + /** + * The lookup field with select options + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Option + */ + displayName: () => LocalizedString + /** + * Option to exclude + */ + shortDesc: () => LocalizedString + /** + * The select option value that should not be present + */ + longDesc: () => LocalizedString + } + } + } + 'has-value-higher': { + /** + * has value higher than + */ + displayName: () => LocalizedString + /** + * Lookup value is greater than + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the lookup field has a numeric value greater than the specified number + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Lookup field + */ + shortDesc: () => LocalizedString + /** + * The lookup field with numeric values + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Number + */ + displayName: () => LocalizedString + /** + * Minimum value + */ + shortDesc: () => LocalizedString + /** + * The number that lookup values should be greater than + */ + longDesc: () => LocalizedString + } + } + } + 'has-not-value-higher': { + /** + * doesn't have value higher than + */ + displayName: () => LocalizedString + /** + * Lookup value is not greater than + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the lookup field does not have a numeric value greater than the specified number + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Lookup field + */ + shortDesc: () => LocalizedString + /** + * The lookup field with numeric values + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Number + */ + displayName: () => LocalizedString + /** + * Maximum value + */ + shortDesc: () => LocalizedString + /** + * The number that lookup values should not be greater than + */ + longDesc: () => LocalizedString + } + } + } + 'has-value-higher-or-equal': { + /** + * has value higher than or equal + */ + displayName: () => LocalizedString + /** + * Lookup value is greater than or equal + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the lookup field has a numeric value greater than or equal to the specified number + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Lookup field + */ + shortDesc: () => LocalizedString + /** + * The lookup field with numeric values + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Number + */ + displayName: () => LocalizedString + /** + * Minimum value + */ + shortDesc: () => LocalizedString + /** + * The number that lookup values should be greater than or equal to + */ + longDesc: () => LocalizedString + } + } + } + 'has-not-value-higher-or-equal': { + /** + * doesn't have value higher than or equal + */ + displayName: () => LocalizedString + /** + * Lookup value is not greater than or equal + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the lookup field does not have a numeric value greater than or equal to the specified number + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Lookup field + */ + shortDesc: () => LocalizedString + /** + * The lookup field with numeric values + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Number + */ + displayName: () => LocalizedString + /** + * Threshold value + */ + shortDesc: () => LocalizedString + /** + * The number that lookup values should not be greater than or equal to + */ + longDesc: () => LocalizedString + } + } + } + 'has-value-lower': { + /** + * has value lower than + */ + displayName: () => LocalizedString + /** + * Lookup value is less than + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the lookup field has a numeric value less than the specified number + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Lookup field + */ + shortDesc: () => LocalizedString + /** + * The lookup field with numeric values + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Number + */ + displayName: () => LocalizedString + /** + * Maximum value + */ + shortDesc: () => LocalizedString + /** + * The number that lookup values should be less than + */ + longDesc: () => LocalizedString + } + } + } + 'has-not-value-lower': { + /** + * doesn't have value lower than + */ + displayName: () => LocalizedString + /** + * Lookup value is not less than + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the lookup field does not have a numeric value less than the specified number + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Lookup field + */ + shortDesc: () => LocalizedString + /** + * The lookup field with numeric values + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Number + */ + displayName: () => LocalizedString + /** + * Minimum value + */ + shortDesc: () => LocalizedString + /** + * The number that lookup values should not be less than + */ + longDesc: () => LocalizedString + } + } + } + 'has-value-lower-or-equal': { + /** + * has value lower than or equal + */ + displayName: () => LocalizedString + /** + * Lookup value is less than or equal + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the lookup field has a numeric value less than or equal to the specified number + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Lookup field + */ + shortDesc: () => LocalizedString + /** + * The lookup field with numeric values + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Number + */ + displayName: () => LocalizedString + /** + * Maximum value + */ + shortDesc: () => LocalizedString + /** + * The number that lookup values should be less than or equal to + */ + longDesc: () => LocalizedString + } + } + } + 'has-not-value-lower-or-equal': { + /** + * doesn't have value lower than or equal + */ + displayName: () => LocalizedString + /** + * Lookup value is not less than or equal + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the lookup field does not have a numeric value less than or equal to the specified number + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Lookup field + */ + shortDesc: () => LocalizedString + /** + * The lookup field with numeric values + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Number + */ + displayName: () => LocalizedString + /** + * Threshold value + */ + shortDesc: () => LocalizedString + /** + * The number that lookup values should not be less than or equal to + */ + longDesc: () => LocalizedString + } + } + } + 'has-date-equal': { + /** + * has date equal + */ + displayName: () => LocalizedString + /** + * Lookup date equals + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the lookup field has a date equal to the specified date + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Lookup field + */ + shortDesc: () => LocalizedString + /** + * The lookup field with date values + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Date + */ + displayName: () => LocalizedString + /** + * Date to match + */ + shortDesc: () => LocalizedString + /** + * The date that lookup values should equal (format: YYYY-MM-DD) + */ + longDesc: () => LocalizedString + } + } + } + 'has-not-date-equal': { + /** + * doesn't have date equal + */ + displayName: () => LocalizedString + /** + * Lookup date does not equal + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the lookup field does not have a date equal to the specified date + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Lookup field + */ + shortDesc: () => LocalizedString + /** + * The lookup field with date values + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Date + */ + displayName: () => LocalizedString + /** + * Date to exclude + */ + shortDesc: () => LocalizedString + /** + * The date that lookup values should not equal (format: YYYY-MM-DD) + */ + longDesc: () => LocalizedString + } + } + } + 'has-date-before': { + /** + * has date before + */ + displayName: () => LocalizedString + /** + * Lookup date is before + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the lookup field has a date before the specified date + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Lookup field + */ + shortDesc: () => LocalizedString + /** + * The lookup field with date values + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Date + */ + displayName: () => LocalizedString + /** + * Maximum date + */ + shortDesc: () => LocalizedString + /** + * The date that lookup values should be before (format: YYYY-MM-DD) + */ + longDesc: () => LocalizedString + } + } + } + 'has-not-date-before': { + /** + * doesn't have date before + */ + displayName: () => LocalizedString + /** + * Lookup date is not before + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the lookup field does not have a date before the specified date + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Lookup field + */ + shortDesc: () => LocalizedString + /** + * The lookup field with date values + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Date + */ + displayName: () => LocalizedString + /** + * Threshold date + */ + shortDesc: () => LocalizedString + /** + * The date that lookup values should not be before (format: YYYY-MM-DD) + */ + longDesc: () => LocalizedString + } + } + } + 'has-date-on-or-before': { + /** + * has date on or before + */ + displayName: () => LocalizedString + /** + * Lookup date is on or before + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the lookup field has a date on or before the specified date + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Lookup field + */ + shortDesc: () => LocalizedString + /** + * The lookup field with date values + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Date + */ + displayName: () => LocalizedString + /** + * Maximum date + */ + shortDesc: () => LocalizedString + /** + * The date that lookup values should be on or before (format: YYYY-MM-DD) + */ + longDesc: () => LocalizedString + } + } + } + 'has-not-date-on-or-before': { + /** + * doesn't have date on or before + */ + displayName: () => LocalizedString + /** + * Lookup date is not on or before + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the lookup field does not have a date on or before the specified date + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Lookup field + */ + shortDesc: () => LocalizedString + /** + * The lookup field with date values + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Date + */ + displayName: () => LocalizedString + /** + * Threshold date + */ + shortDesc: () => LocalizedString + /** + * The date that lookup values should not be on or before (format: YYYY-MM-DD) + */ + longDesc: () => LocalizedString + } + } + } + 'has-date-after': { + /** + * has date after + */ + displayName: () => LocalizedString + /** + * Lookup date is after + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the lookup field has a date after the specified date + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Lookup field + */ + shortDesc: () => LocalizedString + /** + * The lookup field with date values + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Date + */ + displayName: () => LocalizedString + /** + * Minimum date + */ + shortDesc: () => LocalizedString + /** + * The date that lookup values should be after (format: YYYY-MM-DD) + */ + longDesc: () => LocalizedString + } + } + } + 'has-not-date-after': { + /** + * doesn't have date after + */ + displayName: () => LocalizedString + /** + * Lookup date is not after + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the lookup field does not have a date after the specified date + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Lookup field + */ + shortDesc: () => LocalizedString + /** + * The lookup field with date values + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Date + */ + displayName: () => LocalizedString + /** + * Threshold date + */ + shortDesc: () => LocalizedString + /** + * The date that lookup values should not be after (format: YYYY-MM-DD) + */ + longDesc: () => LocalizedString + } + } + } + 'has-date-on-or-after': { + /** + * has date on or after + */ + displayName: () => LocalizedString + /** + * Lookup date is on or after + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the lookup field has a date on or after the specified date + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Lookup field + */ + shortDesc: () => LocalizedString + /** + * The lookup field with date values + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Date + */ + displayName: () => LocalizedString + /** + * Minimum date + */ + shortDesc: () => LocalizedString + /** + * The date that lookup values should be on or after (format: YYYY-MM-DD) + */ + longDesc: () => LocalizedString + } + } + } + 'has-not-date-on-or-after': { + /** + * doesn't have date on or after + */ + displayName: () => LocalizedString + /** + * Lookup date is not on or after + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the lookup field does not have a date on or after the specified date + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Lookup field + */ + shortDesc: () => LocalizedString + /** + * The lookup field with date values + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Date + */ + displayName: () => LocalizedString + /** + * Threshold date + */ + shortDesc: () => LocalizedString + /** + * The date that lookup values should not be on or after (format: YYYY-MM-DD) + */ + longDesc: () => LocalizedString + } + } + } + 'has-date-within': { + /** + * has date within + */ + displayName: () => LocalizedString + /** + * Lookup date is within period + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the lookup field has a date within the specified time period + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Lookup field + */ + shortDesc: () => LocalizedString + /** + * The lookup field with date values + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Period + */ + displayName: () => LocalizedString + /** + * Time period + */ + shortDesc: () => LocalizedString + /** + * The time period to check (e.g., "today", "this_week", "last_month") + */ + longDesc: () => LocalizedString + } + } + } + 'has-not-date-within': { + /** + * doesn't have date within + */ + displayName: () => LocalizedString + /** + * Lookup date is not within period + */ + shortDesc: () => LocalizedString + /** + * Returns `True` if the lookup field does not have a date within the specified time period + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Lookup field + */ + shortDesc: () => LocalizedString + /** + * The lookup field with date values + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Period + */ + displayName: () => LocalizedString + /** + * Time period + */ + shortDesc: () => LocalizedString + /** + * The time period to exclude (e.g., "today", "this_week", "last_month") + */ + longDesc: () => LocalizedString + } + } + } + } + } + Firestore: { + /** + * Firestore + */ + displayName: () => LocalizedString + groups: { + /** + * Databases & Backend Services + */ + '0': () => LocalizedString + } + /** + * Connect to Google Cloud Firestore to manage your NoSQL document database. + */ + shortDesc: () => LocalizedString + /** + * The Firestore integration enables you to interact with Google Cloud Firestore, a flexible, scalable NoSQL cloud database. Create, read, update, and delete documents, manage collections, and execute queries to automate your document database operations seamlessly. + */ + longDesc: () => LocalizedString + triggers: { + new_document: { + /** + * New Document + */ + displayName: () => LocalizedString + /** + * Triggers when a new document is created in a Firestore collection + */ + shortDesc: () => LocalizedString + /** + * Monitors a Firestore collection for newly created documents. Documents are ordered based on your specified criteria, and the trigger activates when new documents appear at the top of the ordered list. You can optionally filter documents and customize the ordering to track specific types of documents. + */ + longDesc: () => LocalizedString + options: { + project_id: { + /** + * Project ID + */ + displayName: () => LocalizedString + /** + * The Google Cloud project ID + */ + shortDesc: () => LocalizedString + /** + * The unique identifier for your Google Cloud project containing the Firestore database + */ + longDesc: () => LocalizedString + } + collection_path: { + /** + * Collection Path + */ + displayName: () => LocalizedString + /** + * The path to the Firestore collection + */ + shortDesc: () => LocalizedString + /** + * The full path to the collection you want to monitor. For nested collections, use the format: parent_collection/parent_doc_id/nested_collection + */ + longDesc: () => LocalizedString + } + filters: { + /** + * Filters + */ + displayName: () => LocalizedString + /** + * Optional filters to apply to documents + */ + shortDesc: () => LocalizedString + /** + * Define one or more filters to narrow down which documents will trigger the event. Multiple filters are combined with AND logic. + */ + longDesc: () => LocalizedString + type: { + element_type: { + fields: { + field: { + /** + * Field + */ + displayName: () => LocalizedString + /** + * The document field to filter on + */ + shortDesc: () => LocalizedString + /** + * Select the field name in the document that you want to filter + */ + longDesc: () => LocalizedString + } + operator: { + /** + * Operator + */ + displayName: () => LocalizedString + /** + * The comparison operator + */ + shortDesc: () => LocalizedString + /** + * The comparison operation to perform between the field value and your specified value + */ + longDesc: () => LocalizedString + } + value: { + /** + * Value + */ + displayName: () => LocalizedString + /** + * The value to compare against + */ + shortDesc: () => LocalizedString + /** + * The value to use in the comparison. The value will be automatically converted to the appropriate type (string, number, boolean, or null) + */ + longDesc: () => LocalizedString + } + } + } + } + } + order_by: { + /** + * Order By + */ + displayName: () => LocalizedString + /** + * Specify how to order documents + */ + shortDesc: () => LocalizedString + /** + * Define the ordering criteria for documents. The trigger will activate for documents that appear at the top of the ordered list. If not specified, documents are ordered by creation time in descending order (newest first). + */ + longDesc: () => LocalizedString + type: { + fields: { + field: { + /** + * Field + */ + displayName: () => LocalizedString + /** + * The field to order by + */ + shortDesc: () => LocalizedString + /** + * Select the document field to use for ordering + */ + longDesc: () => LocalizedString + } + direction: { + /** + * Direction + */ + displayName: () => LocalizedString + /** + * Sort direction + */ + shortDesc: () => LocalizedString + /** + * Choose ascending (oldest/smallest first) or descending (newest/largest first) order + */ + longDesc: () => LocalizedString + } + } + } + } + } + } + } + actions: { + list_projects: { + /** + * List Projects + */ + displayName: () => LocalizedString + /** + * List all Google Cloud projects accessible with the current credentials + */ + shortDesc: () => LocalizedString + /** + * Retrieves a list of all Google Cloud projects that are accessible with your credentials. You can filter projects by name and use pagination to navigate through large result sets. This is useful for discovering which projects contain Firestore databases. + */ + longDesc: () => LocalizedString + options: { + name: { + /** + * Project Name + */ + displayName: () => LocalizedString + /** + * Filter projects by name + */ + shortDesc: () => LocalizedString + /** + * Optional filter to search for projects containing this name. The search is case-insensitive and matches partial names. + */ + longDesc: () => LocalizedString + } + page_size: { + /** + * Page Size + */ + displayName: () => LocalizedString + /** + * Number of projects to return per page + */ + shortDesc: () => LocalizedString + /** + * The maximum number of projects to return in a single request. Default is 100. Use this with pagination tokens to retrieve large result sets. + */ + longDesc: () => LocalizedString + } + next_page_token: { + /** + * Next Page Token + */ + displayName: () => LocalizedString + /** + * Token for retrieving the next page of results + */ + shortDesc: () => LocalizedString + /** + * Pagination token obtained from a previous request. Use this to retrieve the next page of projects when there are more results than the page size. + */ + longDesc: () => LocalizedString + } + } + } + create_document: { + groups: { + /** + * Documents + */ + '0': () => LocalizedString + } + /** + * Create Document + */ + displayName: () => LocalizedString + /** + * Create a new document in a Firestore collection + */ + shortDesc: () => LocalizedString + /** + * Creates a new document in the specified Firestore collection. You can either let Firestore auto-generate a document ID or provide your own. The document data can be specified through structured fields or as a custom hash object. + */ + longDesc: () => LocalizedString + options: { + project_id: { + /** + * Project ID + */ + displayName: () => LocalizedString + /** + * The Google Cloud project ID + */ + shortDesc: () => LocalizedString + /** + * The unique identifier for your Google Cloud project containing the Firestore database + */ + longDesc: () => LocalizedString + } + collection_path: { + /** + * Collection Path + */ + displayName: () => LocalizedString + /** + * The path to the Firestore collection + */ + shortDesc: () => LocalizedString + /** + * The full path to the collection where the document will be created. For nested collections, use the format: parent_collection/parent_doc_id/nested_collection + */ + longDesc: () => LocalizedString + } + document_id: { + /** + * Document ID + */ + displayName: () => LocalizedString + /** + * Custom document ID (optional) + */ + shortDesc: () => LocalizedString + /** + * Optional custom identifier for the document. If not provided, Firestore will auto-generate a unique ID. Document IDs must be valid UTF-8 strings and cannot contain forward slashes. + */ + longDesc: () => LocalizedString + } + data: { + /** + * Document Data + */ + displayName: () => LocalizedString + /** + * The data to store in the document + */ + shortDesc: () => LocalizedString + /** + * The structured data to store in the document. This will be dynamically typed based on the collection schema if available. Each field will be stored with its appropriate Firestore data type. + */ + longDesc: () => LocalizedString + } + additional_data: { + /** + * Additional Data + */ + displayName: () => LocalizedString + /** + * Additional fields to include in the document + */ + shortDesc: () => LocalizedString + /** + * Optional additional fields to merge with the structured data. Use this to add fields that are not part of the predefined schema or to include dynamic fields. + */ + longDesc: () => LocalizedString + } + } + } + get_document: { + groups: { + /** + * Documents + */ + '0': () => LocalizedString + } + /** + * Get Document + */ + displayName: () => LocalizedString + /** + * Retrieve a specific document from a Firestore collection + */ + shortDesc: () => LocalizedString + /** + * Fetches a single document by its ID from a Firestore collection. Returns the complete document data including metadata such as creation time and last update time. This action will fail if the document does not exist. + */ + longDesc: () => LocalizedString + options: { + project_id: { + /** + * Project ID + */ + displayName: () => LocalizedString + /** + * The Google Cloud project ID + */ + shortDesc: () => LocalizedString + /** + * The unique identifier for your Google Cloud project containing the Firestore database + */ + longDesc: () => LocalizedString + } + collection_path: { + /** + * Collection Path + */ + displayName: () => LocalizedString + /** + * The path to the Firestore collection + */ + shortDesc: () => LocalizedString + /** + * The full path to the collection containing the document. For nested collections, use the format: parent_collection/parent_doc_id/nested_collection + */ + longDesc: () => LocalizedString + } + document_id: { + /** + * Document ID + */ + displayName: () => LocalizedString + /** + * The ID of the document to retrieve + */ + shortDesc: () => LocalizedString + /** + * The unique identifier of the document you want to retrieve. This is the document ID that was either auto-generated or specified when the document was created. + */ + longDesc: () => LocalizedString + } + } + } + update_document: { + groups: { + /** + * Documents + */ + '0': () => LocalizedString + } + /** + * Update Document + */ + displayName: () => LocalizedString + /** + * Update an existing document in a Firestore collection + */ + shortDesc: () => LocalizedString + /** + * Updates an existing document in Firestore with new data. You can choose to merge the new data with existing fields or replace the entire document. By default, the update merges new fields while preserving unspecified fields. + */ + longDesc: () => LocalizedString + options: { + project_id: { + /** + * Project ID + */ + displayName: () => LocalizedString + /** + * The Google Cloud project ID + */ + shortDesc: () => LocalizedString + /** + * The unique identifier for your Google Cloud project containing the Firestore database + */ + longDesc: () => LocalizedString + } + collection_path: { + /** + * Collection Path + */ + displayName: () => LocalizedString + /** + * The path to the Firestore collection + */ + shortDesc: () => LocalizedString + /** + * The full path to the collection containing the document. For nested collections, use the format: parent_collection/parent_doc_id/nested_collection + */ + longDesc: () => LocalizedString + } + document_id: { + /** + * Document ID + */ + displayName: () => LocalizedString + /** + * The ID of the document to update + */ + shortDesc: () => LocalizedString + /** + * The unique identifier of the document you want to update. The document must exist or the operation will fail. + */ + longDesc: () => LocalizedString + } + data: { + /** + * Document Data + */ + displayName: () => LocalizedString + /** + * The new data for the document + */ + shortDesc: () => LocalizedString + /** + * The data to update in the document. When merge is enabled, only the specified fields will be updated. When merge is disabled, this data will replace the entire document. + */ + longDesc: () => LocalizedString + } + additional_data: { + /** + * Additional Data + */ + displayName: () => LocalizedString + /** + * Additional fields to update + */ + shortDesc: () => LocalizedString + /** + * Optional additional fields to merge with the structured data. Use this to update fields that are not part of the predefined schema or to include dynamic fields. + */ + longDesc: () => LocalizedString + } + merge: { + /** + * Merge + */ + displayName: () => LocalizedString + /** + * Whether to merge with existing data + */ + shortDesc: () => LocalizedString + /** + * When true (default), only the specified fields are updated and other fields remain unchanged. When false, the entire document is replaced with the new data. + */ + longDesc: () => LocalizedString + } + } + } + delete_document: { + groups: { + /** + * Documents + */ + '0': () => LocalizedString + } + /** + * Delete Document + */ + displayName: () => LocalizedString + /** + * Delete a document from a Firestore collection + */ + shortDesc: () => LocalizedString + /** + * Permanently deletes a document from a Firestore collection. This operation cannot be undone. The document must exist or the operation will fail. All subcollections under the document will NOT be automatically deleted. + */ + longDesc: () => LocalizedString + options: { + project_id: { + /** + * Project ID + */ + displayName: () => LocalizedString + /** + * The Google Cloud project ID + */ + shortDesc: () => LocalizedString + /** + * The unique identifier for your Google Cloud project containing the Firestore database + */ + longDesc: () => LocalizedString + } + collection_path: { + /** + * Collection Path + */ + displayName: () => LocalizedString + /** + * The path to the Firestore collection + */ + shortDesc: () => LocalizedString + /** + * The full path to the collection containing the document. For nested collections, use the format: parent_collection/parent_doc_id/nested_collection + */ + longDesc: () => LocalizedString + } + document_id: { + /** + * Document ID + */ + displayName: () => LocalizedString + /** + * The ID of the document to delete + */ + shortDesc: () => LocalizedString + /** + * The unique identifier of the document you want to delete. The document must exist or the operation will fail. + */ + longDesc: () => LocalizedString + } + } + } + list_documents: { + groups: { + /** + * Documents + */ + '0': () => LocalizedString + } + /** + * List Documents + */ + displayName: () => LocalizedString + /** + * List all documents in a Firestore collection + */ + shortDesc: () => LocalizedString + /** + * Retrieves all documents from a specified Firestore collection. You can limit the number of results and specify ordering criteria. This action returns the complete document data along with metadata for each document. + */ + longDesc: () => LocalizedString + options: { + project_id: { + /** + * Project ID + */ + displayName: () => LocalizedString + /** + * The Google Cloud project ID + */ + shortDesc: () => LocalizedString + /** + * The unique identifier for your Google Cloud project containing the Firestore database + */ + longDesc: () => LocalizedString + } + collection_path: { + /** + * Collection Path + */ + displayName: () => LocalizedString + /** + * The path to the Firestore collection + */ + shortDesc: () => LocalizedString + /** + * The full path to the collection whose documents you want to list. For nested collections, use the format: parent_collection/parent_doc_id/nested_collection + */ + longDesc: () => LocalizedString + } + limit: { + /** + * Limit + */ + displayName: () => LocalizedString + /** + * Maximum number of documents to return + */ + shortDesc: () => LocalizedString + /** + * The maximum number of documents to retrieve. Default is 100. Use this to control the size of the result set and improve performance. + */ + longDesc: () => LocalizedString + } + order_by: { + /** + * Order By + */ + displayName: () => LocalizedString + /** + * Field to order documents by + */ + shortDesc: () => LocalizedString + /** + * Optional field name to use for ordering the documents. The field must exist in the documents and be of a comparable type (string, number, date). + */ + longDesc: () => LocalizedString + } + order_direction: { + /** + * Order Direction + */ + displayName: () => LocalizedString + /** + * Sort direction for ordering + */ + shortDesc: () => LocalizedString + /** + * The direction to sort documents when an order_by field is specified. Choose ascending for lowest to highest or descending for highest to lowest. + */ + longDesc: () => LocalizedString + } + } + } + list_collections: { + groups: { + /** + * Collections + */ + '0': () => LocalizedString + } + /** + * List Collections + */ + displayName: () => LocalizedString + /** + * List all collections in a Firestore database or document + */ + shortDesc: () => LocalizedString + /** + * Retrieves all collection IDs at the root level of a Firestore database or within a specific document. This is useful for discovering the structure of your Firestore database and navigating nested collections. + */ + longDesc: () => LocalizedString + options: { + project_id: { + /** + * Project ID + */ + displayName: () => LocalizedString + /** + * The Google Cloud project ID + */ + shortDesc: () => LocalizedString + /** + * The unique identifier for your Google Cloud project containing the Firestore database + */ + longDesc: () => LocalizedString + } + parent_document_path: { + /** + * Parent Document Path + */ + displayName: () => LocalizedString + /** + * Path to the parent document (optional) + */ + shortDesc: () => LocalizedString + /** + * Optional path to a document whose subcollections you want to list. If not specified, lists root-level collections. Format: collection_id/document_id + */ + longDesc: () => LocalizedString + } + } + } + get_collection: { + /** + * Get Collection + */ + displayName: () => LocalizedString + /** + * Get information about a Firestore collection + */ + shortDesc: () => LocalizedString + /** + * Retrieves metadata and information about a specific Firestore collection. This includes checking if the collection exists, whether it has documents, and optionally retrieving sample documents from the collection. + */ + longDesc: () => LocalizedString + options: { + project_id: { + /** + * Project ID + */ + displayName: () => LocalizedString + /** + * The Google Cloud project ID + */ + shortDesc: () => LocalizedString + /** + * The unique identifier for your Google Cloud project containing the Firestore database + */ + longDesc: () => LocalizedString + } + collection_id: { + /** + * Collection ID + */ + displayName: () => LocalizedString + /** + * The ID of the collection + */ + shortDesc: () => LocalizedString + /** + * The identifier of the collection you want to retrieve information about. This is the collection name without any parent path. + */ + longDesc: () => LocalizedString + } + parent_document_path: { + /** + * Parent Document Path + */ + displayName: () => LocalizedString + /** + * Path to the parent document (optional) + */ + shortDesc: () => LocalizedString + /** + * Optional path to the parent document if this is a subcollection. If not specified, assumes this is a root-level collection. Format: collection_id/document_id + */ + longDesc: () => LocalizedString + } + include_sample_documents: { + /** + * Include Sample Documents + */ + displayName: () => LocalizedString + /** + * Whether to include sample documents + */ + shortDesc: () => LocalizedString + /** + * When true, includes sample documents from the collection in the response. This helps you understand the structure and content of the collection. + */ + longDesc: () => LocalizedString + } + sample_limit: { + /** + * Sample Limit + */ + displayName: () => LocalizedString + /** + * Number of sample documents to include + */ + shortDesc: () => LocalizedString + /** + * The maximum number of sample documents to retrieve when include_sample_documents is true. Default is 5. + */ + longDesc: () => LocalizedString + } + } + } + query_documents: { + /** + * Query Documents + */ + displayName: () => LocalizedString + /** + * Query documents in a Firestore collection with filters and ordering + */ + shortDesc: () => LocalizedString + /** + * Performs advanced queries on a Firestore collection with support for multiple filters, ordering, and limits. This allows you to search for specific documents based on field values and retrieve them in a particular order. + */ + longDesc: () => LocalizedString + options: { + project_id: { + /** + * Project ID + */ + displayName: () => LocalizedString + /** + * The Google Cloud project ID + */ + shortDesc: () => LocalizedString + /** + * The unique identifier for your Google Cloud project containing the Firestore database + */ + longDesc: () => LocalizedString + } + collection_path: { + /** + * Collection Path + */ + displayName: () => LocalizedString + /** + * The path to the Firestore collection + */ + shortDesc: () => LocalizedString + /** + * The full path to the collection you want to query. For nested collections, use the format: parent_collection/parent_doc_id/nested_collection + */ + longDesc: () => LocalizedString + } + filters: { + /** + * Filters + */ + displayName: () => LocalizedString + /** + * Filter criteria for documents + */ + shortDesc: () => LocalizedString + /** + * Optional list of filters to apply to the query. Multiple filters are combined with AND logic. Each filter specifies a field, comparison operator, and value to match. + */ + longDesc: () => LocalizedString + type: { + element_type: { + fields: { + field: { + /** + * Field + */ + displayName: () => LocalizedString + /** + * The document field to filter on + */ + shortDesc: () => LocalizedString + /** + * The name of the field in the document to apply the filter to. The field must exist in the documents being queried. + */ + longDesc: () => LocalizedString + } + operator: { + /** + * Operator + */ + displayName: () => LocalizedString + /** + * The comparison operator + */ + shortDesc: () => LocalizedString + /** + * The comparison operator to use for filtering. Options include equality, inequality, comparison operators, and array operators. + */ + longDesc: () => LocalizedString + } + value: { + /** + * Value + */ + displayName: () => LocalizedString + /** + * The value to compare against + */ + shortDesc: () => LocalizedString + /** + * The value to use in the comparison. The value type should match the field type in the documents (string, number, boolean, etc.). + */ + longDesc: () => LocalizedString + } + } + } + } + } + order_by: { + /** + * Order By + */ + displayName: () => LocalizedString + /** + * Ordering criteria for results + */ + shortDesc: () => LocalizedString + /** + * Optional list of ordering criteria to apply to the query results. Documents will be sorted by the specified fields in the order they are listed. + */ + longDesc: () => LocalizedString + type: { + element_type: { + fields: { + field: { + /** + * Field + */ + displayName: () => LocalizedString + /** + * The field to order by + */ + shortDesc: () => LocalizedString + /** + * The name of the field to use for ordering. The field must exist in the documents and be of a comparable type. + */ + longDesc: () => LocalizedString + } + direction: { + /** + * Direction + */ + displayName: () => LocalizedString + /** + * Sort direction + */ + shortDesc: () => LocalizedString + /** + * The direction to sort: ascending (lowest to highest) or descending (highest to lowest). + */ + longDesc: () => LocalizedString + } + } + } + } + } + limit: { + /** + * Limit + */ + displayName: () => LocalizedString + /** + * Maximum number of documents to return + */ + shortDesc: () => LocalizedString + /** + * The maximum number of documents to retrieve. Default is 100. Use this to control query performance and result set size. + */ + longDesc: () => LocalizedString + } + } + } + backup_to_google_cloud_storage: { + /** + * Backup to Google Cloud Storage + */ + displayName: () => LocalizedString + /** + * Export Firestore data to Google Cloud Storage + */ + shortDesc: () => LocalizedString + /** + * Creates a backup of your Firestore database or specific collections by exporting the data to Google Cloud Storage. This is useful for disaster recovery, data migration, or creating snapshots of your database at a point in time. + */ + longDesc: () => LocalizedString + options: { + project_id: { + /** + * Project ID + */ + displayName: () => LocalizedString + /** + * The Google Cloud project ID + */ + shortDesc: () => LocalizedString + /** + * The unique identifier for your Google Cloud project containing the Firestore database to backup + */ + longDesc: () => LocalizedString + } + output_uri_prefix: { + /** + * Output URI Prefix + */ + displayName: () => LocalizedString + /** + * GCS bucket URI where backup will be stored + */ + shortDesc: () => LocalizedString + /** + * The Google Cloud Storage URI prefix where the backup files will be written. Format: gs://bucket-name/path/to/backup. The bucket must already exist and you must have write permissions. + */ + longDesc: () => LocalizedString + } + collection_ids: { + /** + * Collection IDs + */ + displayName: () => LocalizedString + /** + * Specific collections to backup (optional) + */ + shortDesc: () => LocalizedString + /** + * Optional list of collection IDs to backup. If not specified, the entire database will be backed up. Use this to create selective backups of specific collections. + */ + longDesc: () => LocalizedString + } + } + } + restore_from_google_cloud_storage: { + /** + * Restore from Google Cloud Storage + */ + displayName: () => LocalizedString + /** + * Import Firestore data from Google Cloud Storage + */ + shortDesc: () => LocalizedString + /** + * Restores Firestore data from a previous backup stored in Google Cloud Storage. This operation can restore the entire database or specific collections. Warning: This will overwrite existing documents with the same IDs. + */ + longDesc: () => LocalizedString + options: { + project_id: { + /** + * Project ID + */ + displayName: () => LocalizedString + /** + * The Google Cloud project ID + */ + shortDesc: () => LocalizedString + /** + * The unique identifier for your Google Cloud project where the data will be restored + */ + longDesc: () => LocalizedString + } + input_uri_prefix: { + /** + * Input URI Prefix + */ + displayName: () => LocalizedString + /** + * GCS bucket URI where backup is stored + */ + shortDesc: () => LocalizedString + /** + * The Google Cloud Storage URI prefix where the backup files are located. This should match the output_uri_prefix used when creating the backup. Format: gs://bucket-name/path/to/backup + */ + longDesc: () => LocalizedString + } + collection_ids: { + /** + * Collection IDs + */ + displayName: () => LocalizedString + /** + * Specific collections to restore (optional) + */ + shortDesc: () => LocalizedString + /** + * Optional list of collection IDs to restore from the backup. If not specified, all collections in the backup will be restored. Use this to selectively restore specific collections. + */ + longDesc: () => LocalizedString + } + } + } + } + } + Sentry: { + /** + * Sentry + */ + displayName: () => LocalizedString + groups: { + /** + * DevOps & Cloud Infrastructure + */ + '0': () => LocalizedString + } + /** + * Monitor and fix errors, track performance issues, and maintain application health with the developer-first debugging platform. + */ + shortDesc: () => LocalizedString + /** + * The Sentry integration enables comprehensive error monitoring and performance tracking for your applications. Access projects, issues, events, and teams to quickly identify, triage, and resolve problems. With real-time alerts and detailed debugging context including stack traces, breadcrumbs, and user impact metrics, Sentry helps your team maintain code quality and deliver seamless user experiences. + */ + longDesc: () => LocalizedString + connectionMessage: { + /** + * Connect to Sentry + */ + title: () => LocalizedString + /** + * To connect to Sentry, you will need an **Auth Token** and your **Organization Slug**. + + ## Getting Your Auth Token + + ### Option 1: User Auth Token (Recommended for personal use) + 1. Log in to [Sentry](https://sentry.io/) + 2. Go to **Settings** → **Account** → **API** → **Auth Tokens** + 3. Click **Create New Token** + 4. Select the required scopes: + - `project:read` - Read project information + - `project:write` - Modify projects + - `org:read` - Read organization data + - `event:read` - Read events + - `member:read` - Read team members + 5. Click **Create Token** and copy it immediately + + Direct link: [sentry.io/settings/account/api/auth-tokens/](https://sentry.io/settings/account/api/auth-tokens/) + + ### Option 2: Internal Integration Token (Recommended for production) + 1. Go to **Settings** → **Developer Settings** → **Custom Integrations** + 2. Click **Create New Integration** → **Internal Integration** + 3. Configure the name and required permissions + 4. After saving, copy the generated token + + ## Finding Your Organization Slug + + Your organization slug is in your Sentry URL: + - If your Sentry URL is `https://your-org.sentry.io/`, your slug is `your-org` + - For sentry.io hosted accounts: `https://sentry.io/organizations/your-org/` → slug is `your-org` + + ## Connection Details + + ### Auth Token + Your Sentry authentication token. Starts with `sntrys_` for newer tokens or may have different prefixes for legacy tokens. + + ### Organization Slug + The URL-friendly identifier for your organization (found in your Sentry URL). + + **Note:** Auth tokens inherit permissions based on your user role and the scopes you selected. For production integrations, use Internal Integration tokens which can be scoped to specific permissions and managed at the organization level. + */ + content: () => LocalizedString + } + triggers: { + new_project_issue: { + /** + * New Project Issue + */ + displayName: () => LocalizedString + /** + * Triggers when a new issue is detected in a specific project + */ + shortDesc: () => LocalizedString + /** + * Monitors a specific Sentry project and triggers when a new issue (grouped error or problem) is detected. Issues represent single bugs or problems in your application, with events grouped by fingerprint. Use optional query filters and time periods to focus on specific types of issues. + */ + longDesc: () => LocalizedString + options: { + projectId: { + /** + * Project ID + */ + displayName: () => LocalizedString + /** + * The project to monitor for new issues + */ + shortDesc: () => LocalizedString + /** + * Select the Sentry project you want to monitor. Projects represent individual applications or services within your organization. + */ + longDesc: () => LocalizedString + } + query: { + /** + * Query Filter + */ + displayName: () => LocalizedString + /** + * Optional search query to filter issues + */ + shortDesc: () => LocalizedString + /** + * Use Sentry query syntax to filter which issues trigger this event. For example, filter by browser, device, tags, or whether errors are unhandled. + */ + longDesc: () => LocalizedString + } + statsPeriod: { + /** + * Statistics Period + */ + displayName: () => LocalizedString + /** + * Time period for issue statistics + */ + shortDesc: () => LocalizedString + /** + * The time range for collecting issue statistics. Affects metrics like event counts and user impact within the selected period. + */ + longDesc: () => LocalizedString + } + } + } + new_organization_issue: { + /** + * New Organization Issue + */ + displayName: () => LocalizedString + /** + * Triggers when a new issue is detected across the entire organization + */ + shortDesc: () => LocalizedString + /** + * Monitors all projects within your Sentry organization and triggers when a new issue is detected in any project. This provides organization-wide visibility into problems across all applications and services. Use query filters to focus on specific issue types or characteristics. + */ + longDesc: () => LocalizedString + options: { + query: { + /** + * Query Filter + */ + displayName: () => LocalizedString + /** + * Optional search query to filter issues + */ + shortDesc: () => LocalizedString + /** + * Use Sentry query syntax to filter which issues trigger this event across all projects. Filter by properties like platform, environment, release, or custom tags. + */ + longDesc: () => LocalizedString + } + statsPeriod: { + /** + * Statistics Period + */ + displayName: () => LocalizedString + /** + * Time period for issue statistics + */ + shortDesc: () => LocalizedString + /** + * The time range for collecting issue statistics across all projects. Determines the time window for metrics like frequency and user impact. + */ + longDesc: () => LocalizedString + } + } + } + } + actions: { + list_projects: { + /** + * List Projects + */ + displayName: () => LocalizedString + /** + * Retrieve all projects in your organization + */ + shortDesc: () => LocalizedString + /** + * Fetches a paginated list of all projects within your Sentry organization. Each project represents an individual application or service being monitored. Returns project details including name, platform, creation date, team membership, and configuration. + */ + longDesc: () => LocalizedString + options: { + cursor: { + /** + * Cursor + */ + displayName: () => LocalizedString + /** + * Pagination cursor for retrieving additional results + */ + shortDesc: () => LocalizedString + /** + * Use the cursor from a previous response to fetch the next or previous page of results. Leave empty to start from the beginning. + */ + longDesc: () => LocalizedString + } + } + } + get_project: { + /** + * Get Project Details + */ + displayName: () => LocalizedString + /** + * Retrieve detailed information about a specific project + */ + shortDesc: () => LocalizedString + /** + * Fetches comprehensive details about a specific Sentry project, including configuration options, team assignments, integrations, features, symbol sources, and project statistics. Use this to understand project settings and capabilities. + */ + longDesc: () => LocalizedString + options: { + projectId: { + /** + * Project ID + */ + displayName: () => LocalizedString + /** + * The project to retrieve + */ + shortDesc: () => LocalizedString + /** + * Select or enter the slug identifier of the project you want to retrieve details for. + */ + longDesc: () => LocalizedString + } + } + } + list_project_events: { + /** + * List Project Events + */ + displayName: () => LocalizedString + /** + * Retrieve events from a specific project + */ + shortDesc: () => LocalizedString + /** + * Fetches a paginated list of events (individual error or transaction occurrences) from a specific project. Events are the raw data sent to Sentry and are grouped into issues. Use the full parameter to retrieve complete event payloads including context, breadcrumbs, and metadata. + */ + longDesc: () => LocalizedString + options: { + projectId: { + /** + * Project ID + */ + displayName: () => LocalizedString + /** + * The project to retrieve events from + */ + shortDesc: () => LocalizedString + /** + * Select the project whose events you want to list. + */ + longDesc: () => LocalizedString + } + full: { + /** + * Full Details + */ + displayName: () => LocalizedString + /** + * Whether to return complete event data + */ + shortDesc: () => LocalizedString + /** + * When enabled, returns the full event payload including all context, breadcrumbs, stack traces, and metadata. When disabled, returns summary information only. + */ + longDesc: () => LocalizedString + } + cursor: { + /** + * Cursor + */ + displayName: () => LocalizedString + /** + * Pagination cursor for retrieving additional results + */ + shortDesc: () => LocalizedString + /** + * Use the cursor from a previous response to navigate through pages of events. + */ + longDesc: () => LocalizedString + } + } + } + get_event: { + /** + * Get Event Details + */ + displayName: () => LocalizedString + /** + * Retrieve detailed information about a specific event + */ + shortDesc: () => LocalizedString + /** + * Fetches complete details about a specific event, including the full stack trace, breadcrumbs (trail of events leading to the error), user context, device information, tags, SDK details, and all captured metadata. Essential for debugging and understanding the exact conditions when an error occurred. + */ + longDesc: () => LocalizedString + options: { + projectId: { + /** + * Project ID + */ + displayName: () => LocalizedString + /** + * The project containing the event + */ + shortDesc: () => LocalizedString + /** + * Select the project that the event belongs to. + */ + longDesc: () => LocalizedString + } + eventId: { + /** + * Event ID + */ + displayName: () => LocalizedString + /** + * The unique identifier of the event + */ + shortDesc: () => LocalizedString + /** + * Enter the event ID (hexadecimal string) you want to retrieve. Event IDs can be found in issue details or event listings. + */ + longDesc: () => LocalizedString + } + } + } + list_project_issues: { + /** + * List Project Issues + */ + displayName: () => LocalizedString + /** + * Retrieve issues from a specific project + */ + shortDesc: () => LocalizedString + /** + * Fetches a paginated list of issues (grouped errors or problems) from a specific project. Issues represent single bugs affecting your application, with multiple event occurrences grouped by fingerprint. Filter by query to find specific types of issues, and use statistics period to see relevant metrics. + */ + longDesc: () => LocalizedString + options: { + projectId: { + /** + * Project ID + */ + displayName: () => LocalizedString + /** + * The project to retrieve issues from + */ + shortDesc: () => LocalizedString + /** + * Select the project whose issues you want to list. + */ + longDesc: () => LocalizedString + } + query: { + /** + * Query Filter + */ + displayName: () => LocalizedString + /** + * Search query to filter issues + */ + shortDesc: () => LocalizedString + /** + * Use Sentry query syntax to filter issues by properties like status, assignee, tags, platform, or time range. Example: "is:unresolved assigned:me" + */ + longDesc: () => LocalizedString + } + statsPeriod: { + /** + * Statistics Period + */ + displayName: () => LocalizedString + /** + * Time period for issue statistics + */ + shortDesc: () => LocalizedString + /** + * The time range for calculating issue statistics such as event count, frequency, and user impact. + */ + longDesc: () => LocalizedString + } + shortIdLookup: { + /** + * Short ID Lookup + */ + displayName: () => LocalizedString + /** + * Whether to look up issues by their short ID + */ + shortDesc: () => LocalizedString + /** + * When enabled, allows searching for issues using their short IDs (e.g., PROJECT-123) instead of full issue IDs. + */ + longDesc: () => LocalizedString + } + cursor: { + /** + * Cursor + */ + displayName: () => LocalizedString + /** + * Pagination cursor for retrieving additional results + */ + shortDesc: () => LocalizedString + /** + * Use the cursor from a previous response to navigate through pages of issues. + */ + longDesc: () => LocalizedString + } + } + } + list_organization_issues: { + /** + * List Organization Issues + */ + displayName: () => LocalizedString + /** + * Retrieve issues across the entire organization + */ + shortDesc: () => LocalizedString + /** + * Fetches a paginated list of issues from all projects within your organization. This provides organization-wide visibility into problems across all applications and services. Use query filters to narrow down results by project, platform, status, or other criteria. + */ + longDesc: () => LocalizedString + options: { + query: { + /** + * Query Filter + */ + displayName: () => LocalizedString + /** + * Search query to filter issues + */ + shortDesc: () => LocalizedString + /** + * Use Sentry query syntax to filter issues across all projects. Filter by project, platform, environment, status, tags, or any other issue property. + */ + longDesc: () => LocalizedString + } + statsPeriod: { + /** + * Statistics Period + */ + displayName: () => LocalizedString + /** + * Time period for issue statistics + */ + shortDesc: () => LocalizedString + /** + * The time range for calculating issue statistics and metrics across the organization. + */ + longDesc: () => LocalizedString + } + shortIdLookup: { + /** + * Short ID Lookup + */ + displayName: () => LocalizedString + /** + * Whether to look up issues by their short ID + */ + shortDesc: () => LocalizedString + /** + * When enabled, allows searching for issues using their short IDs across all projects. + */ + longDesc: () => LocalizedString + } + cursor: { + /** + * Cursor + */ + displayName: () => LocalizedString + /** + * Pagination cursor for retrieving additional results + */ + shortDesc: () => LocalizedString + /** + * Use the cursor from a previous response to retrieve additional pages of organization-wide issues. + */ + longDesc: () => LocalizedString + } + } + } + get_issue: { + /** + * Get Issue Details + */ + displayName: () => LocalizedString + /** + * Retrieve detailed information about a specific issue + */ + shortDesc: () => LocalizedString + /** + * Fetches comprehensive details about a specific issue, including its status, metadata, assignment, statistics (event count, user impact, frequency), participants, activity history, linked integrations, and the latest event details. Essential for understanding the full context and history of a problem. + */ + longDesc: () => LocalizedString + options: { + issueId: { + /** + * Issue ID + */ + displayName: () => LocalizedString + /** + * The unique identifier of the issue + */ + shortDesc: () => LocalizedString + /** + * Enter the issue ID you want to retrieve. Issue IDs are numeric values that can be found in the Sentry UI or from list operations. + */ + longDesc: () => LocalizedString + } + } + } + update_issue: { + /** + * Update Issue + */ + displayName: () => LocalizedString + /** + * Update the status or properties of an issue + */ + shortDesc: () => LocalizedString + /** + * Modifies an issue's status (resolved, unresolved, ignored), assignment, bookmarked state, subscription status, or visibility. Use this to triage issues, assign them to team members, resolve bugs, or mark issues as ignored. Status changes can trigger alerts and affect issue grouping. + */ + longDesc: () => LocalizedString + options: { + projectId: { + /** + * Project ID + */ + displayName: () => LocalizedString + /** + * The project containing the issue (optional) + */ + shortDesc: () => LocalizedString + /** + * Optionally specify the project for context. While issues can be updated by ID alone, providing the project can be helpful for organization. + */ + longDesc: () => LocalizedString + } + issueId: { + /** + * Issue ID + */ + displayName: () => LocalizedString + /** + * The unique identifier of the issue to update + */ + shortDesc: () => LocalizedString + /** + * Enter the issue ID you want to update. You can find issue IDs in the Sentry UI or from list/search operations. + */ + longDesc: () => LocalizedString + } + status: { + /** + * Status + */ + displayName: () => LocalizedString + /** + * The new status for the issue + */ + shortDesc: () => LocalizedString + /** + * Change the issue status to control its lifecycle. "Resolved" marks it as fixed, "Unresolved" reopens it, "Ignored" archives it temporarily, and "Resolved in Next Release" indicates it will be fixed in an upcoming deployment. + */ + longDesc: () => LocalizedString + } + assignedTo: { + /** + * Assigned To + */ + displayName: () => LocalizedString + /** + * User or team to assign the issue to + */ + shortDesc: () => LocalizedString + /** + * Assign the issue to a specific user or team for ownership and accountability. Enter a team slug (e.g., "team:backend") or user ID. + */ + longDesc: () => LocalizedString + } + hasSeen: { + /** + * Has Seen + */ + displayName: () => LocalizedString + /** + * Mark whether the issue has been viewed + */ + shortDesc: () => LocalizedString + /** + * Mark the issue as seen (reviewed) or unseen. This helps track which issues have been triaged by your team. + */ + longDesc: () => LocalizedString + } + isBookmarked: { + /** + * Is Bookmarked + */ + displayName: () => LocalizedString + /** + * Bookmark status for the issue + */ + shortDesc: () => LocalizedString + /** + * Bookmark the issue for easy access and filtering. Bookmarked issues appear in your personal issue list. + */ + longDesc: () => LocalizedString + } + isSubscribed: { + /** + * Is Subscribed + */ + displayName: () => LocalizedString + /** + * Subscription status for notifications + */ + shortDesc: () => LocalizedString + /** + * Subscribe to or unsubscribe from notifications about this issue. When subscribed, you'll receive alerts when the issue changes or escalates. + */ + longDesc: () => LocalizedString + } + isPublic: { + /** + * Is Public + */ + displayName: () => LocalizedString + /** + * Whether the issue should be publicly accessible + */ + shortDesc: () => LocalizedString + /** + * Control whether the issue is publicly visible via a share link. Public issues can be viewed by anyone with the link, even without Sentry access. + */ + longDesc: () => LocalizedString + } + } + } + list_teams: { + /** + * List Teams + */ + displayName: () => LocalizedString + /** + * Retrieve all teams in your organization + */ + shortDesc: () => LocalizedString + /** + * Fetches a paginated list of all teams within your Sentry organization. Teams represent groups of developers working together on projects. Returns team details including member count, access permissions, role assignments, linked projects, and external team integrations. + */ + longDesc: () => LocalizedString + options: { + cursor: { + /** + * Cursor + */ + displayName: () => LocalizedString + /** + * Pagination cursor for retrieving additional results + */ + shortDesc: () => LocalizedString + /** + * Use the cursor from a previous response to navigate through pages of teams. + */ + longDesc: () => LocalizedString + } + } + } + get_team: { + /** + * Get Team Details + */ + displayName: () => LocalizedString + /** + * Retrieve detailed information about a specific team + */ + shortDesc: () => LocalizedString + /** + * Fetches comprehensive details about a specific team, including its members, assigned projects, access permissions, role settings, external integrations (like Slack channels), and organization-level role. Use this to understand team structure and project ownership. + */ + longDesc: () => LocalizedString + options: { + teamId: { + /** + * Team ID + */ + displayName: () => LocalizedString + /** + * The team slug to retrieve + */ + shortDesc: () => LocalizedString + /** + * Enter the team slug (URL-friendly identifier) of the team you want to retrieve details for. + */ + longDesc: () => LocalizedString + } + } + } + } + } + Patreon: { + /** + * Patreon + */ + displayName: () => LocalizedString + groups: { + /** + * Social Media Management + */ + '0': () => LocalizedString + } + /** + * Connect to Patreon to manage your creator content, memberships, and patron relationships. + */ + shortDesc: () => LocalizedString + /** + * The Patreon integration enables creators to automate their patron management workflows. Access patron data, manage memberships, track campaigns, and engage with your community through comprehensive API actions and real-time triggers for patron activities. + */ + longDesc: () => LocalizedString + actions: { + list_campaigns: { + /** + * List Campaigns + */ + displayName: () => LocalizedString + /** + * Retrieve a list of campaigns for the authenticated creator + */ + shortDesc: () => LocalizedString + /** + * Fetches a paginated list of campaigns associated with the authenticated Patreon account. Returns comprehensive campaign information including patron counts, settings, and metadata. + */ + longDesc: () => LocalizedString + options: { + count: { + /** + * Count + */ + displayName: () => LocalizedString + /** + * Maximum number of campaigns to return + */ + shortDesc: () => LocalizedString + /** + * Specifies the maximum number of campaigns to retrieve in a single request. Defaults to 20 if not specified. + */ + longDesc: () => LocalizedString + } + cursor: { + /** + * Cursor + */ + displayName: () => LocalizedString + /** + * Pagination cursor for retrieving the next set of results + */ + shortDesc: () => LocalizedString + /** + * Use the cursor returned from a previous request to fetch the next page of campaigns. Leave empty for the first page. + */ + longDesc: () => LocalizedString + } + } + } + list_campaign_members: { + /** + * List Campaign Members + */ + displayName: () => LocalizedString + /** + * Retrieve members of a specific campaign + */ + shortDesc: () => LocalizedString + /** + * Fetches a paginated list of members (patrons) for a specified campaign. Returns detailed member information including pledge amounts, payment status, and membership details. + */ + longDesc: () => LocalizedString + options: { + campaignId: { + /** + * Campaign ID + */ + displayName: () => LocalizedString + /** + * The ID of the campaign to retrieve members from + */ + shortDesc: () => LocalizedString + /** + * Select the campaign whose members you want to retrieve. This is a required field. + */ + longDesc: () => LocalizedString + } + count: { + /** + * Count + */ + displayName: () => LocalizedString + /** + * Maximum number of members to return + */ + shortDesc: () => LocalizedString + /** + * Specifies the maximum number of members to retrieve in a single request. Defaults to 20 if not specified. + */ + longDesc: () => LocalizedString + } + cursor: { + /** + * Cursor + */ + displayName: () => LocalizedString + /** + * Pagination cursor for retrieving the next set of results + */ + shortDesc: () => LocalizedString + /** + * Use the cursor returned from a previous request to fetch the next page of members. Leave empty for the first page. + */ + longDesc: () => LocalizedString + } + } + } + get_campaign: { + /** + * Get Campaign + */ + displayName: () => LocalizedString + /** + * Retrieve detailed information about a specific campaign + */ + shortDesc: () => LocalizedString + /** + * Fetches comprehensive details about a single campaign including summary, creation details, social media integration, RSS feed settings, and patron statistics. + */ + longDesc: () => LocalizedString + options: { + campaignId: { + /** + * Campaign ID + */ + displayName: () => LocalizedString + /** + * The ID of the campaign to retrieve + */ + shortDesc: () => LocalizedString + /** + * Select the campaign you want to get detailed information about. This is a required field. + */ + longDesc: () => LocalizedString + } + } + } + get_member: { + /** + * Get Member + */ + displayName: () => LocalizedString + /** + * Retrieve detailed information about a specific member + */ + shortDesc: () => LocalizedString + /** + * Fetches comprehensive details about a single campaign member (patron) including pledge amounts, payment history, membership status, and relationship timeline. + */ + longDesc: () => LocalizedString + options: { + campaignId: { + /** + * Campaign ID + */ + displayName: () => LocalizedString + /** + * The campaign to filter members from + */ + shortDesc: () => LocalizedString + /** + * Optionally select a campaign to filter the member selection. This helps narrow down the member list when searching. + */ + longDesc: () => LocalizedString + } + memberId: { + /** + * Member ID + */ + displayName: () => LocalizedString + /** + * The ID of the member to retrieve + */ + shortDesc: () => LocalizedString + /** + * Select or enter the ID of the member (patron) whose details you want to retrieve. This is a required field. + */ + longDesc: () => LocalizedString + } + } + } + list_posts: { + /** + * List Posts + */ + displayName: () => LocalizedString + /** + * Retrieve posts from a specific campaign + */ + shortDesc: () => LocalizedString + /** + * Fetches a paginated list of posts from a specified campaign, sorted by publish date. Returns post content, metadata, and engagement information. + */ + longDesc: () => LocalizedString + options: { + campaignId: { + /** + * Campaign ID + */ + displayName: () => LocalizedString + /** + * The ID of the campaign to retrieve posts from + */ + shortDesc: () => LocalizedString + /** + * Select the campaign whose posts you want to retrieve. This is a required field. + */ + longDesc: () => LocalizedString + } + count: { + /** + * Count + */ + displayName: () => LocalizedString + /** + * Maximum number of posts to return + */ + shortDesc: () => LocalizedString + /** + * Specifies the maximum number of posts to retrieve in a single request. Defaults to 20 if not specified. + */ + longDesc: () => LocalizedString + } + cursor: { + /** + * Cursor + */ + displayName: () => LocalizedString + /** + * Pagination cursor for retrieving the next set of results + */ + shortDesc: () => LocalizedString + /** + * Use the cursor returned from a previous request to fetch the next page of posts. Leave empty for the first page. + */ + longDesc: () => LocalizedString + } + } + } + get_post: { + /** + * Get Post + */ + displayName: () => LocalizedString + /** + * Retrieve detailed information about a specific post + */ + shortDesc: () => LocalizedString + /** + * Fetches comprehensive details about a single post including content, publish information, access settings, and engagement metrics. + */ + longDesc: () => LocalizedString + options: { + campaignId: { + /** + * Campaign ID + */ + displayName: () => LocalizedString + /** + * The campaign to filter posts from + */ + shortDesc: () => LocalizedString + /** + * Optionally select a campaign to filter the post selection. This helps narrow down the post list when searching. + */ + longDesc: () => LocalizedString + } + postId: { + /** + * Post ID + */ + displayName: () => LocalizedString + /** + * The ID of the post to retrieve + */ + shortDesc: () => LocalizedString + /** + * Select or enter the ID of the post whose details you want to retrieve. This is a required field. + */ + longDesc: () => LocalizedString + } + } + } + } + triggers: { + pledge_trigger: { + /** + * Pledge Event + */ + displayName: () => LocalizedString + /** + * Triggers when a pledge is created, updated, or deleted + */ + shortDesc: () => LocalizedString + /** + * Monitors pledge events for a specific campaign using Patreon webhooks. This trigger fires when a member creates, updates, or deletes their pledge, allowing you to automate workflows based on patron pledge activity. + */ + longDesc: () => LocalizedString + options: { + campaignId: { + /** + * Campaign ID + */ + displayName: () => LocalizedString + /** + * The campaign to monitor for pledge events + */ + shortDesc: () => LocalizedString + /** + * Select the campaign you want to monitor for pledge-related events. This is a required field. + */ + longDesc: () => LocalizedString + } + trigger: { + /** + * Trigger Event + */ + displayName: () => LocalizedString + /** + * The specific pledge event to monitor + */ + shortDesc: () => LocalizedString + /** + * Select which type of pledge event should trigger this workflow. Choose from pledge creation (when a member first pledges or a follower becomes a patron), pledge updates (upgrades or downgrades), or pledge deletion. + */ + longDesc: () => LocalizedString + } + } + } + member_trigger: { + /** + * Member Event + */ + displayName: () => LocalizedString + /** + * Triggers when a member is created, updated, or deleted + */ + shortDesc: () => LocalizedString + /** + * Monitors member events for a specific campaign using Patreon webhooks. This trigger fires when a member is created, their information is updated (including payment charging events), or their membership is deleted. + */ + longDesc: () => LocalizedString + options: { + campaignId: { + /** + * Campaign ID + */ + displayName: () => LocalizedString + /** + * The campaign to monitor for member events + */ + shortDesc: () => LocalizedString + /** + * Select the campaign you want to monitor for member-related events. This is a required field. + */ + longDesc: () => LocalizedString + } + trigger: { + /** + * Trigger Event + */ + displayName: () => LocalizedString + /** + * The specific member event to monitor + */ + shortDesc: () => LocalizedString + /** + * Select which type of member event should trigger this workflow. Member creation occurs only if there was no prior payment between patron and creator. Updates include payment charging events. Deletion only occurs if no prior payment happened. + */ + longDesc: () => LocalizedString + } + } + } + post_trigger: { + /** + * Post Event + */ + displayName: () => LocalizedString + /** + * Triggers when a post is published, updated, or deleted + */ + shortDesc: () => LocalizedString + /** + * Monitors post events for a specific campaign using Patreon webhooks. This trigger fires when a post is published, updated, or deleted on the campaign, allowing you to automate content distribution and notifications. + */ + longDesc: () => LocalizedString + options: { + campaignId: { + /** + * Campaign ID + */ + displayName: () => LocalizedString + /** + * The campaign to monitor for post events + */ + shortDesc: () => LocalizedString + /** + * Select the campaign you want to monitor for post-related events. This is a required field. + */ + longDesc: () => LocalizedString + } + trigger: { + /** + * Trigger Event + */ + displayName: () => LocalizedString + /** + * The specific post event to monitor + */ + shortDesc: () => LocalizedString + /** + * Select which type of post event should trigger this workflow. Choose from post publication, post updates, or post deletion events. + */ + longDesc: () => LocalizedString + } + } + } + } + } + Asana: { + /** + * Asana + */ + displayName: () => LocalizedString + groups: { + /** + * Project & Task Management + */ + '0': () => LocalizedString + } + /** + * Automate workflows by integrating with the Asana project management platform + */ + shortDesc: () => LocalizedString + /** + * Connect to Asana to automate task management, project monitoring, and team collaboration workflows. Use these triggers to respond to changes in tasks, projects, and workspaces. + */ + longDesc: () => LocalizedString + triggers: { + task_completed: { + /** + * Task Completed + */ + displayName: () => LocalizedString + /** + * Triggers when a task is marked complete in a specific project + */ + shortDesc: () => LocalizedString + /** + * Initiates a workflow when any task within the specified project is marked as completed. Use this to automate follow-up actions or notifications upon task completion. + */ + longDesc: () => LocalizedString + options: { + project: { + /** + * Project ID + */ + displayName: () => LocalizedString + /** + * The project containing the completed tasks + */ + shortDesc: () => LocalizedString + /** + * The unique identifier of the project where task completions will be monitored + */ + longDesc: () => LocalizedString + } + workspace: { + /** + * Workspace ID + */ + displayName: () => LocalizedString + /** + * The workspace containing the project + */ + shortDesc: () => LocalizedString + /** + * The unique identifier of the workspace where the project exists + */ + longDesc: () => LocalizedString + } + } + event_info: { + /** + * Event data + */ + desc: () => LocalizedString + type: { + fields: { + events: { + /** + * Events + */ + displayName: () => LocalizedString + /** + * List of event objects + */ + shortDesc: () => LocalizedString + /** + * An array containing event objects that represent individual changes or actions within Asana. + */ + longDesc: () => LocalizedString + type: { + fields: { + action: { + /** + * Action + */ + displayName: () => LocalizedString + /** + * Type of action performed + */ + shortDesc: () => LocalizedString + /** + * Specifies the nature of the action that triggered the event; for task completion, this is typically 'changed'. + */ + longDesc: () => LocalizedString + /** + * string + */ + type: () => LocalizedString + } + parent: { + /** + * Parent Resource + */ + displayName: () => LocalizedString + /** + * Parent resource details + */ + shortDesc: () => LocalizedString + /** + * Information about the parent resource associated with the event, if applicable. For tasks, this could be the project or parent task. + */ + longDesc: () => LocalizedString + type: { + fields: { + gid: { + /** + * Parent GID + */ + displayName: () => LocalizedString + /** + * Globally unique identifier of the parent resource + */ + shortDesc: () => LocalizedString + /** + * The unique identifier assigned to the parent resource within Asana. + */ + longDesc: () => LocalizedString + /** + * string + */ + type: () => LocalizedString + } + resource_type: { + /** + * Parent Resource Type + */ + displayName: () => LocalizedString + /** + * Type of the parent resource + */ + shortDesc: () => LocalizedString + /** + * The specific type of the parent resource, such as 'project' or 'task'. + */ + longDesc: () => LocalizedString + /** + * string + */ + type: () => LocalizedString + } + resource_subtype: { + /** + * Parent Resource Subtype + */ + displayName: () => LocalizedString + /** + * Subtype of the parent resource + */ + shortDesc: () => LocalizedString + /** + * The subtype classification of the parent resource, providing more specific categorization. + */ + longDesc: () => LocalizedString + /** + * string + */ + type: () => LocalizedString + } + } + } + } + resource: { + /** + * Resource + */ + displayName: () => LocalizedString + /** + * Affected resource details + */ + shortDesc: () => LocalizedString + /** + * Information about the resource that was directly affected by the event; in this case, the task that was completed. + */ + longDesc: () => LocalizedString + type: { + fields: { + gid: { + /** + * Resource GID + */ + displayName: () => LocalizedString + /** + * Globally unique identifier of the resource + */ + shortDesc: () => LocalizedString + /** + * The unique identifier assigned to the resource within Asana. + */ + longDesc: () => LocalizedString + /** + * string + */ + type: () => LocalizedString + } + resource_type: { + /** + * Resource Type + */ + displayName: () => LocalizedString + /** + * Type of the resource + */ + shortDesc: () => LocalizedString + /** + * The specific type of the resource, which would be 'task' for task completion events. + */ + longDesc: () => LocalizedString + /** + * string + */ + type: () => LocalizedString + } + resource_subtype: { + /** + * Resource Subtype + */ + displayName: () => LocalizedString + /** + * Subtype of the resource + */ + shortDesc: () => LocalizedString + /** + * The subtype classification of the resource, providing more specific categorization. + */ + longDesc: () => LocalizedString + /** + * string + */ + type: () => LocalizedString + } + } + } + } + change: { + /** + * Change Details + */ + displayName: () => LocalizedString + /** + * Details of the change + */ + shortDesc: () => LocalizedString + /** + * Specific information about the change that occurred, including the field affected and the nature of the change. + */ + longDesc: () => LocalizedString + type: { + fields: { + field: { + /** + * Changed Field + */ + displayName: () => LocalizedString + /** + * Field that was changed + */ + shortDesc: () => LocalizedString + /** + * The specific field within the resource that was modified; for task completion, this is 'completed'. + */ + longDesc: () => LocalizedString + /** + * string + */ + type: () => LocalizedString + } + action: { + /** + * Change Action + */ + displayName: () => LocalizedString + /** + * Nature of the change + */ + shortDesc: () => LocalizedString + /** + * Describes how the field was changed; for task completion, this is 'changed'. + */ + longDesc: () => LocalizedString + /** + * string + */ + type: () => LocalizedString + } + } + } + } + user: { + /** + * User + */ + displayName: () => LocalizedString + /** + * User details + */ + shortDesc: () => LocalizedString + /** + * Information about the user who initiated the action that triggered the event. + */ + longDesc: () => LocalizedString + type: { + fields: { + gid: { + /** + * User GID + */ + displayName: () => LocalizedString + /** + * Globally unique identifier of the user + */ + shortDesc: () => LocalizedString + /** + * The unique identifier assigned to the user within Asana. + */ + longDesc: () => LocalizedString + /** + * string + */ + type: () => LocalizedString + } + resource_type: { + /** + * User Resource Type + */ + displayName: () => LocalizedString + /** + * Type of the user resource + */ + shortDesc: () => LocalizedString + /** + * The resource type, typically 'user', indicating the entity is a user. + */ + longDesc: () => LocalizedString + /** + * string + */ + type: () => LocalizedString + } + } + } + } + created_at: { + /** + * Creation Timestamp + */ + displayName: () => LocalizedString + /** + * Event creation time + */ + shortDesc: () => LocalizedString + /** + * The timestamp indicating when the event was created. + */ + longDesc: () => LocalizedString + /** + * string + */ + type: () => LocalizedString + } + } + } + } + } + } + } + } + attachment_added: { + /** + * Attachment Added + */ + displayName: () => LocalizedString + /** + * Triggers when an attachment is uploaded to a task + */ + shortDesc: () => LocalizedString + /** + * Initiates a workflow when a file is attached to any task within the specified project. Optionally filter by a specific task. Use this to process or track files as they are added to tasks. + */ + longDesc: () => LocalizedString + options: { + project: { + /** + * Project ID + */ + displayName: () => LocalizedString + /** + * The project containing the tasks with attachments + */ + shortDesc: () => LocalizedString + /** + * The unique identifier of the project where attachment activities will be monitored + */ + longDesc: () => LocalizedString + } + task: { + /** + * Task ID (Optional) + */ + displayName: () => LocalizedString + /** + * Specific task to monitor for attachments + */ + shortDesc: () => LocalizedString + /** + * The unique identifier of a specific task to monitor. If not provided, attachments from all tasks in the project will trigger the workflow + */ + longDesc: () => LocalizedString + } + workspace: { + /** + * Workspace ID + */ + displayName: () => LocalizedString + /** + * The workspace containing the project + */ + shortDesc: () => LocalizedString + /** + * The unique identifier of the workspace where the project exists + */ + longDesc: () => LocalizedString + } + } + event_info: { + /** + * Event data + */ + desc: () => LocalizedString + type: { + fields: { + events: { + /** + * Events + */ + displayName: () => LocalizedString + /** + * List of event objects + */ + shortDesc: () => LocalizedString + /** + * An array containing event objects that represent individual changes or actions within Asana. + */ + longDesc: () => LocalizedString + type: { + fields: { + action: { + /** + * Action + */ + displayName: () => LocalizedString + /** + * Type of action performed + */ + shortDesc: () => LocalizedString + /** + * Specifies the nature of the action that triggered the event; for task completion, this is typically 'changed'. + */ + longDesc: () => LocalizedString + /** + * string + */ + type: () => LocalizedString + } + parent: { + /** + * Parent Resource + */ + displayName: () => LocalizedString + /** + * Parent resource details + */ + shortDesc: () => LocalizedString + /** + * Information about the parent resource associated with the event, if applicable. For tasks, this could be the project or parent task. + */ + longDesc: () => LocalizedString + type: { + fields: { + gid: { + /** + * Parent GID + */ + displayName: () => LocalizedString + /** + * Globally unique identifier of the parent resource + */ + shortDesc: () => LocalizedString + /** + * The unique identifier assigned to the parent resource within Asana. + */ + longDesc: () => LocalizedString + /** + * string + */ + type: () => LocalizedString + } + resource_type: { + /** + * Parent Resource Type + */ + displayName: () => LocalizedString + /** + * Type of the parent resource + */ + shortDesc: () => LocalizedString + /** + * The specific type of the parent resource, such as 'project' or 'task'. + */ + longDesc: () => LocalizedString + /** + * string + */ + type: () => LocalizedString + } + resource_subtype: { + /** + * Parent Resource Subtype + */ + displayName: () => LocalizedString + /** + * Subtype of the parent resource + */ + shortDesc: () => LocalizedString + /** + * The subtype classification of the parent resource, providing more specific categorization. + */ + longDesc: () => LocalizedString + /** + * string + */ + type: () => LocalizedString + } + } + } + } + resource: { + /** + * Resource + */ + displayName: () => LocalizedString + /** + * Affected resource details + */ + shortDesc: () => LocalizedString + /** + * Information about the resource that was directly affected by the event; in this case, the task that was completed. + */ + longDesc: () => LocalizedString + type: { + fields: { + gid: { + /** + * Resource GID + */ + displayName: () => LocalizedString + /** + * Globally unique identifier of the resource + */ + shortDesc: () => LocalizedString + /** + * The unique identifier assigned to the resource within Asana. + */ + longDesc: () => LocalizedString + /** + * string + */ + type: () => LocalizedString + } + resource_type: { + /** + * Resource Type + */ + displayName: () => LocalizedString + /** + * Type of the resource + */ + shortDesc: () => LocalizedString + /** + * The specific type of the resource, which would be 'task' for task completion events. + */ + longDesc: () => LocalizedString + /** + * string + */ + type: () => LocalizedString + } + resource_subtype: { + /** + * Resource Subtype + */ + displayName: () => LocalizedString + /** + * Subtype of the resource + */ + shortDesc: () => LocalizedString + /** + * The subtype classification of the resource, providing more specific categorization. + */ + longDesc: () => LocalizedString + /** + * string + */ + type: () => LocalizedString + } + } + } + } + change: { + /** + * Change Details + */ + displayName: () => LocalizedString + /** + * Details of the change + */ + shortDesc: () => LocalizedString + /** + * Specific information about the change that occurred, including the field affected and the nature of the change. + */ + longDesc: () => LocalizedString + type: { + fields: { + field: { + /** + * Changed Field + */ + displayName: () => LocalizedString + /** + * Field that was changed + */ + shortDesc: () => LocalizedString + /** + * The specific field within the resource that was modified; for task completion, this is 'completed'. + */ + longDesc: () => LocalizedString + /** + * string + */ + type: () => LocalizedString + } + action: { + /** + * Change Action + */ + displayName: () => LocalizedString + /** + * Nature of the change + */ + shortDesc: () => LocalizedString + /** + * Describes how the field was changed; for task completion, this is 'changed'. + */ + longDesc: () => LocalizedString + /** + * string + */ + type: () => LocalizedString + } + } + } + } + user: { + /** + * User + */ + displayName: () => LocalizedString + /** + * User details + */ + shortDesc: () => LocalizedString + /** + * Information about the user who initiated the action that triggered the event. + */ + longDesc: () => LocalizedString + type: { + fields: { + gid: { + /** + * User GID + */ + displayName: () => LocalizedString + /** + * Globally unique identifier of the user + */ + shortDesc: () => LocalizedString + /** + * The unique identifier assigned to the user within Asana. + */ + longDesc: () => LocalizedString + /** + * string + */ + type: () => LocalizedString + } + resource_type: { + /** + * User Resource Type + */ + displayName: () => LocalizedString + /** + * Type of the user resource + */ + shortDesc: () => LocalizedString + /** + * The resource type, typically 'user', indicating the entity is a user. + */ + longDesc: () => LocalizedString + /** + * string + */ + type: () => LocalizedString + } + } + } + } + created_at: { + /** + * Creation Timestamp + */ + displayName: () => LocalizedString + /** + * Event creation time + */ + shortDesc: () => LocalizedString + /** + * The timestamp indicating when the event was created. + */ + longDesc: () => LocalizedString + /** + * string + */ + type: () => LocalizedString + } + } + } + } + } + } + } + } + subtask_completed: { + /** + * Subtask Completed + */ + displayName: () => LocalizedString + /** + * Triggers when a subtask is marked complete + */ + shortDesc: () => LocalizedString + /** + * Initiates a workflow when a subtask within a specific parent task is marked as completed. Use this to track progress on multi-stage tasks or to trigger the next steps in a workflow. + */ + longDesc: () => LocalizedString + options: { + project: { + /** + * Project ID + */ + displayName: () => LocalizedString + /** + * The project containing the parent task + */ + shortDesc: () => LocalizedString + /** + * The unique identifier of the project where the parent task exists + */ + longDesc: () => LocalizedString + } + workspace: { + /** + * Workspace ID + */ + displayName: () => LocalizedString + /** + * The workspace containing the project + */ + shortDesc: () => LocalizedString + /** + * The unique identifier of the workspace where the project exists + */ + longDesc: () => LocalizedString + } + task: { + /** + * Parent Task ID + */ + displayName: () => LocalizedString + /** + * The parent task containing the subtasks + */ + shortDesc: () => LocalizedString + /** + * The unique identifier of the parent task whose subtasks will be monitored for completion + */ + longDesc: () => LocalizedString + } + } + event_info: { + /** + * Event data + */ + desc: () => LocalizedString + type: { + fields: { + events: { + /** + * Events + */ + displayName: () => LocalizedString + /** + * List of event objects + */ + shortDesc: () => LocalizedString + /** + * An array containing event objects that represent individual changes or actions within Asana. + */ + longDesc: () => LocalizedString + type: { + fields: { + action: { + /** + * Action + */ + displayName: () => LocalizedString + /** + * Type of action performed + */ + shortDesc: () => LocalizedString + /** + * Specifies the nature of the action that triggered the event; for task completion, this is typically 'changed'. + */ + longDesc: () => LocalizedString + /** * string */ type: () => LocalizedString @@ -212984,162 +215523,578 @@ export type TranslationFunctions = { '0': () => LocalizedString } /** - * New Organization + * New Organization + */ + displayName: () => LocalizedString + /** + * Triggers when a new organization is created + */ + shortDesc: () => LocalizedString + /** + * This trigger fires whenever a new organization is created in Help Scout. Organizations help group customers from the same company. + */ + longDesc: () => LocalizedString + options: { + } + } + new_conversation: { + groups: { + /** + * Conversations + */ + '0': () => LocalizedString + } + /** + * New Conversation + */ + displayName: () => LocalizedString + /** + * Triggers when a new conversation is created + */ + shortDesc: () => LocalizedString + /** + * This trigger fires whenever a new conversation (support ticket) is created in Help Scout. You can optionally filter by mailbox to only receive events from specific inboxes. + */ + longDesc: () => LocalizedString + options: { + mailboxId: { + /** + * Mailbox + */ + displayName: () => LocalizedString + /** + * Filter by mailbox + */ + shortDesc: () => LocalizedString + /** + * Optionally filter to only trigger for conversations in a specific mailbox. Leave empty to trigger for all mailboxes. + */ + longDesc: () => LocalizedString + } + } + } + assigned_conversation: { + groups: { + /** + * Conversations + */ + '0': () => LocalizedString + } + /** + * Assigned Conversation + */ + displayName: () => LocalizedString + /** + * Triggers when a conversation is assigned + */ + shortDesc: () => LocalizedString + /** + * This trigger fires whenever a conversation is assigned to a user in Help Scout. This includes both new assignments and reassignments. + */ + longDesc: () => LocalizedString + options: { + mailboxId: { + /** + * Mailbox + */ + displayName: () => LocalizedString + /** + * Filter by mailbox + */ + shortDesc: () => LocalizedString + /** + * Optionally filter to only trigger for conversations in a specific mailbox. Leave empty to trigger for all mailboxes. + */ + longDesc: () => LocalizedString + } + } + } + } + } + Hubspot: { + /** + * HubSpot + */ + displayName: () => LocalizedString + groups: { + /** + * CRM & Sales Management + */ + '0': () => LocalizedString + /** + * Email & Email Marketing + */ + '1': () => LocalizedString + } + /** + * Seamlessly connect to the HubSpot API to automate and streamline your CRM processes. + */ + shortDesc: () => LocalizedString + /** + * The HubSpot integration provides a comprehensive collection of actions and triggers to interact with the HubSpot API. Whether you need to manage companies, contacts, deals, or custom objects, this integration simplifies your workflow automation and CRM management. + */ + longDesc: () => LocalizedString + actions: { + 'post-crm-v3-objects-companies-batch-upsert_upsert': { + /** + * Create Or Update Companies + */ + displayName: () => LocalizedString + /** + * Create or update multiple companies + */ + shortDesc: () => LocalizedString + groups: { + /** + * Companies + */ + '0': () => LocalizedString + } + } + 'get-crm-v3-objects-contacts': { + /** + * List Contacts + */ + displayName: () => LocalizedString + /** + * Retrieve a list of contacts + */ + shortDesc: () => LocalizedString + groups: { + /** + * Contacts + */ + '0': () => LocalizedString + } + } + 'post-crm-v3-objects-contacts': { + /** + * Create Contact + */ + displayName: () => LocalizedString + /** + * Create a new contact + */ + shortDesc: () => LocalizedString + groups: { + /** + * Contacts + */ + '0': () => LocalizedString + } + options: { + associations: { + /** + * HubSpot Associations + */ + displayName: () => LocalizedString + /** + * Define relationships between HubSpot objects + */ + shortDesc: () => LocalizedString + /** + * Associations create connections between different HubSpot objects such as contacts, companies, deals, tickets, and custom objects. + */ + longDesc: () => LocalizedString + type: { + element_type: { + fields: { + to: { + /** + * Target Object + */ + displayName: () => LocalizedString + /** + * The HubSpot object to create an association with + */ + shortDesc: () => LocalizedString + /** + * Specifies the target HubSpot object (company, contact, deal, etc.) that will be associated with the current object. + */ + longDesc: () => LocalizedString + type: { + fields: { + id: { + /** + * Object ID + */ + displayName: () => LocalizedString + /** + * Unique identifier of the target object + */ + shortDesc: () => LocalizedString + /** + * The unique identifier (ID) of the HubSpot object being associated with. This could be a company ID, contact ID, deal ID, etc. + */ + longDesc: () => LocalizedString + } + } + } + } + types: { + /** + * Association Types + */ + displayName: () => LocalizedString + /** + * Types of relationship between objects + */ + shortDesc: () => LocalizedString + /** + * Defines the nature and direction of the relationship between the two HubSpot objects being associated. + */ + longDesc: () => LocalizedString + type: { + element_type: { + fields: { + associationTypeId: { + /** + * Association Type ID + */ + displayName: () => LocalizedString + /** + * Numeric identifier of the association type + */ + shortDesc: () => LocalizedString + /** + * A numeric ID that defines the type of association (e.g., 1 for company-to-contact, 3 for deal-to-contact). Each ID represents a specific directional relationship between two object types. + */ + longDesc: () => LocalizedString + } + associationCategory: { + /** + * Association Category + */ + displayName: () => LocalizedString + /** + * Category of the association type + */ + shortDesc: () => LocalizedString + /** + * Categorizes the association as either "HUBSPOT_DEFINED" (built-in system associations) or "USER_DEFINED" (custom associations created by users). Most standard associations use HUBSPOT_DEFINED. + */ + longDesc: () => LocalizedString + } + } + } + } + } + } + } + } + } + } + } + 'post-crm-v3-objects-contacts-search': { + /** + * Search Contacts + */ + displayName: () => LocalizedString + /** + * Search for contacts based on specific criteria + */ + shortDesc: () => LocalizedString + /** + * Search for contacts based on specific criteria + */ + longDesc: () => LocalizedString + groups: { + /** + * Contacts + */ + '0': () => LocalizedString + } + } + 'delete-crm-v3-objects-contacts-contactId': { + /** + * Delete Contact + */ + displayName: () => LocalizedString + /** + * Soft delete a selected contact + */ + shortDesc: () => LocalizedString + groups: { + /** + * Contacts + */ + '0': () => LocalizedString + } + } + 'get-crm-v3-objects-contacts-contactId': { + /** + * Retrieve Contact + */ + displayName: () => LocalizedString + /** + * Retrieve a specific contact + */ + shortDesc: () => LocalizedString + groups: { + /** + * Contacts + */ + '0': () => LocalizedString + } + } + 'patch-crm-v3-objects-contacts-contactId': { + /** + * Update Contact + */ + displayName: () => LocalizedString + /** + * Update an existing contact + */ + shortDesc: () => LocalizedString + groups: { + /** + * Contacts + */ + '0': () => LocalizedString + } + } + 'get-crm-v3-objects-objectType_getPage': { + /** + * List Custom Objects */ displayName: () => LocalizedString /** - * Triggers when a new organization is created + * Retrieve a list of selected custom objects */ shortDesc: () => LocalizedString - /** - * This trigger fires whenever a new organization is created in Help Scout. Organizations help group customers from the same company. - */ - longDesc: () => LocalizedString - options: { - } - } - new_conversation: { groups: { /** - * Conversations + * Custom Objects */ '0': () => LocalizedString } + } + 'post-crm-v3-objects-objectType_create': { /** - * New Conversation + * Create Custom Object */ displayName: () => LocalizedString /** - * Triggers when a new conversation is created + * Create a new custom object of a selected type */ shortDesc: () => LocalizedString - /** - * This trigger fires whenever a new conversation (support ticket) is created in Help Scout. You can optionally filter by mailbox to only receive events from specific inboxes. - */ - longDesc: () => LocalizedString + groups: { + /** + * Custom Objects + */ + '0': () => LocalizedString + } options: { - mailboxId: { + associations: { /** - * Mailbox + * HubSpot Associations */ displayName: () => LocalizedString /** - * Filter by mailbox + * Define relationships between HubSpot objects */ shortDesc: () => LocalizedString /** - * Optionally filter to only trigger for conversations in a specific mailbox. Leave empty to trigger for all mailboxes. + * Associations create connections between different HubSpot objects such as contacts, companies, deals, tickets, and custom objects. */ longDesc: () => LocalizedString + type: { + element_type: { + fields: { + to: { + /** + * Target Object + */ + displayName: () => LocalizedString + /** + * The HubSpot object to create an association with + */ + shortDesc: () => LocalizedString + /** + * Specifies the target HubSpot object (company, contact, deal, etc.) that will be associated with the current object. + */ + longDesc: () => LocalizedString + type: { + fields: { + id: { + /** + * Object ID + */ + displayName: () => LocalizedString + /** + * Unique identifier of the target object + */ + shortDesc: () => LocalizedString + /** + * The unique identifier (ID) of the HubSpot object being associated with. This could be a company ID, contact ID, deal ID, etc. + */ + longDesc: () => LocalizedString + } + } + } + } + types: { + /** + * Association Types + */ + displayName: () => LocalizedString + /** + * Types of relationship between objects + */ + shortDesc: () => LocalizedString + /** + * Defines the nature and direction of the relationship between the two HubSpot objects being associated. + */ + longDesc: () => LocalizedString + type: { + element_type: { + fields: { + associationTypeId: { + /** + * Association Type ID + */ + displayName: () => LocalizedString + /** + * Numeric identifier of the association type + */ + shortDesc: () => LocalizedString + /** + * A numeric ID that defines the type of association (e.g., 1 for company-to-contact, 3 for deal-to-contact). Each ID represents a specific directional relationship between two object types. + */ + longDesc: () => LocalizedString + } + associationCategory: { + /** + * Association Category + */ + displayName: () => LocalizedString + /** + * Category of the association type + */ + shortDesc: () => LocalizedString + /** + * Categorizes the association as either "HUBSPOT_DEFINED" (built-in system associations) or "USER_DEFINED" (custom associations created by users). Most standard associations use HUBSPOT_DEFINED. + */ + longDesc: () => LocalizedString + } + } + } + } + } + } + } + } } } } - assigned_conversation: { + 'post-crm-v3-objects-objectType-batch-upsert': { + /** + * Create Or Update Custom Objects + */ + displayName: () => LocalizedString groups: { /** - * Conversations + * Custom Objects */ '0': () => LocalizedString } + } + 'post-crm-v3-objects-objectType-search_doSearch': { /** - * Assigned Conversation + * Search Custom Objects */ displayName: () => LocalizedString /** - * Triggers when a conversation is assigned + * Search for custom objects based on specific criteria */ shortDesc: () => LocalizedString /** - * This trigger fires whenever a conversation is assigned to a user in Help Scout. This includes both new assignments and reassignments. + * Search for custom objects based on specific criteria */ longDesc: () => LocalizedString - options: { - mailboxId: { - /** - * Mailbox - */ - displayName: () => LocalizedString - /** - * Filter by mailbox - */ - shortDesc: () => LocalizedString - /** - * Optionally filter to only trigger for conversations in a specific mailbox. Leave empty to trigger for all mailboxes. - */ - longDesc: () => LocalizedString - } + groups: { + /** + * Custom Objects + */ + '0': () => LocalizedString } } - } - } - Hubspot: { - /** - * HubSpot - */ - displayName: () => LocalizedString - groups: { - /** - * CRM & Sales Management - */ - '0': () => LocalizedString - /** - * Email & Email Marketing - */ - '1': () => LocalizedString - } - /** - * Seamlessly connect to the HubSpot API to automate and streamline your CRM processes. - */ - shortDesc: () => LocalizedString - /** - * The HubSpot integration provides a comprehensive collection of actions and triggers to interact with the HubSpot API. Whether you need to manage companies, contacts, deals, or custom objects, this integration simplifies your workflow automation and CRM management. - */ - longDesc: () => LocalizedString - actions: { - 'post-crm-v3-objects-companies-batch-upsert_upsert': { + 'delete-crm-v3-objects-objectType-objectId_archive': { /** - * Create Or Update Companies + * Delete Custom Object */ displayName: () => LocalizedString /** - * Create or update multiple companies + * Soft delete a selected custom object */ shortDesc: () => LocalizedString groups: { /** - * Companies + * Custom Objects */ '0': () => LocalizedString } } - 'get-crm-v3-objects-contacts': { + 'get-crm-v3-objects-objectType-objectId_getById': { /** - * List Contacts + * Retrieve Custom Object */ displayName: () => LocalizedString /** - * Retrieve a list of contacts + * Retrieve a specific custom object */ shortDesc: () => LocalizedString groups: { /** - * Contacts + * Custom Objects */ '0': () => LocalizedString } } - 'post-crm-v3-objects-contacts': { + 'patch-crm-v3-objects-objectType-objectId_update': { /** - * Create Contact + * Update Custom Object */ displayName: () => LocalizedString /** - * Create a new contact + * Update an existing custom object */ shortDesc: () => LocalizedString groups: { /** - * Contacts + * Custom Objects + */ + '0': () => LocalizedString + } + } + 'get-crm-v3-objects-deals_getPage': { + /** + * List Deals + */ + displayName: () => LocalizedString + /** + * Retrieve a list of deals + */ + shortDesc: () => LocalizedString + groups: { + /** + * Deals + */ + '0': () => LocalizedString + } + } + 'post-crm-v3-objects-deals_create': { + /** + * Create Deal + */ + displayName: () => LocalizedString + /** + * Create a new deal + */ + shortDesc: () => LocalizedString + groups: { + /** + * Deals */ '0': () => LocalizedString } @@ -213246,102 +216201,114 @@ export type TranslationFunctions = { } } } - 'post-crm-v3-objects-contacts-search': { + 'post-crm-v3-objects-deals-batch-upsert_upsert': { /** - * Search Contacts + * Create Or Update Deals + */ + displayName: () => LocalizedString + groups: { + /** + * Deals + */ + '0': () => LocalizedString + } + } + 'post-crm-v3-objects-deals-search_doSearch': { + /** + * Search Deals */ displayName: () => LocalizedString /** - * Search for contacts based on specific criteria + * Search for deals based on specific criteria */ shortDesc: () => LocalizedString /** - * Search for contacts based on specific criteria + * Search for deals based on specific criteria */ longDesc: () => LocalizedString groups: { /** - * Contacts + * Deals */ '0': () => LocalizedString } } - 'delete-crm-v3-objects-contacts-contactId': { + 'delete-crm-v3-objects-deals-dealId_archive': { /** - * Delete Contact + * Delete a Deal */ displayName: () => LocalizedString /** - * Soft delete a selected contact + * Soft delete a selected deal */ shortDesc: () => LocalizedString groups: { /** - * Contacts + * Deals */ '0': () => LocalizedString } } - 'get-crm-v3-objects-contacts-contactId': { + 'get-crm-v3-objects-deals-dealId_getById': { /** - * Retrieve Contact + * Retrieve Deal */ displayName: () => LocalizedString /** - * Retrieve a specific contact + * Retrieve a specific deal */ shortDesc: () => LocalizedString groups: { /** - * Contacts + * Deals */ '0': () => LocalizedString } } - 'patch-crm-v3-objects-contacts-contactId': { + 'patch-crm-v3-objects-deals-dealId_update': { /** - * Update Contact + * Update Deal */ displayName: () => LocalizedString /** - * Update an existing contact + * Update an existing deal */ shortDesc: () => LocalizedString groups: { /** - * Contacts + * Deals */ '0': () => LocalizedString } } - 'get-crm-v3-objects-objectType_getPage': { + 'get-crm-v3-objects-leads_getPage': { /** - * List Custom Objects + * List Leads */ displayName: () => LocalizedString /** - * Retrieve a list of selected custom objects + * Retrieve a list of leads */ shortDesc: () => LocalizedString groups: { /** - * Custom Objects + * Leads */ '0': () => LocalizedString } } - 'post-crm-v3-objects-objectType_create': { + 'post-crm-v3-objects-leads_create': { /** - * Create Custom Object + * Create Lead */ displayName: () => LocalizedString /** - * Create a new custom object of a selected type + * Create a new lead */ shortDesc: () => LocalizedString groups: { /** - * Custom Objects + * Leads */ '0': () => LocalizedString } @@ -213448,114 +216415,114 @@ export type TranslationFunctions = { } } } - 'post-crm-v3-objects-objectType-batch-upsert': { + 'post-crm-v3-objects-leads-batch-upsert_upsert': { /** - * Create Or Update Custom Objects + * Create Or Update Leads */ displayName: () => LocalizedString groups: { /** - * Custom Objects + * Leads */ '0': () => LocalizedString } } - 'post-crm-v3-objects-objectType-search_doSearch': { + 'post-crm-v3-objects-leads-search_doSearch': { /** - * Search Custom Objects + * Search Leads */ displayName: () => LocalizedString /** - * Search for custom objects based on specific criteria + * Search for leads based on specific criteria */ shortDesc: () => LocalizedString /** - * Search for custom objects based on specific criteria + * Search for leads based on specific criteria */ longDesc: () => LocalizedString groups: { /** - * Custom Objects + * Leads */ '0': () => LocalizedString } } - 'delete-crm-v3-objects-objectType-objectId_archive': { + 'delete-crm-v3-objects-leads-leadsId_archive': { /** - * Delete Custom Object + * Delete Lead */ displayName: () => LocalizedString /** - * Soft delete a selected custom object + * Soft delete a selected lead */ shortDesc: () => LocalizedString groups: { /** - * Custom Objects + * Leads */ '0': () => LocalizedString } } - 'get-crm-v3-objects-objectType-objectId_getById': { + 'get-crm-v3-objects-leads-leadsId_getById': { /** - * Retrieve Custom Object + * Retrieve Lead */ displayName: () => LocalizedString /** - * Retrieve a specific custom object + * Retrieve a specific lead */ shortDesc: () => LocalizedString groups: { /** - * Custom Objects + * Leads */ '0': () => LocalizedString } } - 'patch-crm-v3-objects-objectType-objectId_update': { + 'patch-crm-v3-objects-leads-leadsId_update': { /** - * Update Custom Object + * Update Lead */ displayName: () => LocalizedString /** - * Update an existing custom object + * Update an existing lead */ shortDesc: () => LocalizedString groups: { /** - * Custom Objects + * Leads */ '0': () => LocalizedString } } - 'get-crm-v3-objects-deals_getPage': { + 'get-crm-v3-objects-products_getPage': { /** - * List Deals + * List Products */ displayName: () => LocalizedString /** - * Retrieve a list of deals + * Retrieve a list of products */ shortDesc: () => LocalizedString groups: { /** - * Deals + * Products */ '0': () => LocalizedString } } - 'post-crm-v3-objects-deals_create': { + 'post-crm-v3-objects-products_create': { /** - * Create Deal + * Create Product */ displayName: () => LocalizedString /** - * Create a new deal + * Create a new product */ shortDesc: () => LocalizedString groups: { /** - * Deals + * Products */ '0': () => LocalizedString } @@ -213662,114 +216629,114 @@ export type TranslationFunctions = { } } } - 'post-crm-v3-objects-deals-batch-upsert_upsert': { + 'post-crm-v3-objects-products-batch-upsert_upsert': { /** - * Create Or Update Deals + * Create Or Update Products */ displayName: () => LocalizedString groups: { /** - * Deals + * Products */ '0': () => LocalizedString } } - 'post-crm-v3-objects-deals-search_doSearch': { + 'post-crm-v3-objects-products-search_doSearch': { /** - * Search Deals + * Search Products */ displayName: () => LocalizedString /** - * Search for deals based on specific criteria + * Search for products based on specific criteria */ shortDesc: () => LocalizedString /** - * Search for deals based on specific criteria + * Search for products based on specific criteria */ longDesc: () => LocalizedString groups: { /** - * Deals + * Products */ '0': () => LocalizedString } } - 'delete-crm-v3-objects-deals-dealId_archive': { + 'delete-crm-v3-objects-products-productId_archive': { /** - * Delete a Deal + * Delete Product */ displayName: () => LocalizedString /** - * Soft delete a selected deal + * Soft delete a selected product */ shortDesc: () => LocalizedString groups: { /** - * Deals + * Products */ '0': () => LocalizedString } } - 'get-crm-v3-objects-deals-dealId_getById': { + 'get-crm-v3-objects-products-productId_getById': { /** - * Retrieve Deal + * Retrieve Product */ displayName: () => LocalizedString /** - * Retrieve a specific deal + * Retrieve a specific product */ shortDesc: () => LocalizedString groups: { /** - * Deals + * Products */ '0': () => LocalizedString } } - 'patch-crm-v3-objects-deals-dealId_update': { + 'patch-crm-v3-objects-products-productId_update': { /** - * Update Deal + * Update Product */ displayName: () => LocalizedString /** - * Update an existing deal + * Update an existing product */ shortDesc: () => LocalizedString groups: { /** - * Deals + * Products */ '0': () => LocalizedString } } - 'get-crm-v3-objects-leads_getPage': { + 'get-crm-v3-objects-tickets_getPage': { /** - * List Leads + * List Tickets */ displayName: () => LocalizedString /** - * Retrieve a list of leads + * Retrieve a list of tickets */ shortDesc: () => LocalizedString groups: { /** - * Leads + * Tickets */ '0': () => LocalizedString } } - 'post-crm-v3-objects-leads_create': { + 'post-crm-v3-objects-tickets_create': { /** - * Create Lead + * Create Ticket */ displayName: () => LocalizedString /** - * Create a new lead + * Create a new ticket */ shortDesc: () => LocalizedString groups: { /** - * Leads + * Tickets */ '0': () => LocalizedString } @@ -213876,5950 +216843,8304 @@ export type TranslationFunctions = { } } } - 'post-crm-v3-objects-leads-batch-upsert_upsert': { - /** - * Create Or Update Leads - */ - displayName: () => LocalizedString - groups: { + 'post-crm-v3-objects-tickets-batch-upsert_upsert': { + /** + * Create Or Update Tickets + */ + displayName: () => LocalizedString + groups: { + /** + * Tickets + */ + '0': () => LocalizedString + } + } + 'post-crm-v3-objects-tickets-search_doSearch': { + /** + * Search Tickets + */ + displayName: () => LocalizedString + /** + * Search for tickets based on specific criteria + */ + shortDesc: () => LocalizedString + /** + * Search for tickets based on specific criteria + */ + longDesc: () => LocalizedString + groups: { + /** + * Tickets + */ + '0': () => LocalizedString + } + } + 'delete-crm-v3-objects-tickets-ticketId_archive': { + /** + * Delete Ticket + */ + displayName: () => LocalizedString + /** + * Soft delete a selected ticket + */ + shortDesc: () => LocalizedString + groups: { + /** + * Tickets + */ + '0': () => LocalizedString + } + } + 'get-crm-v3-objects-tickets-ticketId_getById': { + /** + * Retrieve Ticket + */ + displayName: () => LocalizedString + /** + * Retrieve a specific ticket + */ + shortDesc: () => LocalizedString + groups: { + /** + * Tickets + */ + '0': () => LocalizedString + } + } + 'patch-crm-v3-objects-tickets-ticketId_update': { + /** + * Update Ticket + */ + displayName: () => LocalizedString + /** + * Update an existing ticket + */ + shortDesc: () => LocalizedString + groups: { + /** + * Tickets + */ + '0': () => LocalizedString + } + } + 'get-crm-v3-objects-users': { + /** + * List Users + */ + displayName: () => LocalizedString + /** + * Retrieve a list of users + */ + shortDesc: () => LocalizedString + groups: { + /** + * Users + */ + '0': () => LocalizedString + } + } + 'post-crm-v3-objects-users-batch-upsert': { + /** + * Create Or Update Users + */ + displayName: () => LocalizedString + groups: { + /** + * Users + */ + '0': () => LocalizedString + } + } + 'post-crm-v3-objects-users-search': { + /** + * Search Users + */ + displayName: () => LocalizedString + /** + * Search for users based on specific criteria + */ + shortDesc: () => LocalizedString + /** + * Search for users based on specific criteria + */ + longDesc: () => LocalizedString + groups: { + /** + * Users + */ + '0': () => LocalizedString + } + } + 'get-crm-v3-objects-users-userId': { + /** + * Retrieve User + */ + displayName: () => LocalizedString + /** + * Retrieve a specific user + */ + shortDesc: () => LocalizedString + groups: { + /** + * Users + */ + '0': () => LocalizedString + } + } + 'patch-crm-v3-objects-users-userId': { + /** + * Update User + */ + displayName: () => LocalizedString + /** + * Update an existing user + */ + shortDesc: () => LocalizedString + groups: { + /** + * Users + */ + '0': () => LocalizedString + } + } + create_list: { + /** + * Create List + */ + displayName: () => LocalizedString + /** + * Create a new HubSpot list + */ + shortDesc: () => LocalizedString + /** + * Creates a new list in HubSpot CRM with the specified configuration and properties. + */ + longDesc: () => LocalizedString + groups: { + /** + * Lists + */ + '0': () => LocalizedString + } + } + search_lists: { + /** + * Search Lists + */ + displayName: () => LocalizedString + /** + * Search for HubSpot lists + */ + shortDesc: () => LocalizedString + /** + * Search and retrieve HubSpot lists based on specified criteria and filters. + */ + longDesc: () => LocalizedString + groups: { + /** + * Lists + */ + '0': () => LocalizedString + } + } + delete_list: { + /** + * Delete List + */ + displayName: () => LocalizedString + /** + * Delete a HubSpot list + */ + shortDesc: () => LocalizedString + /** + * Permanently removes a specified list from HubSpot CRM by its ID. + */ + longDesc: () => LocalizedString + groups: { + /** + * Lists + */ + '0': () => LocalizedString + } + } + get_list: { + /** + * Get List + */ + displayName: () => LocalizedString + /** + * Retrieve a HubSpot list by ID + */ + shortDesc: () => LocalizedString + /** + * Fetches detailed information about a specific HubSpot list using its unique identifier. + */ + longDesc: () => LocalizedString + groups: { + /** + * Lists + */ + '0': () => LocalizedString + } + } + add_memberships: { + /** + * Add List Records + */ + displayName: () => LocalizedString + /** + * Add records to a HubSpot list + */ + shortDesc: () => LocalizedString + /** + * Adds specified records as members to an existing HubSpot list. + */ + longDesc: () => LocalizedString + groups: { + /** + * Lists + */ + '0': () => LocalizedString + } + } + add_members_from_source_list: { + /** + * Add Records from another list + */ + displayName: () => LocalizedString + /** + * Copy all members from one list to another + */ + shortDesc: () => LocalizedString + /** + * Adds all members from a source HubSpot list to a target list, effectively copying the membership. + */ + longDesc: () => LocalizedString + groups: { + /** + * Lists + */ + '0': () => LocalizedString + } + } + remove_members_from_list: { + /** + * Remove List Records + */ + displayName: () => LocalizedString + /** + * Remove records from a HubSpot list + */ + shortDesc: () => LocalizedString + /** + * Removes specified records from an existing HubSpot list membership. + */ + longDesc: () => LocalizedString + groups: { + /** + * Lists + */ + '0': () => LocalizedString + } + } + get_list_records: { + /** + * Get List Records + */ + displayName: () => LocalizedString + /** + * Retrieve records from a HubSpot list with pagination and property filtering. + */ + shortDesc: () => LocalizedString + /** + * Fetches records from a specified HubSpot list, including support for pagination using before/after cursors and filtering by specific properties. Returns the actual record data along with pagination metadata. + */ + longDesc: () => LocalizedString + groups: { + /** + * Lists + */ + '0': () => LocalizedString + } + options: { + listId: { + /** + * List ID + */ + displayName: () => LocalizedString + /** + * The HubSpot list to retrieve records from + */ + shortDesc: () => LocalizedString + /** + * The unique identifier of the HubSpot list to fetch records from. + */ + longDesc: () => LocalizedString + } + after: { + /** + * After + */ + displayName: () => LocalizedString + /** + * Pagination cursor for next page + */ + shortDesc: () => LocalizedString + /** + * Cursor value to retrieve records after this point. Used for forward pagination. + */ + longDesc: () => LocalizedString + } + before: { + /** + * Before + */ + displayName: () => LocalizedString + /** + * Pagination cursor for previous page + */ + shortDesc: () => LocalizedString + /** + * Cursor value to retrieve records before this point. Used for backward pagination. + */ + longDesc: () => LocalizedString + } + limit: { + /** + * Limit + */ + displayName: () => LocalizedString + /** + * Maximum number of records to return + */ + shortDesc: () => LocalizedString + /** + * The maximum number of records to return in a single request. Default is 100. + */ + longDesc: () => LocalizedString + } + properties: { + /** + * Properties + */ + displayName: () => LocalizedString + /** + * List of properties to include + */ + shortDesc: () => LocalizedString + /** + * Specific properties to include in the response for each record. If not specified, default properties will be returned. + */ + longDesc: () => LocalizedString + } + } + } + } + triggers: { + hubspot_company_created_or_updated_trigger: { + event_info: { + /** + * Company Information + */ + desc: () => LocalizedString + } + /** + * Company Created or Updated + */ + displayName: () => LocalizedString + /** + * Triggers when a company is added or updated in HubSpot. + */ + shortDesc: () => LocalizedString + /** + * This trigger activates whenever a company record is created or modified in HubSpot, enabling you to automate workflows based on company data changes. + */ + longDesc: () => LocalizedString + options: { + activationCriteria: { + /** + * Activation Criteria + */ + displayName: () => LocalizedString + /** + * Criteria for trigger to activate (created or updated) + */ + shortDesc: () => LocalizedString + /** + * Select the criteria for the trigger to activate. + + - Created: Triggers when a new object is created + - Updated: Triggers when an existing object is updated + */ + longDesc: () => LocalizedString + } + additionalProperties: { + /** + * Additional Properties + */ + displayName: () => LocalizedString + /** + * Additional properties to add to returned data + */ + shortDesc: () => LocalizedString + /** + * Select additional properties to add to the returned object data + */ + longDesc: () => LocalizedString + } + } + } + hubspot_contact_created_or_updated_trigger: { + event_info: { + /** + * Contact Information + */ + desc: () => LocalizedString + } + /** + * Contact Created or Updated + */ + displayName: () => LocalizedString + /** + * Triggers when a contact is added or updated in HubSpot. + */ + shortDesc: () => LocalizedString + /** + * Activate workflows whenever a new contact is created or an existing contact is updated within HubSpot. Ideal for managing customer information efficiently. + */ + longDesc: () => LocalizedString + options: { + activationCriteria: { + /** + * Activation Criteria + */ + displayName: () => LocalizedString + /** + * Criteria for trigger to activate (created or updated) + */ + shortDesc: () => LocalizedString + /** + * Select the criteria for the trigger to activate. + + - Created: Triggers when a new object is created + - Updated: Triggers when an existing object is updated + */ + longDesc: () => LocalizedString + } + additionalProperties: { + /** + * Additional Properties + */ + displayName: () => LocalizedString + /** + * Additional properties to add to returned data + */ + shortDesc: () => LocalizedString + /** + * Select additional properties to add to the returned object data + */ + longDesc: () => LocalizedString + } + } + } + hubspot_custom_object_created_or_updated_trigger: { + event_info: { + /** + * Custom Object Information + */ + desc: () => LocalizedString + } + /** + * Custom Object Created or Updated + */ + displayName: () => LocalizedString + /** + * Triggers when a custom object is added or updated in HubSpot. + */ + shortDesc: () => LocalizedString + /** + * Use this trigger to capture changes to custom objects in HubSpot, ensuring that updates to custom data structures are processed immediately for automation or integration. + */ + longDesc: () => LocalizedString + options: { + activationCriteria: { + /** + * Activation Criteria + */ + displayName: () => LocalizedString + /** + * Criteria for trigger to activate (created or updated) + */ + shortDesc: () => LocalizedString + /** + * Select the criteria for the trigger to activate. + + - Created: Triggers when a new object is created + - Updated: Triggers when an existing object is updated + */ + longDesc: () => LocalizedString + } + additionalProperties: { + /** + * Additional Properties + */ + displayName: () => LocalizedString + /** + * Additional properties to add to returned data + */ + shortDesc: () => LocalizedString + /** + * Select additional properties to add to the returned object data + */ + longDesc: () => LocalizedString + } + object: { + /** + * Object + */ + displayName: () => LocalizedString + /** + * The custom object to monitor for changes. + */ + shortDesc: () => LocalizedString + /** + * Select the custom object you want to monitor for new or updated records. + */ + longDesc: () => LocalizedString + } + } + } + hubspot_deal_created_or_updated_trigger: { + event_info: { + /** + * Deal Information + */ + desc: () => LocalizedString + } + /** + * Deal Created or Updated + */ + displayName: () => LocalizedString + /** + * Triggers when a deal is created or updated in HubSpot. + */ + shortDesc: () => LocalizedString + /** + * This trigger fires when a deal is created or modified in HubSpot, allowing you to track sales opportunities and integrate with your sales pipeline automation workflows. + */ + longDesc: () => LocalizedString + options: { + activationCriteria: { + /** + * Activation Criteria + */ + displayName: () => LocalizedString + /** + * Criteria for trigger to activate (created or updated) + */ + shortDesc: () => LocalizedString + /** + * Select the criteria for the trigger to activate. + + - Created: Triggers when a new object is created + - Updated: Triggers when an existing object is updated + */ + longDesc: () => LocalizedString + } + additionalProperties: { + /** + * Additional Properties + */ + displayName: () => LocalizedString + /** + * Additional properties to add to returned data + */ + shortDesc: () => LocalizedString + /** + * Select additional properties to add to the returned object data + */ + longDesc: () => LocalizedString + } + } + } + hubspot_lead_created_or_updated_trigger: { + event_info: { /** - * Leads + * Lead Information */ - '0': () => LocalizedString + desc: () => LocalizedString } - } - 'post-crm-v3-objects-leads-search_doSearch': { /** - * Search Leads + * Lead Created or Updated */ displayName: () => LocalizedString /** - * Search for leads based on specific criteria + * Triggers when a lead is added or updated in HubSpot. */ shortDesc: () => LocalizedString /** - * Search for leads based on specific criteria + * Monitor new leads and updates to existing leads in HubSpot with this trigger, enabling efficient lead management and follow-up processes. */ longDesc: () => LocalizedString - groups: { + options: { + activationCriteria: { + /** + * Activation Criteria + */ + displayName: () => LocalizedString + /** + * Criteria for trigger to activate (created or updated) + */ + shortDesc: () => LocalizedString + /** + * Select the criteria for the trigger to activate. + + - Created: Triggers when a new object is created + - Updated: Triggers when an existing object is updated + */ + longDesc: () => LocalizedString + } + additionalProperties: { + /** + * Additional Properties + */ + displayName: () => LocalizedString + /** + * Additional properties to add to returned data + */ + shortDesc: () => LocalizedString + /** + * Select additional properties to add to the returned object data + */ + longDesc: () => LocalizedString + } + } + } + hubspot_product_created_or_updated_trigger: { + event_info: { /** - * Leads + * Product Information */ - '0': () => LocalizedString + desc: () => LocalizedString } - } - 'delete-crm-v3-objects-leads-leadsId_archive': { /** - * Delete Lead + * Product Created or Updated */ displayName: () => LocalizedString /** - * Soft delete a selected lead + * Triggers when a product is added or updated in HubSpot. */ shortDesc: () => LocalizedString - groups: { + /** + * This trigger alerts you to any new or updated products within your HubSpot account, ensuring that your product data remains synchronized with your workflows and external systems. + */ + longDesc: () => LocalizedString + options: { + activationCriteria: { + /** + * Activation Criteria + */ + displayName: () => LocalizedString + /** + * Criteria for trigger to activate (created or updated) + */ + shortDesc: () => LocalizedString + /** + * Select the criteria for the trigger to activate. + + - Created: Triggers when a new object is created + - Updated: Triggers when an existing object is updated + */ + longDesc: () => LocalizedString + } + additionalProperties: { + /** + * Additional Properties + */ + displayName: () => LocalizedString + /** + * Additional properties to add to returned data + */ + shortDesc: () => LocalizedString + /** + * Select additional properties to add to the returned object data + */ + longDesc: () => LocalizedString + } + } + } + hubspot_ticket_created_or_updated_trigger: { + event_info: { /** - * Leads + * Ticket Information */ - '0': () => LocalizedString + desc: () => LocalizedString } - } - 'get-crm-v3-objects-leads-leadsId_getById': { /** - * Retrieve Lead + * Ticket Created or Updated */ displayName: () => LocalizedString /** - * Retrieve a specific lead + * Triggers when a support ticket is created or updated in HubSpot. */ shortDesc: () => LocalizedString - groups: { + /** + * Automatically trigger workflows when a support ticket is created or updated in HubSpot, ideal for managing customer support operations and streamlining issue resolution. + */ + longDesc: () => LocalizedString + options: { + activationCriteria: { + /** + * Activation Criteria + */ + displayName: () => LocalizedString + /** + * Criteria for trigger to activate (created or updated) + */ + shortDesc: () => LocalizedString + /** + * Select the criteria for the trigger to activate. + + - Created: Triggers when a new object is created + - Updated: Triggers when an existing object is updated + */ + longDesc: () => LocalizedString + } + additionalProperties: { + /** + * Additional Properties + */ + displayName: () => LocalizedString + /** + * Additional properties to add to returned data + */ + shortDesc: () => LocalizedString + /** + * Select additional properties to add to the returned object data + */ + longDesc: () => LocalizedString + } + } + } + hubspot_user_created_or_updated_trigger: { + event_info: { /** - * Leads + * User Information */ - '0': () => LocalizedString + desc: () => LocalizedString } - } - 'patch-crm-v3-objects-leads-leadsId_update': { /** - * Update Lead + * User Created or Updated */ displayName: () => LocalizedString /** - * Update an existing lead + * Triggers when a user is added or updated in HubSpot. */ shortDesc: () => LocalizedString - groups: { - /** - * Leads - */ - '0': () => LocalizedString + /** + * This trigger fires upon the creation or update of a user within HubSpot, helping you keep track of user accounts and maintain updated access control for your team. + */ + longDesc: () => LocalizedString + options: { + activationCriteria: { + /** + * Activation Criteria + */ + displayName: () => LocalizedString + /** + * Criteria for trigger to activate (created or updated) + */ + shortDesc: () => LocalizedString + /** + * Select the criteria for the trigger to activate. + + - Created: Triggers when a new object is created + - Updated: Triggers when an existing object is updated + */ + longDesc: () => LocalizedString + } + additionalProperties: { + /** + * Additional Properties + */ + displayName: () => LocalizedString + /** + * Additional properties to add to returned data + */ + shortDesc: () => LocalizedString + /** + * Select additional properties to add to the returned object data + */ + longDesc: () => LocalizedString + } } } - 'get-crm-v3-objects-products_getPage': { + } + expressions: { + '&&': { /** - * List Products + * and (&&) */ displayName: () => LocalizedString /** - * Retrieve a list of products + * Returns True if all arguments are True */ shortDesc: () => LocalizedString - groups: { - /** - * Products - */ - '0': () => LocalizedString + /** + * Returns `True` if all arguments are `True` with logic short-circuiting + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Condition + */ + displayName: () => LocalizedString + /** + * Boolean condition to evaluate + */ + shortDesc: () => LocalizedString + /** + * A boolean expression or condition that evaluates to True or False + */ + longDesc: () => LocalizedString + } } } - 'post-crm-v3-objects-products_create': { + '||': { /** - * Create Product + * or (||) */ displayName: () => LocalizedString /** - * Create a new product + * Returns True if any argument is True */ shortDesc: () => LocalizedString - groups: { - /** - * Products - */ - '0': () => LocalizedString - } - options: { - associations: { + /** + * Returns `True` if any argument is `True` with logic short-circuiting + */ + longDesc: () => LocalizedString + args: { + '0': { /** - * HubSpot Associations + * Condition */ displayName: () => LocalizedString /** - * Define relationships between HubSpot objects + * Boolean condition to evaluate */ shortDesc: () => LocalizedString /** - * Associations create connections between different HubSpot objects such as contacts, companies, deals, tickets, and custom objects. + * A boolean expression or condition that evaluates to True or False */ longDesc: () => LocalizedString - type: { - element_type: { - fields: { - to: { - /** - * Target Object - */ - displayName: () => LocalizedString - /** - * The HubSpot object to create an association with - */ - shortDesc: () => LocalizedString - /** - * Specifies the target HubSpot object (company, contact, deal, etc.) that will be associated with the current object. - */ - longDesc: () => LocalizedString - type: { - fields: { - id: { - /** - * Object ID - */ - displayName: () => LocalizedString - /** - * Unique identifier of the target object - */ - shortDesc: () => LocalizedString - /** - * The unique identifier (ID) of the HubSpot object being associated with. This could be a company ID, contact ID, deal ID, etc. - */ - longDesc: () => LocalizedString - } - } - } - } - types: { - /** - * Association Types - */ - displayName: () => LocalizedString - /** - * Types of relationship between objects - */ - shortDesc: () => LocalizedString - /** - * Defines the nature and direction of the relationship between the two HubSpot objects being associated. - */ - longDesc: () => LocalizedString - type: { - element_type: { - fields: { - associationTypeId: { - /** - * Association Type ID - */ - displayName: () => LocalizedString - /** - * Numeric identifier of the association type - */ - shortDesc: () => LocalizedString - /** - * A numeric ID that defines the type of association (e.g., 1 for company-to-contact, 3 for deal-to-contact). Each ID represents a specific directional relationship between two object types. - */ - longDesc: () => LocalizedString - } - associationCategory: { - /** - * Association Category - */ - displayName: () => LocalizedString - /** - * Category of the association type - */ - shortDesc: () => LocalizedString - /** - * Categorizes the association as either "HUBSPOT_DEFINED" (built-in system associations) or "USER_DEFINED" (custom associations created by users). Most standard associations use HUBSPOT_DEFINED. - */ - longDesc: () => LocalizedString - } - } - } - } - } - } - } - } } } } - 'post-crm-v3-objects-products-batch-upsert_upsert': { - /** - * Create Or Update Products - */ - displayName: () => LocalizedString - groups: { - /** - * Products - */ - '0': () => LocalizedString - } - } - 'post-crm-v3-objects-products-search_doSearch': { + '==': { /** - * Search Products + * equals (=) */ displayName: () => LocalizedString /** - * Search for products based on specific criteria + * Equality comparison */ shortDesc: () => LocalizedString /** - * Search for products based on specific criteria + * Returns `True` if the field value equals the specified value */ longDesc: () => LocalizedString - groups: { - /** - * Products - */ - '0': () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Field to compare + */ + shortDesc: () => LocalizedString + /** + * The field whose value will be compared + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Value + */ + displayName: () => LocalizedString + /** + * Value to compare against + */ + shortDesc: () => LocalizedString + /** + * The value to compare the field against + */ + longDesc: () => LocalizedString + } } } - 'delete-crm-v3-objects-products-productId_archive': { + '!=': { /** - * Delete Product + * not equals (!=) */ displayName: () => LocalizedString /** - * Soft delete a selected product + * Inequality comparison */ shortDesc: () => LocalizedString - groups: { - /** - * Products - */ - '0': () => LocalizedString + /** + * Returns `True` if the field value does not equal the specified value + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Field to compare + */ + shortDesc: () => LocalizedString + /** + * The field whose value will be compared + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Value + */ + displayName: () => LocalizedString + /** + * Value to compare against + */ + shortDesc: () => LocalizedString + /** + * The value to compare the field against + */ + longDesc: () => LocalizedString + } } } - 'get-crm-v3-objects-products-productId_getById': { + '>': { /** - * Retrieve Product + * greater than (>) */ displayName: () => LocalizedString /** - * Retrieve a specific product + * Greater than comparison */ shortDesc: () => LocalizedString - groups: { - /** - * Products - */ - '0': () => LocalizedString + /** + * Returns `True` if the field value is greater than the specified value + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Field to compare + */ + shortDesc: () => LocalizedString + /** + * The field whose value will be compared + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Value + */ + displayName: () => LocalizedString + /** + * Value to compare against + */ + shortDesc: () => LocalizedString + /** + * The value to compare the field against + */ + longDesc: () => LocalizedString + } } } - 'patch-crm-v3-objects-products-productId_update': { + '>=': { /** - * Update Product + * greater than or equal (>=) */ displayName: () => LocalizedString /** - * Update an existing product + * Greater than or equal comparison */ shortDesc: () => LocalizedString - groups: { - /** - * Products - */ - '0': () => LocalizedString + /** + * Returns `True` if the field value is greater than or equal to the specified value + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Field to compare + */ + shortDesc: () => LocalizedString + /** + * The field whose value will be compared + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Value + */ + displayName: () => LocalizedString + /** + * Value to compare against + */ + shortDesc: () => LocalizedString + /** + * The value to compare the field against + */ + longDesc: () => LocalizedString + } } } - 'get-crm-v3-objects-tickets_getPage': { + '<': { /** - * List Tickets + * less than (<) */ displayName: () => LocalizedString /** - * Retrieve a list of tickets + * Less than comparison */ shortDesc: () => LocalizedString - groups: { - /** - * Tickets - */ - '0': () => LocalizedString + /** + * Returns `True` if the field value is less than the specified value + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Field to compare + */ + shortDesc: () => LocalizedString + /** + * The field whose value will be compared + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Value + */ + displayName: () => LocalizedString + /** + * Value to compare against + */ + shortDesc: () => LocalizedString + /** + * The value to compare the field against + */ + longDesc: () => LocalizedString + } } } - 'post-crm-v3-objects-tickets_create': { + '<=': { /** - * Create Ticket + * less than or equal (<=) */ displayName: () => LocalizedString /** - * Create a new ticket + * Less than or equal comparison */ shortDesc: () => LocalizedString - groups: { - /** - * Tickets - */ - '0': () => LocalizedString - } - options: { - associations: { + /** + * Returns `True` if the field value is less than or equal to the specified value + */ + longDesc: () => LocalizedString + args: { + '0': { /** - * HubSpot Associations + * Field */ displayName: () => LocalizedString /** - * Define relationships between HubSpot objects + * Field to compare */ shortDesc: () => LocalizedString /** - * Associations create connections between different HubSpot objects such as contacts, companies, deals, tickets, and custom objects. + * The field whose value will be compared + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Value + */ + displayName: () => LocalizedString + /** + * Value to compare against + */ + shortDesc: () => LocalizedString + /** + * The value to compare the field against */ longDesc: () => LocalizedString - type: { - element_type: { - fields: { - to: { - /** - * Target Object - */ - displayName: () => LocalizedString - /** - * The HubSpot object to create an association with - */ - shortDesc: () => LocalizedString - /** - * Specifies the target HubSpot object (company, contact, deal, etc.) that will be associated with the current object. - */ - longDesc: () => LocalizedString - type: { - fields: { - id: { - /** - * Object ID - */ - displayName: () => LocalizedString - /** - * Unique identifier of the target object - */ - shortDesc: () => LocalizedString - /** - * The unique identifier (ID) of the HubSpot object being associated with. This could be a company ID, contact ID, deal ID, etc. - */ - longDesc: () => LocalizedString - } - } - } - } - types: { - /** - * Association Types - */ - displayName: () => LocalizedString - /** - * Types of relationship between objects - */ - shortDesc: () => LocalizedString - /** - * Defines the nature and direction of the relationship between the two HubSpot objects being associated. - */ - longDesc: () => LocalizedString - type: { - element_type: { - fields: { - associationTypeId: { - /** - * Association Type ID - */ - displayName: () => LocalizedString - /** - * Numeric identifier of the association type - */ - shortDesc: () => LocalizedString - /** - * A numeric ID that defines the type of association (e.g., 1 for company-to-contact, 3 for deal-to-contact). Each ID represents a specific directional relationship between two object types. - */ - longDesc: () => LocalizedString - } - associationCategory: { - /** - * Association Category - */ - displayName: () => LocalizedString - /** - * Category of the association type - */ - shortDesc: () => LocalizedString - /** - * Categorizes the association as either "HUBSPOT_DEFINED" (built-in system associations) or "USER_DEFINED" (custom associations created by users). Most standard associations use HUBSPOT_DEFINED. - */ - longDesc: () => LocalizedString - } - } - } - } - } - } - } - } } } } - 'post-crm-v3-objects-tickets-batch-upsert_upsert': { - /** - * Create Or Update Tickets - */ - displayName: () => LocalizedString - groups: { - /** - * Tickets - */ - '0': () => LocalizedString - } - } - 'post-crm-v3-objects-tickets-search_doSearch': { + 'in': { /** - * Search Tickets + * in */ displayName: () => LocalizedString /** - * Search for tickets based on specific criteria + * In list */ shortDesc: () => LocalizedString /** - * Search for tickets based on specific criteria + * Returns `True` if the field value is in the provided list */ longDesc: () => LocalizedString - groups: { - /** - * Tickets - */ - '0': () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Field to check + */ + shortDesc: () => LocalizedString + /** + * The field whose value will be checked + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Values + */ + displayName: () => LocalizedString + /** + * List of values + */ + shortDesc: () => LocalizedString + /** + * The list of values to check the field against + */ + longDesc: () => LocalizedString + } } } - 'delete-crm-v3-objects-tickets-ticketId_archive': { + not_in: { /** - * Delete Ticket + * not in */ displayName: () => LocalizedString /** - * Soft delete a selected ticket + * Not in list */ shortDesc: () => LocalizedString - groups: { - /** - * Tickets - */ - '0': () => LocalizedString + /** + * Returns `True` if the field value is not in the provided list + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Field to check + */ + shortDesc: () => LocalizedString + /** + * The field whose value will be checked + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Values + */ + displayName: () => LocalizedString + /** + * List of values + */ + shortDesc: () => LocalizedString + /** + * The list of values the field should not match + */ + longDesc: () => LocalizedString + } } } - 'get-crm-v3-objects-tickets-ticketId_getById': { + between: { /** - * Retrieve Ticket + * between */ displayName: () => LocalizedString /** - * Retrieve a specific ticket + * Between two values */ shortDesc: () => LocalizedString - groups: { - /** - * Tickets - */ - '0': () => LocalizedString + /** + * Returns `True` if the field value is between the two specified values + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Field to check + */ + shortDesc: () => LocalizedString + /** + * The field whose value will be checked + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Lower bound + */ + displayName: () => LocalizedString + /** + * Minimum value + */ + shortDesc: () => LocalizedString + /** + * The lower bound of the range (inclusive) + */ + longDesc: () => LocalizedString + } + '2': { + /** + * Upper bound + */ + displayName: () => LocalizedString + /** + * Maximum value + */ + shortDesc: () => LocalizedString + /** + * The upper bound of the range (inclusive) + */ + longDesc: () => LocalizedString + } } } - 'patch-crm-v3-objects-tickets-ticketId_update': { + has_property: { /** - * Update Ticket + * has property */ displayName: () => LocalizedString /** - * Update an existing ticket + * Field has a value */ shortDesc: () => LocalizedString - groups: { - /** - * Tickets - */ - '0': () => LocalizedString + /** + * Returns `True` if the field has any value set (is not null or empty) + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Field to check + */ + shortDesc: () => LocalizedString + /** + * The field to check for a value + */ + longDesc: () => LocalizedString + } } } - 'get-crm-v3-objects-users': { + not_has_property: { /** - * List Users + * does not have property */ displayName: () => LocalizedString /** - * Retrieve a list of users + * Field has no value */ shortDesc: () => LocalizedString - groups: { - /** - * Users - */ - '0': () => LocalizedString - } - } - 'post-crm-v3-objects-users-batch-upsert': { /** - * Create Or Update Users + * Returns `True` if the field has no value set (is null or empty) */ - displayName: () => LocalizedString - groups: { - /** - * Users - */ - '0': () => LocalizedString + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Field to check + */ + shortDesc: () => LocalizedString + /** + * The field to check for emptiness + */ + longDesc: () => LocalizedString + } } } - 'post-crm-v3-objects-users-search': { + contains_token: { /** - * Search Users + * contains token */ displayName: () => LocalizedString /** - * Search for users based on specific criteria + * Contains token or substring */ shortDesc: () => LocalizedString /** - * Search for users based on specific criteria + * Returns `True` if the field contains the specified token or substring */ longDesc: () => LocalizedString - groups: { - /** - * Users - */ - '0': () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Text field to search + */ + shortDesc: () => LocalizedString + /** + * The text field to search within + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Token + */ + displayName: () => LocalizedString + /** + * Token to find + */ + shortDesc: () => LocalizedString + /** + * The token or substring to search for + */ + longDesc: () => LocalizedString + } } } - 'get-crm-v3-objects-users-userId': { + not_contains_token: { /** - * Retrieve User + * does not contain token */ displayName: () => LocalizedString /** - * Retrieve a specific user + * Does not contain token or substring */ shortDesc: () => LocalizedString - groups: { - /** - * Users - */ - '0': () => LocalizedString + /** + * Returns `True` if the field does not contain the specified token or substring + */ + longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Text field to search + */ + shortDesc: () => LocalizedString + /** + * The text field to search within + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Token + */ + displayName: () => LocalizedString + /** + * Token to exclude + */ + shortDesc: () => LocalizedString + /** + * The token or substring that should not be present + */ + longDesc: () => LocalizedString + } } } - 'patch-crm-v3-objects-users-userId': { + } + searchOptions: { + orderBy: { /** - * Update User + * Order By */ displayName: () => LocalizedString /** - * Update an existing user + * Sort results by a specific field */ shortDesc: () => LocalizedString - groups: { - /** - * Users - */ - '0': () => LocalizedString + /** + * Define the field and direction to sort search results + */ + longDesc: () => LocalizedString + type: { + fields: { + column: { + /** + * Column + */ + displayName: () => LocalizedString + /** + * The column to sort by + */ + shortDesc: () => LocalizedString + /** + * The name of the column to use for sorting results + */ + longDesc: () => LocalizedString + } + ascending: { + /** + * Ascending + */ + displayName: () => LocalizedString + /** + * Sort in ascending order + */ + shortDesc: () => LocalizedString + /** + * When enabled, results are sorted in ascending order (A-Z, 0-9) + */ + longDesc: () => LocalizedString + } + } } } - create_list: { + limit: { /** - * Create List + * Limit */ displayName: () => LocalizedString /** - * Create a new HubSpot list + * Maximum number of records to return */ shortDesc: () => LocalizedString /** - * Creates a new list in HubSpot CRM with the specified configuration and properties. + * The maximum number of records to return. If not specified, all matching records will be returned. */ longDesc: () => LocalizedString - groups: { - /** - * Lists - */ - '0': () => LocalizedString - } } - search_lists: { + } + upsertOptions: { + idProperty: { /** - * Search Lists + * ID Property */ displayName: () => LocalizedString /** - * Search for HubSpot lists + * The unique identifier property for upsert operations */ shortDesc: () => LocalizedString /** - * Search and retrieve HubSpot lists based on specified criteria and filters. + * The unique identifier property name used to determine if a record already exists for updating. If no matching record is found, a new record will be created. */ longDesc: () => LocalizedString + } + } + } + Dropbox: { + /** + * Dropbox + */ + displayName: () => LocalizedString + groups: { + /** + * Cloud Storage & File Management + */ + '0': () => LocalizedString + } + /** + * Connect with Dropbox to manage files, folders, and shared links in your cloud storage + */ + shortDesc: () => LocalizedString + /** + * Integrate with Dropbox to automate file management, sharing, and synchronization. Dropbox is a cloud-based file storage solution that allows users to store, share, and collaborate on files and folders. This integration enables you to create, copy, move, and delete files and folders, manage shared links, track file revisions, and monitor for new or modified files. + */ + longDesc: () => LocalizedString + actions: { + create_text_file: { groups: { /** - * Lists + * Files */ '0': () => LocalizedString } - } - delete_list: { /** - * Delete List + * Create Text File */ displayName: () => LocalizedString /** - * Delete a HubSpot list + * Create a new text file in Dropbox */ shortDesc: () => LocalizedString /** - * Permanently removes a specified list from HubSpot CRM by its ID. + * Create a new text file with the specified content at the given path in your Dropbox. If a file already exists at the path and autorename is enabled, a new name will be generated. */ longDesc: () => LocalizedString + options: { + path: { + /** + * File Path + */ + displayName: () => LocalizedString + /** + * Full path for the new file + */ + shortDesc: () => LocalizedString + /** + * The full path where the file should be created, including the filename (e.g., "/Documents/notes.txt"). + */ + longDesc: () => LocalizedString + } + content: { + /** + * Content + */ + displayName: () => LocalizedString + /** + * Text content for the file + */ + shortDesc: () => LocalizedString + /** + * The text content to write to the file. + */ + longDesc: () => LocalizedString + } + autorename: { + /** + * Auto Rename + */ + displayName: () => LocalizedString + /** + * Automatically rename if file exists + */ + shortDesc: () => LocalizedString + /** + * If enabled and a file with the same name exists, Dropbox will automatically generate a new name. + */ + longDesc: () => LocalizedString + } + mute: { + /** + * Mute + */ + displayName: () => LocalizedString + /** + * Suppress change notifications + */ + shortDesc: () => LocalizedString + /** + * If enabled, users will not receive notifications about this file being created. + */ + longDesc: () => LocalizedString + } + } + } + upload_file: { groups: { /** - * Lists + * Files */ '0': () => LocalizedString } - } - get_list: { /** - * Get List + * Upload File */ displayName: () => LocalizedString /** - * Retrieve a HubSpot list by ID + * Upload a file to Dropbox */ shortDesc: () => LocalizedString /** - * Fetches detailed information about a specific HubSpot list using its unique identifier. + * Upload a file from binary content to the specified path in your Dropbox. Supports files up to 150MB. */ longDesc: () => LocalizedString + options: { + path: { + /** + * Destination Path + */ + displayName: () => LocalizedString + /** + * Full path for the uploaded file + */ + shortDesc: () => LocalizedString + /** + * The full path where the file should be uploaded, including the filename (e.g., "/Documents/report.pdf"). If not provided, the file will be uploaded to the root folder with its original name. + */ + longDesc: () => LocalizedString + } + file: { + /** + * File + */ + displayName: () => LocalizedString + /** + * The file to upload + */ + shortDesc: () => LocalizedString + /** + * The file to upload to Dropbox. + */ + longDesc: () => LocalizedString + } + autorename: { + /** + * Auto Rename + */ + displayName: () => LocalizedString + /** + * Automatically rename if file exists + */ + shortDesc: () => LocalizedString + /** + * If enabled and a file with the same name exists, Dropbox will automatically generate a new name. + */ + longDesc: () => LocalizedString + } + mute: { + /** + * Mute + */ + displayName: () => LocalizedString + /** + * Suppress change notifications + */ + shortDesc: () => LocalizedString + /** + * If enabled, users will not receive notifications about this file being uploaded. + */ + longDesc: () => LocalizedString + } + strictConflict: { + /** + * Strict Conflict + */ + displayName: () => LocalizedString + /** + * Fail on conflict instead of renaming + */ + shortDesc: () => LocalizedString + /** + * If enabled, the upload will fail if a file with the same name exists, even if autorename is enabled. + */ + longDesc: () => LocalizedString + } + } + } + download_file: { groups: { /** - * Lists + * Files */ '0': () => LocalizedString } - } - add_memberships: { /** - * Add List Records + * Download File */ displayName: () => LocalizedString /** - * Add records to a HubSpot list + * Download a file from Dropbox */ shortDesc: () => LocalizedString /** - * Adds specified records as members to an existing HubSpot list. + * Download the content of a file from your Dropbox. Returns the file content as base64-encoded binary data along with file metadata. */ longDesc: () => LocalizedString + options: { + path: { + /** + * File Path + */ + displayName: () => LocalizedString + /** + * Path to the file to download + */ + shortDesc: () => LocalizedString + /** + * The full path to the file you want to download (e.g., "/Documents/report.pdf"). + */ + longDesc: () => LocalizedString + } + } + } + get_file_link: { groups: { /** - * Lists + * Files */ '0': () => LocalizedString } - } - add_members_from_source_list: { /** - * Add Records from another list + * Get Temporary Link */ displayName: () => LocalizedString /** - * Copy all members from one list to another + * Get a temporary download link for a file */ shortDesc: () => LocalizedString /** - * Adds all members from a source HubSpot list to a target list, effectively copying the membership. + * Get a temporary direct link to download a file. The link is valid for 4 hours and can be used to stream content directly. */ longDesc: () => LocalizedString + options: { + path: { + /** + * File Path + */ + displayName: () => LocalizedString + /** + * Path to the file + */ + shortDesc: () => LocalizedString + /** + * The full path to the file for which you want to generate a temporary link. + */ + longDesc: () => LocalizedString + } + } + } + delete_file: { groups: { /** - * Lists + * Files */ '0': () => LocalizedString } - } - remove_members_from_list: { /** - * Remove List Records + * Delete File */ displayName: () => LocalizedString /** - * Remove records from a HubSpot list + * Delete a file from Dropbox */ shortDesc: () => LocalizedString /** - * Removes specified records from an existing HubSpot list membership. + * Permanently delete a file from your Dropbox. This action cannot be undone through the API. */ longDesc: () => LocalizedString + options: { + path: { + /** + * File Path + */ + displayName: () => LocalizedString + /** + * Path to the file to delete + */ + shortDesc: () => LocalizedString + /** + * The full path to the file you want to delete. + */ + longDesc: () => LocalizedString + } + } + } + copy_file: { groups: { /** - * Lists + * Files */ '0': () => LocalizedString } - } - get_list_records: { /** - * Get List Records + * Copy File */ displayName: () => LocalizedString /** - * Retrieve records from a HubSpot list with pagination and property filtering. + * Copy a file to a new location */ shortDesc: () => LocalizedString /** - * Fetches records from a specified HubSpot list, including support for pagination using before/after cursors and filtering by specific properties. Returns the actual record data along with pagination metadata. + * Copy a file from one location to another within your Dropbox. The original file remains unchanged. */ longDesc: () => LocalizedString - groups: { - /** - * Lists - */ - '0': () => LocalizedString - } options: { - listId: { - /** - * List ID - */ - displayName: () => LocalizedString - /** - * The HubSpot list to retrieve records from - */ - shortDesc: () => LocalizedString - /** - * The unique identifier of the HubSpot list to fetch records from. - */ - longDesc: () => LocalizedString - } - after: { + fromPath: { /** - * After + * Source Path */ displayName: () => LocalizedString /** - * Pagination cursor for next page + * Path to the file to copy */ shortDesc: () => LocalizedString /** - * Cursor value to retrieve records after this point. Used for forward pagination. + * The full path to the source file. */ longDesc: () => LocalizedString } - before: { + toPath: { /** - * Before + * Destination Path */ displayName: () => LocalizedString /** - * Pagination cursor for previous page + * Path for the copied file */ shortDesc: () => LocalizedString /** - * Cursor value to retrieve records before this point. Used for backward pagination. + * The full path where the file should be copied to. */ longDesc: () => LocalizedString } - limit: { + autorename: { /** - * Limit + * Auto Rename */ displayName: () => LocalizedString /** - * Maximum number of records to return + * Automatically rename if destination exists */ shortDesc: () => LocalizedString /** - * The maximum number of records to return in a single request. Default is 100. + * If enabled and a file exists at the destination, generate a new name. */ longDesc: () => LocalizedString } - properties: { + allowOwnershipTransfer: { /** - * Properties + * Allow Ownership Transfer */ displayName: () => LocalizedString /** - * List of properties to include + * Allow ownership transfer for shared content */ shortDesc: () => LocalizedString /** - * Specific properties to include in the response for each record. If not specified, default properties will be returned. + * If enabled, allows the copy operation to transfer ownership of the content if needed. */ longDesc: () => LocalizedString } } } - } - triggers: { - hubspot_company_created_or_updated_trigger: { - event_info: { + move_file: { + groups: { /** - * Company Information + * Files */ - desc: () => LocalizedString + '0': () => LocalizedString } /** - * Company Created or Updated + * Move File */ displayName: () => LocalizedString /** - * Triggers when a company is added or updated in HubSpot. + * Move a file to a new location */ shortDesc: () => LocalizedString /** - * This trigger activates whenever a company record is created or modified in HubSpot, enabling you to automate workflows based on company data changes. + * Move a file from one location to another within your Dropbox. */ longDesc: () => LocalizedString options: { - activationCriteria: { + fromPath: { /** - * Activation Criteria + * Source Path */ displayName: () => LocalizedString /** - * Criteria for trigger to activate (created or updated) + * Path to the file to move */ shortDesc: () => LocalizedString /** - * Select the criteria for the trigger to activate. - - - Created: Triggers when a new object is created - - Updated: Triggers when an existing object is updated + * The full path to the source file. */ longDesc: () => LocalizedString } - additionalProperties: { + toPath: { /** - * Additional Properties + * Destination Path */ displayName: () => LocalizedString /** - * Additional properties to add to returned data + * Path for the moved file */ shortDesc: () => LocalizedString /** - * Select additional properties to add to the returned object data + * The full path where the file should be moved to. */ longDesc: () => LocalizedString } - } - } - hubspot_contact_created_or_updated_trigger: { - event_info: { - /** - * Contact Information - */ - desc: () => LocalizedString - } - /** - * Contact Created or Updated - */ - displayName: () => LocalizedString - /** - * Triggers when a contact is added or updated in HubSpot. - */ - shortDesc: () => LocalizedString - /** - * Activate workflows whenever a new contact is created or an existing contact is updated within HubSpot. Ideal for managing customer information efficiently. - */ - longDesc: () => LocalizedString - options: { - activationCriteria: { + autorename: { /** - * Activation Criteria + * Auto Rename */ displayName: () => LocalizedString /** - * Criteria for trigger to activate (created or updated) + * Automatically rename if destination exists */ shortDesc: () => LocalizedString /** - * Select the criteria for the trigger to activate. - - - Created: Triggers when a new object is created - - Updated: Triggers when an existing object is updated + * If enabled and a file exists at the destination, generate a new name. */ longDesc: () => LocalizedString } - additionalProperties: { + allowOwnershipTransfer: { /** - * Additional Properties + * Allow Ownership Transfer */ displayName: () => LocalizedString /** - * Additional properties to add to returned data + * Allow ownership transfer for shared content */ shortDesc: () => LocalizedString /** - * Select additional properties to add to the returned object data + * If enabled, allows the move operation to transfer ownership of the content if needed. */ longDesc: () => LocalizedString } } } - hubspot_custom_object_created_or_updated_trigger: { - event_info: { + create_folder: { + groups: { /** - * Custom Object Information + * Folders */ - desc: () => LocalizedString + '0': () => LocalizedString } /** - * Custom Object Created or Updated + * Create Folder */ displayName: () => LocalizedString /** - * Triggers when a custom object is added or updated in HubSpot. + * Create a new folder in Dropbox */ shortDesc: () => LocalizedString /** - * Use this trigger to capture changes to custom objects in HubSpot, ensuring that updates to custom data structures are processed immediately for automation or integration. + * Create a new folder at the specified path in your Dropbox. */ longDesc: () => LocalizedString options: { - activationCriteria: { + path: { /** - * Activation Criteria + * Folder Path */ displayName: () => LocalizedString /** - * Criteria for trigger to activate (created or updated) + * Full path for the new folder */ shortDesc: () => LocalizedString /** - * Select the criteria for the trigger to activate. - - - Created: Triggers when a new object is created - - Updated: Triggers when an existing object is updated + * The full path where the folder should be created (e.g., "/Documents/Projects"). */ longDesc: () => LocalizedString } - additionalProperties: { + autorename: { /** - * Additional Properties + * Auto Rename */ displayName: () => LocalizedString /** - * Additional properties to add to returned data + * Automatically rename if folder exists */ shortDesc: () => LocalizedString /** - * Select additional properties to add to the returned object data + * If enabled and a folder with the same name exists, generate a new name. */ longDesc: () => LocalizedString } - object: { + } + } + delete_folder: { + groups: { + /** + * Folders + */ + '0': () => LocalizedString + } + /** + * Delete Folder + */ + displayName: () => LocalizedString + /** + * Delete a folder from Dropbox + */ + shortDesc: () => LocalizedString + /** + * Permanently delete a folder and all its contents from your Dropbox. This action cannot be undone through the API. + */ + longDesc: () => LocalizedString + options: { + path: { /** - * Object + * Folder Path */ displayName: () => LocalizedString /** - * The custom object to monitor for changes. + * Path to the folder to delete */ shortDesc: () => LocalizedString /** - * Select the custom object you want to monitor for new or updated records. + * The full path to the folder you want to delete. */ longDesc: () => LocalizedString } } } - hubspot_deal_created_or_updated_trigger: { - event_info: { + copy_folder: { + groups: { /** - * Deal Information + * Folders */ - desc: () => LocalizedString + '0': () => LocalizedString } /** - * Deal Created or Updated + * Copy Folder */ displayName: () => LocalizedString /** - * Triggers when a deal is created or updated in HubSpot. + * Copy a folder to a new location */ shortDesc: () => LocalizedString /** - * This trigger fires when a deal is created or modified in HubSpot, allowing you to track sales opportunities and integrate with your sales pipeline automation workflows. + * Copy a folder and all its contents from one location to another within your Dropbox. */ longDesc: () => LocalizedString options: { - activationCriteria: { + fromPath: { /** - * Activation Criteria + * Source Path */ displayName: () => LocalizedString /** - * Criteria for trigger to activate (created or updated) + * Path to the folder to copy */ shortDesc: () => LocalizedString /** - * Select the criteria for the trigger to activate. - - - Created: Triggers when a new object is created - - Updated: Triggers when an existing object is updated + * The full path to the source folder. */ longDesc: () => LocalizedString } - additionalProperties: { + toPath: { /** - * Additional Properties + * Destination Path */ displayName: () => LocalizedString /** - * Additional properties to add to returned data + * Path for the copied folder */ shortDesc: () => LocalizedString /** - * Select additional properties to add to the returned object data + * The full path where the folder should be copied to. + */ + longDesc: () => LocalizedString + } + autorename: { + /** + * Auto Rename + */ + displayName: () => LocalizedString + /** + * Automatically rename if destination exists + */ + shortDesc: () => LocalizedString + /** + * If enabled and a folder exists at the destination, generate a new name. + */ + longDesc: () => LocalizedString + } + allowOwnershipTransfer: { + /** + * Allow Ownership Transfer + */ + displayName: () => LocalizedString + /** + * Allow ownership transfer for shared content + */ + shortDesc: () => LocalizedString + /** + * If enabled, allows the copy operation to transfer ownership of the content if needed. */ longDesc: () => LocalizedString } } } - hubspot_lead_created_or_updated_trigger: { - event_info: { + move_folder: { + groups: { /** - * Lead Information + * Folders */ - desc: () => LocalizedString + '0': () => LocalizedString } /** - * Lead Created or Updated + * Move Folder */ displayName: () => LocalizedString /** - * Triggers when a lead is added or updated in HubSpot. + * Move a folder to a new location */ shortDesc: () => LocalizedString /** - * Monitor new leads and updates to existing leads in HubSpot with this trigger, enabling efficient lead management and follow-up processes. + * Move a folder and all its contents from one location to another within your Dropbox. */ longDesc: () => LocalizedString options: { - activationCriteria: { + fromPath: { /** - * Activation Criteria + * Source Path */ displayName: () => LocalizedString /** - * Criteria for trigger to activate (created or updated) + * Path to the folder to move */ shortDesc: () => LocalizedString /** - * Select the criteria for the trigger to activate. - - - Created: Triggers when a new object is created - - Updated: Triggers when an existing object is updated + * The full path to the source folder. */ longDesc: () => LocalizedString } - additionalProperties: { + toPath: { /** - * Additional Properties + * Destination Path */ displayName: () => LocalizedString /** - * Additional properties to add to returned data + * Path for the moved folder */ shortDesc: () => LocalizedString /** - * Select additional properties to add to the returned object data + * The full path where the folder should be moved to. + */ + longDesc: () => LocalizedString + } + autorename: { + /** + * Auto Rename + */ + displayName: () => LocalizedString + /** + * Automatically rename if destination exists + */ + shortDesc: () => LocalizedString + /** + * If enabled and a folder exists at the destination, generate a new name. + */ + longDesc: () => LocalizedString + } + allowOwnershipTransfer: { + /** + * Allow Ownership Transfer + */ + displayName: () => LocalizedString + /** + * Allow ownership transfer for shared content + */ + shortDesc: () => LocalizedString + /** + * If enabled, allows the move operation to transfer ownership of the content if needed. */ longDesc: () => LocalizedString } } } - hubspot_product_created_or_updated_trigger: { - event_info: { + list_folder: { + groups: { /** - * Product Information + * Folders */ - desc: () => LocalizedString + '0': () => LocalizedString } /** - * Product Created or Updated + * List Folder Contents */ displayName: () => LocalizedString /** - * Triggers when a product is added or updated in HubSpot. + * List files and folders in a directory */ shortDesc: () => LocalizedString /** - * This trigger alerts you to any new or updated products within your HubSpot account, ensuring that your product data remains synchronized with your workflows and external systems. + * Retrieve a list of all files and subfolders within a specified folder in your Dropbox. */ longDesc: () => LocalizedString options: { - activationCriteria: { + path: { /** - * Activation Criteria + * Folder Path */ displayName: () => LocalizedString /** - * Criteria for trigger to activate (created or updated) + * Path to the folder to list */ shortDesc: () => LocalizedString /** - * Select the criteria for the trigger to activate. - - - Created: Triggers when a new object is created - - Updated: Triggers when an existing object is updated + * The full path to the folder whose contents you want to list. Use empty string for root. */ longDesc: () => LocalizedString } - additionalProperties: { + recursive: { /** - * Additional Properties + * Recursive */ displayName: () => LocalizedString /** - * Additional properties to add to returned data + * Include contents of subfolders */ shortDesc: () => LocalizedString /** - * Select additional properties to add to the returned object data + * If enabled, also include files and folders from all subfolders recursively. + */ + longDesc: () => LocalizedString + } + limit: { + /** + * Limit + */ + displayName: () => LocalizedString + /** + * Maximum number of items to return + */ + shortDesc: () => LocalizedString + /** + * The maximum number of items to return. Default is 2000. */ longDesc: () => LocalizedString } } } - hubspot_ticket_created_or_updated_trigger: { - event_info: { + search: { + groups: { /** - * Ticket Information + * Search */ - desc: () => LocalizedString + '0': () => LocalizedString } /** - * Ticket Created or Updated + * Search */ displayName: () => LocalizedString /** - * Triggers when a support ticket is created or updated in HubSpot. + * Search for files and folders in Dropbox */ shortDesc: () => LocalizedString /** - * Automatically trigger workflows when a support ticket is created or updated in HubSpot, ideal for managing customer support operations and streamlining issue resolution. + * Search for files and folders in your Dropbox by name or content. Returns matching items with their metadata. */ longDesc: () => LocalizedString options: { - activationCriteria: { + query: { /** - * Activation Criteria + * Search Query */ displayName: () => LocalizedString /** - * Criteria for trigger to activate (created or updated) + * Text to search for */ shortDesc: () => LocalizedString /** - * Select the criteria for the trigger to activate. - - - Created: Triggers when a new object is created - - Updated: Triggers when an existing object is updated + * The search query. Searches file and folder names. */ longDesc: () => LocalizedString } - additionalProperties: { + path: { /** - * Additional Properties + * Path */ displayName: () => LocalizedString /** - * Additional properties to add to returned data + * Folder to search within */ shortDesc: () => LocalizedString /** - * Select additional properties to add to the returned object data + * Optionally limit the search to a specific folder path. Leave empty to search all of Dropbox. + */ + longDesc: () => LocalizedString + } + maxResults: { + /** + * Max Results + */ + displayName: () => LocalizedString + /** + * Maximum number of results + */ + shortDesc: () => LocalizedString + /** + * The maximum number of search results to return. Default is 100. + */ + longDesc: () => LocalizedString + } + orderBy: { + /** + * Order By + */ + displayName: () => LocalizedString + /** + * Sort order for results + */ + shortDesc: () => LocalizedString + /** + * How to order the search results: by relevance or by modified time. + */ + longDesc: () => LocalizedString + } + fileStatus: { + /** + * File Status + */ + displayName: () => LocalizedString + /** + * Filter by file status + */ + shortDesc: () => LocalizedString + /** + * Filter search results by file status: active (existing files) or deleted (removed files). + */ + longDesc: () => LocalizedString + } + filenameOnly: { + /** + * Filename Only + */ + displayName: () => LocalizedString + /** + * Search only in file names + */ + shortDesc: () => LocalizedString + /** + * If enabled, search will only match file names, not file contents. + */ + longDesc: () => LocalizedString + } + fileExtensions: { + /** + * File Extensions + */ + displayName: () => LocalizedString + /** + * Filter by file extensions + */ + shortDesc: () => LocalizedString + /** + * Comma-separated list of file extensions to filter by (e.g., "pdf,doc,txt"). + */ + longDesc: () => LocalizedString + } + fileCategories: { + /** + * File Categories + */ + displayName: () => LocalizedString + /** + * Filter by file categories + */ + shortDesc: () => LocalizedString + /** + * Comma-separated list of file categories to filter by (e.g., "image,document,video"). */ longDesc: () => LocalizedString } } } - hubspot_user_created_or_updated_trigger: { - event_info: { + create_shared_link: { + groups: { /** - * User Information + * Sharing */ - desc: () => LocalizedString + '0': () => LocalizedString } /** - * User Created or Updated + * Create Shared Link */ displayName: () => LocalizedString /** - * Triggers when a user is added or updated in HubSpot. + * Create a shared link for a file */ shortDesc: () => LocalizedString /** - * This trigger fires upon the creation or update of a user within HubSpot, helping you keep track of user accounts and maintain updated access control for your team. + * Create a shared link for a file in your Dropbox that can be shared with others. You can configure visibility and expiration settings. */ longDesc: () => LocalizedString options: { - activationCriteria: { + path: { /** - * Activation Criteria + * File Path */ displayName: () => LocalizedString /** - * Criteria for trigger to activate (created or updated) + * Path to the file to share */ shortDesc: () => LocalizedString /** - * Select the criteria for the trigger to activate. - - - Created: Triggers when a new object is created - - Updated: Triggers when an existing object is updated + * The full path to the file for which you want to create a shared link. */ longDesc: () => LocalizedString } - additionalProperties: { + requested_visibility: { /** - * Additional Properties + * Visibility */ displayName: () => LocalizedString /** - * Additional properties to add to returned data + * Who can access this link */ shortDesc: () => LocalizedString /** - * Select additional properties to add to the returned object data + * The visibility level for the shared link: public (anyone), team_only (team members), or password (requires password). */ longDesc: () => LocalizedString } - } - } - } - expressions: { - '&&': { - /** - * and (&&) - */ - displayName: () => LocalizedString - /** - * Returns True if all arguments are True - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if all arguments are `True` with logic short-circuiting - */ - longDesc: () => LocalizedString - args: { - '0': { + expires: { /** - * Condition + * Expiration Date */ displayName: () => LocalizedString /** - * Boolean condition to evaluate + * When the link expires */ shortDesc: () => LocalizedString /** - * A boolean expression or condition that evaluates to True or False + * Optional expiration date for the link in ISO 8601 format (e.g., "2024-12-31T23:59:59Z"). */ longDesc: () => LocalizedString } } } - '||': { + list_shared_links: { + groups: { + /** + * Sharing + */ + '0': () => LocalizedString + } /** - * or (||) + * List Shared Links */ displayName: () => LocalizedString /** - * Returns True if any argument is True + * List shared links for a file or all files */ shortDesc: () => LocalizedString /** - * Returns `True` if any argument is `True` with logic short-circuiting + * Retrieve a list of shared links. You can list all shared links or filter to a specific file path. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + path: { /** - * Condition + * File Path */ displayName: () => LocalizedString /** - * Boolean condition to evaluate + * Filter by file path */ shortDesc: () => LocalizedString /** - * A boolean expression or condition that evaluates to True or False + * Optionally specify a file path to list only shared links for that file. Leave empty to list all shared links. + */ + longDesc: () => LocalizedString + } + direct_only: { + /** + * Direct Only + */ + displayName: () => LocalizedString + /** + * Return only direct links + */ + shortDesc: () => LocalizedString + /** + * If enabled, only return shared links that directly reference the file, not links to parent folders. */ longDesc: () => LocalizedString } } } - '==': { + revoke_shared_link: { + groups: { + /** + * Sharing + */ + '0': () => LocalizedString + } /** - * equals (=) + * Revoke Shared Link */ displayName: () => LocalizedString /** - * Equality comparison + * Revoke a shared link */ shortDesc: () => LocalizedString /** - * Returns `True` if the field value equals the specified value + * Revoke a shared link so it can no longer be used to access the file. This action cannot be undone. */ longDesc: () => LocalizedString - args: { - '0': { - /** - * Field - */ - displayName: () => LocalizedString - /** - * Field to compare - */ - shortDesc: () => LocalizedString - /** - * The field whose value will be compared - */ - longDesc: () => LocalizedString - } - '1': { + options: { + url: { /** - * Value + * Shared Link URL */ displayName: () => LocalizedString /** - * Value to compare against + * The URL of the shared link to revoke */ shortDesc: () => LocalizedString /** - * The value to compare the field against + * The full URL of the shared link you want to revoke. */ longDesc: () => LocalizedString } } } - '!=': { + list_file_revisions: { + groups: { + /** + * Revisions + */ + '0': () => LocalizedString + } /** - * not equals (!=) + * List File Revisions */ displayName: () => LocalizedString /** - * Inequality comparison + * List revision history for a file */ shortDesc: () => LocalizedString /** - * Returns `True` if the field value does not equal the specified value + * Retrieve a list of all revisions (versions) of a file. This allows you to see the history of changes to the file. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + path: { /** - * Field + * File Path */ displayName: () => LocalizedString /** - * Field to compare + * Path to the file */ shortDesc: () => LocalizedString /** - * The field whose value will be compared + * The full path to the file whose revisions you want to list. */ longDesc: () => LocalizedString } - '1': { + mode: { /** - * Value + * Mode */ displayName: () => LocalizedString /** - * Value to compare against + * How to identify the file */ shortDesc: () => LocalizedString /** - * The value to compare the field against + * How the path parameter identifies the file: "path" (by file path) or "id" (by file ID). + */ + longDesc: () => LocalizedString + } + limit: { + /** + * Limit + */ + displayName: () => LocalizedString + /** + * Maximum number of revisions + */ + shortDesc: () => LocalizedString + /** + * The maximum number of revisions to return. Default is 10. */ longDesc: () => LocalizedString } } } - '>': { + restore_file_revision: { + groups: { + /** + * Revisions + */ + '0': () => LocalizedString + } /** - * greater than (>) + * Restore File Revision */ displayName: () => LocalizedString /** - * Greater than comparison + * Restore a file to a previous revision */ shortDesc: () => LocalizedString /** - * Returns `True` if the field value is greater than the specified value + * Restore a file to a previous revision (version). This creates a new revision with the content from the specified revision. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + path: { /** - * Field + * File Path */ displayName: () => LocalizedString /** - * Field to compare + * Path to the file */ shortDesc: () => LocalizedString /** - * The field whose value will be compared + * The full path to the file you want to restore. */ longDesc: () => LocalizedString } - '1': { + rev: { /** - * Value + * Revision */ displayName: () => LocalizedString /** - * Value to compare against + * Revision ID to restore */ shortDesc: () => LocalizedString /** - * The value to compare the field against + * The revision identifier (rev) of the version you want to restore. Get this from list_file_revisions. */ longDesc: () => LocalizedString } } } - '>=': { + } + triggers: { + new_file: { + groups: { + /** + * Files + */ + '0': () => LocalizedString + } /** - * greater than or equal (>=) + * New File */ displayName: () => LocalizedString /** - * Greater than or equal comparison + * Triggers when a new file is added to a folder */ shortDesc: () => LocalizedString /** - * Returns `True` if the field value is greater than or equal to the specified value + * This trigger fires whenever a new file is created in the specified folder. Monitor for new uploads, file creations, or files moved into the folder. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + folder: { /** - * Field + * Folder Path */ displayName: () => LocalizedString /** - * Field to compare + * The folder to monitor for new files */ shortDesc: () => LocalizedString /** - * The field whose value will be compared + * Specify the path to the folder you want to monitor for new files. Use empty string for root folder. */ longDesc: () => LocalizedString } - '1': { + } + } + new_folder: { + groups: { + /** + * Folders + */ + '0': () => LocalizedString + } + /** + * New Folder + */ + displayName: () => LocalizedString + /** + * Triggers when a new folder is created + */ + shortDesc: () => LocalizedString + /** + * This trigger fires whenever a new folder is created within the specified parent folder. + */ + longDesc: () => LocalizedString + options: { + parentFolder: { /** - * Value + * Parent Folder */ displayName: () => LocalizedString /** - * Value to compare against + * The parent folder to monitor */ shortDesc: () => LocalizedString /** - * The value to compare the field against + * Specify the path to the parent folder you want to monitor for new subfolders. */ longDesc: () => LocalizedString } } } - '<': { + file_modified: { + groups: { + /** + * Files + */ + '0': () => LocalizedString + } /** - * less than (<) + * File Modified */ displayName: () => LocalizedString /** - * Less than comparison + * Triggers when a file is modified */ shortDesc: () => LocalizedString /** - * Returns `True` if the field value is less than the specified value + * This trigger fires whenever a file is modified in the specified folder. This includes content changes, not just metadata updates. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + folder: { /** - * Field + * Folder Path */ displayName: () => LocalizedString /** - * Field to compare + * The folder to monitor for modified files */ shortDesc: () => LocalizedString /** - * The field whose value will be compared + * Specify the path to the folder you want to monitor for file modifications. */ longDesc: () => LocalizedString } - '1': { + } + } + } + } + NetSuite: { + /** + * NetSuite + */ + displayName: () => LocalizedString + groups: { + /** + * Accounting & ERP + */ + '0': () => LocalizedString + } + /** + * A comprehensive suite of cloud-based business management solutions. + */ + shortDesc: () => LocalizedString + /** + * NetSuite offers a unified platform for ERP, CRM, e-commerce, and more, enabling businesses to manage all key operations in a single system. + */ + longDesc: () => LocalizedString + triggers: { + new_record: { + /** + * New Record + */ + displayName: () => LocalizedString + /** + * Triggers when a new record is created + */ + shortDesc: () => LocalizedString + /** + * Triggers when a new record is created + */ + longDesc: () => LocalizedString + options: { + recordType: { /** - * Value + * Record Type */ displayName: () => LocalizedString /** - * Value to compare against + * The type of record to monitor */ shortDesc: () => LocalizedString /** - * The value to compare the field against + * The type of record to monitor */ longDesc: () => LocalizedString } } } - '<=': { + } + actions: { + list_records: { + groups: { + /** + * Data & Search + */ + '0': () => LocalizedString + } /** - * less than or equal (<=) + * List Records */ displayName: () => LocalizedString /** - * Less than or equal comparison + * Retrieve NetSuite records based on search criteria */ shortDesc: () => LocalizedString /** - * Returns `True` if the field value is less than or equal to the specified value + * Query NetSuite records by type with optional filtering, field selection, and pagination */ longDesc: () => LocalizedString - args: { - '0': { + options: { + recordType: { /** - * Field + * Record Type */ displayName: () => LocalizedString /** - * Field to compare + * Type of NetSuite record to retrieve */ shortDesc: () => LocalizedString /** - * The field whose value will be compared + * Specifies which NetSuite record type to query (customer, invoice, transaction, etc.) */ longDesc: () => LocalizedString } - '1': { + searchMode: { /** - * Value + * Search Mode */ displayName: () => LocalizedString /** - * Value to compare against + * How multiple search criteria are combined */ shortDesc: () => LocalizedString /** - * The value to compare the field against + * Determines if records must match all criteria (All) or any criteria (Any) when multiple query fields are provided */ longDesc: () => LocalizedString } - } - } - 'in': { - /** - * in - */ - displayName: () => LocalizedString - /** - * In list - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field value is in the provided list - */ - longDesc: () => LocalizedString - args: { - '0': { + fields: { /** - * Field + * Fields */ displayName: () => LocalizedString /** - * Field to check + * Specific record fields to return */ shortDesc: () => LocalizedString /** - * The field whose value will be checked + * List of field names to include in results (returns all fields if omitted) */ longDesc: () => LocalizedString } - '1': { + query: { /** - * Values + * Query Criteria */ displayName: () => LocalizedString /** - * List of values + * Search conditions for filtering records */ shortDesc: () => LocalizedString /** - * The list of values to check the field against + * Key-value pairs defining search criteria */ longDesc: () => LocalizedString + type: { + element_type: { + fields: { + key: { + /** + * Field Name + */ + displayName: () => LocalizedString + /** + * Name of the field to filter by + */ + shortDesc: () => LocalizedString + /** + * The name of the field to filter by + */ + longDesc: () => LocalizedString + } + value: { + /** + * Field Value + */ + displayName: () => LocalizedString + /** + * Value to match for the field + */ + shortDesc: () => LocalizedString + /** + * The value to match for the field + */ + longDesc: () => LocalizedString + } + } + } + } } - } - } - not_in: { - /** - * not in - */ - displayName: () => LocalizedString - /** - * Not in list - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field value is not in the provided list - */ - longDesc: () => LocalizedString - args: { - '0': { + limit: { /** - * Field + * Limit */ displayName: () => LocalizedString /** - * Field to check + * Maximum number of records to return */ shortDesc: () => LocalizedString /** - * The field whose value will be checked + * Caps the number of results returned in a single query */ longDesc: () => LocalizedString } - '1': { + offset: { /** - * Values + * Offset */ displayName: () => LocalizedString /** - * List of values + * Number of records to skip */ shortDesc: () => LocalizedString /** - * The list of values the field should not match + * Used for pagination to skip a specified number of records in the result set */ longDesc: () => LocalizedString } } } - between: { + suite_ql: { + groups: { + /** + * Data & Search + */ + '0': () => LocalizedString + } /** - * between + * SuiteQL */ displayName: () => LocalizedString /** - * Between two values + * Run a SuiteQL query */ shortDesc: () => LocalizedString /** - * Returns `True` if the field value is between the two specified values + * Run a SuiteQL query */ longDesc: () => LocalizedString - args: { - '0': { + options: { + query: { /** - * Field + * Query */ displayName: () => LocalizedString /** - * Field to check + * The SuiteQL query to run */ shortDesc: () => LocalizedString /** - * The field whose value will be checked + * The SuiteQL query to run */ longDesc: () => LocalizedString } - '1': { + limit: { /** - * Lower bound + * Limit */ displayName: () => LocalizedString /** - * Minimum value + * The maximum number of records to return */ shortDesc: () => LocalizedString /** - * The lower bound of the range (inclusive) + * The maximum number of records to return */ longDesc: () => LocalizedString } - '2': { + offset: { /** - * Upper bound + * Offset */ displayName: () => LocalizedString /** - * Maximum value + * The number of records to skip */ shortDesc: () => LocalizedString /** - * The upper bound of the range (inclusive) + * The number of records to skip */ longDesc: () => LocalizedString } + response_type: { + fields: { + links: { + /** + * Links + */ + display_name: () => LocalizedString + /** + * Links + */ + short_desc: () => LocalizedString + /** + * Links + */ + desc: () => LocalizedString + } + count: { + /** + * Count + */ + display_name: () => LocalizedString + /** + * The number of results + */ + short_desc: () => LocalizedString + /** + * The number of results + */ + desc: () => LocalizedString + } + hasMore: { + /** + * Has More + */ + display_name: () => LocalizedString + /** + * Whether there are more results + */ + short_desc: () => LocalizedString + /** + * Whether there are more results + */ + desc: () => LocalizedString + } + items: { + /** + * Items + */ + display_name: () => LocalizedString + /** + * The items + */ + short_desc: () => LocalizedString + /** + * The items + */ + desc: () => LocalizedString + } + } + } } } - has_property: { + account_get: { + groups: { + /** + * Accounting + */ + '0': () => LocalizedString + } /** - * has property + * Get List of Accounts */ displayName: () => LocalizedString /** - * Field has a value + * Retrieve a list of accounts. */ shortDesc: () => LocalizedString /** - * Returns `True` if the field has any value set (is not null or empty) + * Fetches a list of accounts based on specified filters. */ longDesc: () => LocalizedString - args: { - '0': { - /** - * Field - */ - displayName: () => LocalizedString - /** - * Field to check - */ - shortDesc: () => LocalizedString - /** - * The field to check for a value - */ - longDesc: () => LocalizedString - } + } + account_post: { + groups: { + /** + * Accounting + */ + '0': () => LocalizedString } + /** + * Create Account + */ + displayName: () => LocalizedString + /** + * Creates a new account. + */ + shortDesc: () => LocalizedString + /** + * Allows the user to create a new account record in NetSuite. + */ + longDesc: () => LocalizedString } - not_has_property: { + account_id_get: { + groups: { + /** + * Accounting + */ + '0': () => LocalizedString + } /** - * does not have property + * Get Account */ displayName: () => LocalizedString /** - * Field has no value + * Retrieve details of a specific account. */ shortDesc: () => LocalizedString /** - * Returns `True` if the field has no value set (is null or empty) + * Fetches detailed information of a single account by its ID. */ longDesc: () => LocalizedString - args: { - '0': { - /** - * Field - */ - displayName: () => LocalizedString - /** - * Field to check - */ - shortDesc: () => LocalizedString - /** - * The field to check for emptiness - */ - longDesc: () => LocalizedString - } + } + account_id_patch: { + groups: { + /** + * Accounting + */ + '0': () => LocalizedString } + /** + * Update Account + */ + displayName: () => LocalizedString + /** + * Updates an existing account. + */ + shortDesc: () => LocalizedString + /** + * Allows the user to update details of a specific account by its ID. + */ + longDesc: () => LocalizedString } - contains_token: { + account_id_delete: { + groups: { + /** + * Accounting + */ + '0': () => LocalizedString + } /** - * contains token + * Delete Account */ displayName: () => LocalizedString /** - * Contains token or substring + * Deletes a specific account. */ shortDesc: () => LocalizedString /** - * Returns `True` if the field contains the specified token or substring + * Removes an account record from NetSuite based on its ID. */ longDesc: () => LocalizedString - args: { - '0': { - /** - * Field - */ - displayName: () => LocalizedString - /** - * Text field to search - */ - shortDesc: () => LocalizedString - /** - * The text field to search within - */ - longDesc: () => LocalizedString - } - '1': { - /** - * Token - */ - displayName: () => LocalizedString - /** - * Token to find - */ - shortDesc: () => LocalizedString - /** - * The token or substring to search for - */ - longDesc: () => LocalizedString - } + } + customer_get: { + groups: { + /** + * CRM + */ + '0': () => LocalizedString } + /** + * Get List of Customers + */ + displayName: () => LocalizedString + /** + * Retrieve a list of customers. + */ + shortDesc: () => LocalizedString + /** + * Fetches a list of customers based on specified filters. + */ + longDesc: () => LocalizedString } - not_contains_token: { + customer_post: { + groups: { + /** + * CRM + */ + '0': () => LocalizedString + } /** - * does not contain token + * Create Customer */ displayName: () => LocalizedString /** - * Does not contain token or substring + * Creates a new customer. */ shortDesc: () => LocalizedString /** - * Returns `True` if the field does not contain the specified token or substring + * Allows the user to create a new customer record in NetSuite. */ longDesc: () => LocalizedString - args: { - '0': { - /** - * Field - */ - displayName: () => LocalizedString - /** - * Text field to search - */ - shortDesc: () => LocalizedString - /** - * The text field to search within - */ - longDesc: () => LocalizedString - } - '1': { + } + customer_id_get: { + groups: { + /** + * CRM + */ + '0': () => LocalizedString + } + /** + * Get Customer + */ + displayName: () => LocalizedString + /** + * Retrieve details of a specific customer. + */ + shortDesc: () => LocalizedString + /** + * Fetches detailed information of a single customer by its ID. + */ + longDesc: () => LocalizedString + } + customer_id_patch: { + groups: { + /** + * CRM + */ + '0': () => LocalizedString + } + /** + * Update Customer + */ + displayName: () => LocalizedString + /** + * Updates an existing customer. + */ + shortDesc: () => LocalizedString + /** + * Allows the user to update details of a specific customer by its ID. + */ + longDesc: () => LocalizedString + } + customer_id_delete: { + groups: { + /** + * CRM + */ + '0': () => LocalizedString + } + /** + * Delete Customer + */ + displayName: () => LocalizedString + /** + * Deletes a specific customer. + */ + shortDesc: () => LocalizedString + /** + * Removes a customer record from NetSuite based on its ID. + */ + longDesc: () => LocalizedString + } + contact_get: { + groups: { + /** + * CRM + */ + '0': () => LocalizedString + } + /** + * Get List of Contacts + */ + displayName: () => LocalizedString + /** + * Retrieve a list of contacts. + */ + shortDesc: () => LocalizedString + /** + * Fetches a list of contacts based on specified filters. + */ + longDesc: () => LocalizedString + } + contact_post: { + groups: { + /** + * CRM + */ + '0': () => LocalizedString + } + /** + * Create Contact + */ + displayName: () => LocalizedString + /** + * Creates a new contact. + */ + shortDesc: () => LocalizedString + /** + * Allows the user to create a new contact record in NetSuite. + */ + longDesc: () => LocalizedString + } + contact_id_delete: { + groups: { + /** + * CRM + */ + '0': () => LocalizedString + } + /** + * Delete Contact + */ + displayName: () => LocalizedString + /** + * Deletes a specific contact. + */ + shortDesc: () => LocalizedString + /** + * Removes a contact record from NetSuite based on its ID. + */ + longDesc: () => LocalizedString + } + contact_id_get: { + groups: { + /** + * CRM + */ + '0': () => LocalizedString + } + /** + * Get Contact + */ + displayName: () => LocalizedString + /** + * Retrieve details of a specific contact. + */ + shortDesc: () => LocalizedString + /** + * Fetches detailed information of a single contact by its ID. + */ + longDesc: () => LocalizedString + } + contact_id_patch: { + groups: { + /** + * CRM + */ + '0': () => LocalizedString + } + /** + * Update Contact + */ + displayName: () => LocalizedString + /** + * Updates an existing contact. + */ + shortDesc: () => LocalizedString + /** + * Allows the user to update details of a specific contact by its ID. + */ + longDesc: () => LocalizedString + } + opportunity_get: { + groups: { + /** + * CRM + */ + '0': () => LocalizedString + } + /** + * Get List of Opportunities + */ + displayName: () => LocalizedString + /** + * Retrieve a list of opportunities. + */ + shortDesc: () => LocalizedString + /** + * Fetches a list of opportunities based on specified filters. + */ + longDesc: () => LocalizedString + } + opportunity_id_delete: { + groups: { + /** + * CRM + */ + '0': () => LocalizedString + } + /** + * Delete Opportunity + */ + displayName: () => LocalizedString + /** + * Deletes a specific opportunity. + */ + shortDesc: () => LocalizedString + /** + * Removes an opportunity record from NetSuite based on its ID. + */ + longDesc: () => LocalizedString + } + opportunity_id_get: { + groups: { + /** + * CRM + */ + '0': () => LocalizedString + } + /** + * Get Opportunity + */ + displayName: () => LocalizedString + /** + * Retrieve details of a specific opportunity. + */ + shortDesc: () => LocalizedString + /** + * Fetches detailed information of a single opportunity by its ID. + */ + longDesc: () => LocalizedString + } + opportunity_id_patch: { + groups: { + /** + * CRM + */ + '0': () => LocalizedString + } + /** + * Update Opportunity + */ + displayName: () => LocalizedString + /** + * Updates an existing opportunity. + */ + shortDesc: () => LocalizedString + /** + * Allows the user to update details of a specific opportunity by its ID. + */ + longDesc: () => LocalizedString + } + opportunity_post: { + groups: { + /** + * CRM + */ + '0': () => LocalizedString + } + /** + * Create Opportunity + */ + displayName: () => LocalizedString + /** + * Creates a new opportunity. + */ + shortDesc: () => LocalizedString + /** + * Allows the user to create a new opportunity record in NetSuite. + */ + longDesc: () => LocalizedString + } + invoice_get: { + groups: { + /** + * Sales & Billing + */ + '0': () => LocalizedString + } + /** + * Get List of Invoices + */ + displayName: () => LocalizedString + /** + * Retrieve a list of invoices. + */ + shortDesc: () => LocalizedString + /** + * Fetches a list of invoices based on specified filters. + */ + longDesc: () => LocalizedString + } + invoice_post: { + groups: { + /** + * Sales & Billing + */ + '0': () => LocalizedString + } + /** + * Create Invoice + */ + displayName: () => LocalizedString + /** + * Creates a new invoice. + */ + shortDesc: () => LocalizedString + /** + * Allows the user to create a new invoice record in NetSuite. + */ + longDesc: () => LocalizedString + options: { + entity: { /** - * Token + * Customer for the invoice */ displayName: () => LocalizedString /** - * Token to exclude + * The customer for the invoice */ shortDesc: () => LocalizedString /** - * The token or substring that should not be present + * The customer for the invoice */ longDesc: () => LocalizedString } } } - } - searchOptions: { - orderBy: { + invoice_id_get: { + groups: { + /** + * Sales & Billing + */ + '0': () => LocalizedString + } /** - * Order By + * Get Invoice */ displayName: () => LocalizedString /** - * Sort results by a specific field + * Retrieve details of a specific invoice. */ shortDesc: () => LocalizedString /** - * Define the field and direction to sort search results + * Fetches detailed information of a single invoice by its ID. */ longDesc: () => LocalizedString - type: { - fields: { - column: { - /** - * Column - */ - displayName: () => LocalizedString - /** - * The column to sort by - */ - shortDesc: () => LocalizedString - /** - * The name of the column to use for sorting results - */ - longDesc: () => LocalizedString - } - ascending: { - /** - * Ascending - */ - displayName: () => LocalizedString - /** - * Sort in ascending order - */ - shortDesc: () => LocalizedString - /** - * When enabled, results are sorted in ascending order (A-Z, 0-9) - */ - longDesc: () => LocalizedString - } - } + } + invoice_id_patch: { + groups: { + /** + * Sales & Billing + */ + '0': () => LocalizedString + } + /** + * Update Invoice + */ + displayName: () => LocalizedString + /** + * Updates an existing invoice. + */ + shortDesc: () => LocalizedString + /** + * Allows the user to update details of a specific invoice by its ID. + */ + longDesc: () => LocalizedString + } + invoice_id_delete: { + groups: { + /** + * Sales & Billing + */ + '0': () => LocalizedString + } + /** + * Delete Invoice + */ + displayName: () => LocalizedString + /** + * Deletes a specific invoice. + */ + shortDesc: () => LocalizedString + /** + * Removes an invoice record from NetSuite based on its ID. + */ + longDesc: () => LocalizedString + } + journalEntry_get: { + groups: { + /** + * Accounting + */ + '0': () => LocalizedString + } + /** + * Get List of Journal Entries + */ + displayName: () => LocalizedString + /** + * Retrieve a list of journal entries. + */ + shortDesc: () => LocalizedString + /** + * Fetches a list of journal entries based on specified filters. + */ + longDesc: () => LocalizedString + } + journalEntry_post: { + groups: { + /** + * Accounting + */ + '0': () => LocalizedString + } + /** + * Create Journal Entry + */ + displayName: () => LocalizedString + /** + * Creates a new journal entry. + */ + shortDesc: () => LocalizedString + /** + * Allows the user to create a new journal entry record in NetSuite. + */ + longDesc: () => LocalizedString + } + journalEntry_id_get: { + groups: { + /** + * Accounting + */ + '0': () => LocalizedString + } + /** + * Get Journal Entry + */ + displayName: () => LocalizedString + /** + * Retrieve details of a specific journal entry. + */ + shortDesc: () => LocalizedString + /** + * Fetches detailed information of a single journal entry by its ID. + */ + longDesc: () => LocalizedString + } + journal_entry_id_patch: { + groups: { + /** + * Accounting + */ + '0': () => LocalizedString } + /** + * Update Journal Entry + */ + displayName: () => LocalizedString + /** + * Updates an existing journal entry. + */ + shortDesc: () => LocalizedString + /** + * Allows the user to update details of a specific journal entry by its ID. + */ + longDesc: () => LocalizedString } - limit: { + journalEntry_id_delete: { + groups: { + /** + * Accounting + */ + '0': () => LocalizedString + } /** - * Limit + * Delete Journal Entry */ displayName: () => LocalizedString /** - * Maximum number of records to return + * Deletes a specific journal entry. */ shortDesc: () => LocalizedString /** - * The maximum number of records to return. If not specified, all matching records will be returned. + * Removes a journal entry record from NetSuite based on its ID. */ longDesc: () => LocalizedString } - } - upsertOptions: { - idProperty: { + purchaseOrder_get: { + groups: { + /** + * Procurement + */ + '0': () => LocalizedString + } /** - * ID Property + * Get List of Purchase Orders */ displayName: () => LocalizedString /** - * The unique identifier property for upsert operations + * Retrieve a list of purchase orders. */ shortDesc: () => LocalizedString /** - * The unique identifier property name used to determine if a record already exists for updating. If no matching record is found, a new record will be created. + * Fetches a list of purchase orders based on specified filters. */ longDesc: () => LocalizedString } - } - } - Dropbox: { - /** - * Dropbox - */ - displayName: () => LocalizedString - groups: { - /** - * Cloud Storage & File Management - */ - '0': () => LocalizedString - } - /** - * Connect with Dropbox to manage files, folders, and shared links in your cloud storage - */ - shortDesc: () => LocalizedString - /** - * Integrate with Dropbox to automate file management, sharing, and synchronization. Dropbox is a cloud-based file storage solution that allows users to store, share, and collaborate on files and folders. This integration enables you to create, copy, move, and delete files and folders, manage shared links, track file revisions, and monitor for new or modified files. - */ - longDesc: () => LocalizedString - actions: { - create_text_file: { + purchaseOrder_post: { groups: { /** - * Files + * Procurement */ '0': () => LocalizedString } /** - * Create Text File + * Create Purchase Order */ displayName: () => LocalizedString /** - * Create a new text file in Dropbox + * Creates a new purchase order. */ shortDesc: () => LocalizedString /** - * Create a new text file with the specified content at the given path in your Dropbox. If a file already exists at the path and autorename is enabled, a new name will be generated. + * Allows the user to create a new purchase order record in NetSuite. */ longDesc: () => LocalizedString options: { - path: { - /** - * File Path - */ - displayName: () => LocalizedString - /** - * Full path for the new file - */ - shortDesc: () => LocalizedString - /** - * The full path where the file should be created, including the filename (e.g., "/Documents/notes.txt"). - */ - longDesc: () => LocalizedString - } - content: { - /** - * Content - */ - displayName: () => LocalizedString - /** - * Text content for the file - */ - shortDesc: () => LocalizedString - /** - * The text content to write to the file. - */ - longDesc: () => LocalizedString - } - autorename: { + entity: { /** - * Auto Rename + * Vendor */ displayName: () => LocalizedString /** - * Automatically rename if file exists + * The vendor for the purchase order */ shortDesc: () => LocalizedString /** - * If enabled and a file with the same name exists, Dropbox will automatically generate a new name. + * The vendor for the purchase order */ longDesc: () => LocalizedString } - mute: { + employee: { /** - * Mute + * Employee (Requestor) */ displayName: () => LocalizedString /** - * Suppress change notifications + * The employee who requested the purchase order */ shortDesc: () => LocalizedString /** - * If enabled, users will not receive notifications about this file being created. + * The employee who requested the purchase order */ longDesc: () => LocalizedString } } } - upload_file: { + purchaseOrder_id_get: { groups: { /** - * Files + * Procurement */ '0': () => LocalizedString } /** - * Upload File + * Get Purchase Order */ displayName: () => LocalizedString /** - * Upload a file to Dropbox + * Retrieve details of a specific purchase order. */ shortDesc: () => LocalizedString /** - * Upload a file from binary content to the specified path in your Dropbox. Supports files up to 150MB. + * Fetches detailed information of a single purchase order by its ID. + */ + longDesc: () => LocalizedString + } + purchaseOrder_id_patch: { + groups: { + /** + * Procurement + */ + '0': () => LocalizedString + } + /** + * Update Purchase Order + */ + displayName: () => LocalizedString + /** + * Updates an existing purchase order. + */ + shortDesc: () => LocalizedString + /** + * Allows the user to update details of a specific purchase order by its ID. */ longDesc: () => LocalizedString options: { - path: { - /** - * Destination Path - */ - displayName: () => LocalizedString - /** - * Full path for the uploaded file - */ - shortDesc: () => LocalizedString - /** - * The full path where the file should be uploaded, including the filename (e.g., "/Documents/report.pdf"). If not provided, the file will be uploaded to the root folder with its original name. - */ - longDesc: () => LocalizedString - } - file: { - /** - * File - */ - displayName: () => LocalizedString - /** - * The file to upload - */ - shortDesc: () => LocalizedString - /** - * The file to upload to Dropbox. - */ - longDesc: () => LocalizedString - } - autorename: { - /** - * Auto Rename - */ - displayName: () => LocalizedString - /** - * Automatically rename if file exists - */ - shortDesc: () => LocalizedString - /** - * If enabled and a file with the same name exists, Dropbox will automatically generate a new name. - */ - longDesc: () => LocalizedString - } - mute: { + entity: { /** - * Mute + * Vendor */ displayName: () => LocalizedString /** - * Suppress change notifications + * The vendor for the purchase order */ shortDesc: () => LocalizedString /** - * If enabled, users will not receive notifications about this file being uploaded. + * The vendor for the purchase order */ longDesc: () => LocalizedString } - strictConflict: { + employee: { /** - * Strict Conflict + * Employee (Requestor) */ displayName: () => LocalizedString /** - * Fail on conflict instead of renaming + * The employee who requested the purchase order */ shortDesc: () => LocalizedString /** - * If enabled, the upload will fail if a file with the same name exists, even if autorename is enabled. + * The employee who requested the purchase order */ longDesc: () => LocalizedString } } } - download_file: { + purchaseOrder_id_delete: { groups: { /** - * Files + * Procurement */ '0': () => LocalizedString } /** - * Download File + * Delete Purchase Order */ displayName: () => LocalizedString /** - * Download a file from Dropbox + * Deletes a specific purchase order. */ shortDesc: () => LocalizedString /** - * Download the content of a file from your Dropbox. Returns the file content as base64-encoded binary data along with file metadata. + * Removes a purchase order record from NetSuite based on its ID. */ longDesc: () => LocalizedString - options: { - path: { - /** - * File Path - */ - displayName: () => LocalizedString - /** - * Path to the file to download - */ - shortDesc: () => LocalizedString - /** - * The full path to the file you want to download (e.g., "/Documents/report.pdf"). - */ - longDesc: () => LocalizedString - } - } } - get_file_link: { + salesOrder_get: { groups: { /** - * Files + * Sales & Billing */ '0': () => LocalizedString } /** - * Get Temporary Link + * Get List of Sales Orders */ displayName: () => LocalizedString /** - * Get a temporary download link for a file + * Retrieve a list of sales orders. */ shortDesc: () => LocalizedString /** - * Get a temporary direct link to download a file. The link is valid for 4 hours and can be used to stream content directly. + * Fetches a list of sales orders based on specified filters. */ longDesc: () => LocalizedString - options: { - path: { - /** - * File Path - */ - displayName: () => LocalizedString - /** - * Path to the file - */ - shortDesc: () => LocalizedString - /** - * The full path to the file for which you want to generate a temporary link. - */ - longDesc: () => LocalizedString - } - } } - delete_file: { + salesOrder_post: { groups: { /** - * Files + * Sales & Billing */ '0': () => LocalizedString } /** - * Delete File + * Create Sales Order */ displayName: () => LocalizedString /** - * Delete a file from Dropbox + * Creates a new sales order. */ shortDesc: () => LocalizedString /** - * Permanently delete a file from your Dropbox. This action cannot be undone through the API. + * Allows the user to create a new sales order record in NetSuite. */ longDesc: () => LocalizedString options: { - path: { + entity: { /** - * File Path + * Customer */ displayName: () => LocalizedString /** - * Path to the file to delete + * The customer for the sales order */ shortDesc: () => LocalizedString /** - * The full path to the file you want to delete. + * The customer for the sales order */ longDesc: () => LocalizedString } } } - copy_file: { + customer_post_simplified: { groups: { /** - * Files + * CRM */ '0': () => LocalizedString } /** - * Copy File + * Create Customer (Simplified) */ displayName: () => LocalizedString /** - * Copy a file to a new location + * Creates a new customer with simplified options. */ shortDesc: () => LocalizedString /** - * Copy a file from one location to another within your Dropbox. The original file remains unchanged. + * Creates a new customer in NetSuite with simplified fields */ longDesc: () => LocalizedString options: { - fromPath: { - /** - * Source Path - */ - displayName: () => LocalizedString - /** - * Path to the file to copy - */ - shortDesc: () => LocalizedString - /** - * The full path to the source file. - */ - longDesc: () => LocalizedString - } - toPath: { - /** - * Destination Path - */ - displayName: () => LocalizedString - /** - * Path for the copied file - */ - shortDesc: () => LocalizedString - /** - * The full path where the file should be copied to. - */ - longDesc: () => LocalizedString - } - autorename: { + entityStatus: { /** - * Auto Rename + * Status */ displayName: () => LocalizedString /** - * Automatically rename if destination exists + * Customer status */ shortDesc: () => LocalizedString /** - * If enabled and a file exists at the destination, generate a new name. + * The status of the customer (e.g., Active, Inactive) */ longDesc: () => LocalizedString } - allowOwnershipTransfer: { + subsidiary: { /** - * Allow Ownership Transfer + * Subsidiary */ displayName: () => LocalizedString /** - * Allow ownership transfer for shared content + * The subsidiary for the customer */ shortDesc: () => LocalizedString /** - * If enabled, allows the copy operation to transfer ownership of the content if needed. + * The subsidiary for the customer */ longDesc: () => LocalizedString } } } - move_file: { + salesOrder_post_simplified: { groups: { /** - * Files + * Sales & Billing */ '0': () => LocalizedString } /** - * Move File + * Create Sales Order (Simplified) */ displayName: () => LocalizedString /** - * Move a file to a new location + * Creates a new sales order with simplified options. */ shortDesc: () => LocalizedString /** - * Move a file from one location to another within your Dropbox. + * Creates a new customer sales order in NetSuite with only the most commonly used fields, making order creation faster and more straightforward. */ longDesc: () => LocalizedString options: { - fromPath: { + entity: { /** - * Source Path + * Customer */ displayName: () => LocalizedString /** - * Path to the file to move + * Customer for this order */ shortDesc: () => LocalizedString /** - * The full path to the source file. + * The NetSuite internal ID of the customer this sales order is for. Must be an existing customer record in your NetSuite account. */ longDesc: () => LocalizedString } - toPath: { + memo: { /** - * Destination Path + * Memo */ displayName: () => LocalizedString /** - * Path for the moved file + * Order notes */ shortDesc: () => LocalizedString /** - * The full path where the file should be moved to. + * Additional notes or information about this order. This will appear in the memo field on the sales order record. */ longDesc: () => LocalizedString } - autorename: { + orderStatus: { /** - * Auto Rename + * Order Status */ displayName: () => LocalizedString /** - * Automatically rename if destination exists + * Current status of order */ shortDesc: () => LocalizedString /** - * If enabled and a file exists at the destination, generate a new name. + * The processing status of this sales order (e.g., Pending Approval, Pending Fulfillment). Controls workflow and availability for further processing. */ longDesc: () => LocalizedString } - allowOwnershipTransfer: { + item: { /** - * Allow Ownership Transfer + * Order Items */ displayName: () => LocalizedString /** - * Allow ownership transfer for shared content + * Products or services being ordered */ shortDesc: () => LocalizedString /** - * If enabled, allows the move operation to transfer ownership of the content if needed. + * List of items being purchased in this order. Each item requires an ID and amount */ longDesc: () => LocalizedString + type: { + element_type: { + fields: { + id: { + /** + * Item ID + */ + displayName: () => LocalizedString + /** + * NetSuite item identifier + */ + shortDesc: () => LocalizedString + /** + * The internal ID of the inventory item, non-inventory item, service, or other item type in NetSuite that is being ordered. + */ + longDesc: () => LocalizedString + } + quantity: { + /** + * Quantity + */ + displayName: () => LocalizedString + /** + * Number of units + */ + shortDesc: () => LocalizedString + /** + * The number of units being ordered for this line item. For services, this is typically hours or days. + */ + longDesc: () => LocalizedString + } + amount: { + /** + * Amount Override + */ + displayName: () => LocalizedString + /** + * Custom price (optional) + */ + shortDesc: () => LocalizedString + /** + * Optional custom price override for this line item. If provided, overrides the standard price calculation (quantity × rate). Leave empty to use standard pricing from the price level assigned to the customer. + */ + longDesc: () => LocalizedString + } + } + } + } } } } - create_folder: { + salesOrder_id_get: { groups: { /** - * Folders + * Sales & Billing */ '0': () => LocalizedString } /** - * Create Folder + * Get Sales Order */ displayName: () => LocalizedString /** - * Create a new folder in Dropbox + * Retrieve details of a specific sales order. */ shortDesc: () => LocalizedString /** - * Create a new folder at the specified path in your Dropbox. + * Fetches detailed information of a single sales order by its ID. + */ + longDesc: () => LocalizedString + } + salesOrder_id_patch: { + groups: { + /** + * Sales & Billing + */ + '0': () => LocalizedString + } + /** + * Update Sales Order + */ + displayName: () => LocalizedString + /** + * Updates an existing sales order. + */ + shortDesc: () => LocalizedString + /** + * Allows the user to update details of a specific sales order by its ID. */ longDesc: () => LocalizedString options: { - path: { - /** - * Folder Path - */ - displayName: () => LocalizedString - /** - * Full path for the new folder - */ - shortDesc: () => LocalizedString - /** - * The full path where the folder should be created (e.g., "/Documents/Projects"). - */ - longDesc: () => LocalizedString - } - autorename: { + entity: { /** - * Auto Rename + * Customer */ displayName: () => LocalizedString /** - * Automatically rename if folder exists + * The customer for the sales order */ shortDesc: () => LocalizedString /** - * If enabled and a folder with the same name exists, generate a new name. + * The customer for the sales order */ longDesc: () => LocalizedString } } } - delete_folder: { + salesOrder_id_delete: { groups: { /** - * Folders + * Sales & Billing */ '0': () => LocalizedString } /** - * Delete Folder + * Delete Sales Order */ displayName: () => LocalizedString /** - * Delete a folder from Dropbox + * Deletes a specific sales order. */ shortDesc: () => LocalizedString /** - * Permanently delete a folder and all its contents from your Dropbox. This action cannot be undone through the API. + * Removes a sales order record from NetSuite based on its ID. */ longDesc: () => LocalizedString - options: { - path: { - /** - * Folder Path - */ - displayName: () => LocalizedString - /** - * Path to the folder to delete - */ - shortDesc: () => LocalizedString - /** - * The full path to the folder you want to delete. - */ - longDesc: () => LocalizedString - } + } + vendor_get: { + groups: { + /** + * Procurement + */ + '0': () => LocalizedString + } + /** + * Get List of Vendors + */ + displayName: () => LocalizedString + /** + * Retrieve a list of vendors. + */ + shortDesc: () => LocalizedString + /** + * Fetches a list of vendors based on specified filters. + */ + longDesc: () => LocalizedString + } + vendor_post: { + groups: { + /** + * Procurement + */ + '0': () => LocalizedString } + /** + * Create Vendor + */ + displayName: () => LocalizedString + /** + * Creates a new vendor. + */ + shortDesc: () => LocalizedString + /** + * Allows the user to create a new vendor record in NetSuite. + */ + longDesc: () => LocalizedString } - copy_folder: { + vendor_id_get: { groups: { /** - * Folders + * Procurement */ '0': () => LocalizedString } /** - * Copy Folder + * Get Vendor */ displayName: () => LocalizedString /** - * Copy a folder to a new location + * Retrieve details of a specific vendor. */ shortDesc: () => LocalizedString /** - * Copy a folder and all its contents from one location to another within your Dropbox. + * Fetches detailed information of a single vendor by its ID. + */ + longDesc: () => LocalizedString + } + vendor_id_patch: { + groups: { + /** + * Procurement + */ + '0': () => LocalizedString + } + /** + * Update Vendor + */ + displayName: () => LocalizedString + /** + * Updates an existing vendor. + */ + shortDesc: () => LocalizedString + /** + * Allows the user to update details of a specific vendor by its ID. + */ + longDesc: () => LocalizedString + } + vendor_id_delete: { + groups: { + /** + * Procurement + */ + '0': () => LocalizedString + } + /** + * Delete Vendor + */ + displayName: () => LocalizedString + /** + * Deletes a specific vendor. + */ + shortDesc: () => LocalizedString + /** + * Removes a vendor record from NetSuite based on its ID. + */ + longDesc: () => LocalizedString + } + } + expressions: { + '&&': { + /** + * And + */ + displayName: () => LocalizedString + /** + * Logical AND operator + */ + shortDesc: () => LocalizedString + /** + * Combines multiple conditions where all must be true + */ + longDesc: () => LocalizedString + } + '||': { + /** + * Or + */ + displayName: () => LocalizedString + /** + * Logical OR operator + */ + shortDesc: () => LocalizedString + /** + * Combines multiple conditions where at least one must be true + */ + longDesc: () => LocalizedString + } + '==': { + /** + * Equals + */ + displayName: () => LocalizedString + /** + * Field equals value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field equals the specified value + */ + longDesc: () => LocalizedString + } + '!=': { + /** + * Not Equals + */ + displayName: () => LocalizedString + /** + * Field does not equal value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field does not equal the specified value + */ + longDesc: () => LocalizedString + } + '>': { + /** + * Greater Than + */ + displayName: () => LocalizedString + /** + * Field is greater than value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field value is greater than the specified value + */ + longDesc: () => LocalizedString + } + '>=': { + /** + * Greater Than or Equal + */ + displayName: () => LocalizedString + /** + * Field is greater than or equal to value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field value is greater than or equal to the specified value + */ + longDesc: () => LocalizedString + } + '<': { + /** + * Less Than + */ + displayName: () => LocalizedString + /** + * Field is less than value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field value is less than the specified value + */ + longDesc: () => LocalizedString + } + '<=': { + /** + * Less Than or Equal + */ + displayName: () => LocalizedString + /** + * Field is less than or equal to value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field value is less than or equal to the specified value + */ + longDesc: () => LocalizedString + } + 'is-set': { + /** + * Is Set + */ + displayName: () => LocalizedString + /** + * Field has a value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field has a value (is not null) + */ + longDesc: () => LocalizedString + } + 'is-not-set': { + /** + * Is Not Set + */ + displayName: () => LocalizedString + /** + * Field has no value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field has no value (is null) + */ + longDesc: () => LocalizedString + } + contains: { + /** + * Contains + */ + displayName: () => LocalizedString + /** + * Field contains value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field contains the specified substring + */ + longDesc: () => LocalizedString + } + 'starts-with': { + /** + * Starts With + */ + displayName: () => LocalizedString + /** + * Field starts with value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field value starts with the specified prefix + */ + longDesc: () => LocalizedString + } + 'ends-with': { + /** + * Ends With + */ + displayName: () => LocalizedString + /** + * Field ends with value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field value ends with the specified suffix + */ + longDesc: () => LocalizedString + } + } + searchOptions: { + orderBy: { + /** + * Order By + */ + displayName: () => LocalizedString + /** + * Sort results by a specific field + */ + shortDesc: () => LocalizedString + /** + * Define the field and direction to sort search results + */ + longDesc: () => LocalizedString + type: { + fields: { + field: { + /** + * Field + */ + displayName: () => LocalizedString + /** + * The field to sort by + */ + shortDesc: () => LocalizedString + /** + * The name of the field to use for sorting results + */ + longDesc: () => LocalizedString + } + direction: { + /** + * Direction + */ + displayName: () => LocalizedString + /** + * Sort direction + */ + shortDesc: () => LocalizedString + /** + * The direction to sort results (ascending or descending) + */ + longDesc: () => LocalizedString + } + } + } + } + } + } + NocoDB: { + /** + * NocoDB + */ + displayName: () => LocalizedString + groups: { + /** + * Spreadsheets & Data Tables + */ + '0': () => LocalizedString + /** + * Databases & Backend Services + */ + '1': () => LocalizedString + } + /** + * Connect to NocoDB to manage your database tables and records with powerful automation + */ + shortDesc: () => LocalizedString + /** + * The NocoDB integration provides comprehensive access to your NocoDB database operations. Create, read, update, and delete records in your tables, and monitor new entries with real-time triggers. Whether you need to manage data, filter results, or track new records, this integration streamlines your NocoDB workflow automation and database management. + */ + longDesc: () => LocalizedString + connectionMessage: { + /** + * Connect to NocoDB + */ + title: () => LocalizedString + /** + * To connect to NocoDB, you will need your **NocoDB URL** and an **API Token**. + + ## Getting Your API Token + + 1. Log in to your NocoDB instance + 2. Click on your **profile icon** in the top right corner + 3. Select **Copy Auth Token** from the dropdown menu + 4. Alternatively, go to **Account Settings** → **Tokens** to create a new API token + + ## Connection Details + + ### NocoDB URL + The base URL of your NocoDB instance: + - **NocoDB Cloud**: Use `https://app.nocodb.com` + - **Self-hosted**: Use your instance URL (e.g., `https://nocodb.yourcompany.com`) + + ### API Token + Your API token that grants access to NocoDB. Tokens can be created in your account settings and provide access to all operations within the authorized workspaces and bases. + + **Note:** API tokens provide full access to the workspaces and bases you have permissions for. Ensure you keep your tokens secure and only use them in trusted environments. + */ + content: () => LocalizedString + } + triggers: { + new_document: { + /** + * New Row + */ + displayName: () => LocalizedString + /** + * Trigger when a new row is added to a NocoDB table + */ + shortDesc: () => LocalizedString + /** + * Monitors a NocoDB table for new rows and triggers when new records are detected. You can optionally filter which rows trigger the event using a where clause. */ longDesc: () => LocalizedString options: { - fromPath: { + workspaceId: { /** - * Source Path + * Workspace */ displayName: () => LocalizedString /** - * Path to the folder to copy + * The NocoDB workspace containing the base */ shortDesc: () => LocalizedString /** - * The full path to the source folder. + * Select the NocoDB workspace containing the base with the table you want to monitor. */ longDesc: () => LocalizedString } - toPath: { + baseId: { /** - * Destination Path + * Base */ displayName: () => LocalizedString /** - * Path for the copied folder + * The NocoDB base containing the table */ shortDesc: () => LocalizedString /** - * The full path where the folder should be copied to. + * Select the NocoDB base (project) containing the table you want to monitor for new rows. */ longDesc: () => LocalizedString } - autorename: { + table: { /** - * Auto Rename + * Table */ displayName: () => LocalizedString /** - * Automatically rename if destination exists + * The table to monitor for new rows */ shortDesc: () => LocalizedString /** - * If enabled and a folder exists at the destination, generate a new name. + * Select the NocoDB table to monitor. The trigger will fire when new rows are added to this table. */ longDesc: () => LocalizedString } - allowOwnershipTransfer: { + where: { /** - * Allow Ownership Transfer + * Where Filter */ displayName: () => LocalizedString /** - * Allow ownership transfer for shared content + * Optional filter for new rows */ shortDesc: () => LocalizedString /** - * If enabled, allows the copy operation to transfer ownership of the content if needed. + * Optionally specify a filter using NocoDB where syntax (e.g., "(Status,eq,Active)") to only trigger for rows matching specific criteria. */ longDesc: () => LocalizedString } } } - move_folder: { - groups: { - /** - * Folders - */ - '0': () => LocalizedString + } + searchOptions: { + orderBy: { + /** + * Order By + */ + displayName: () => LocalizedString + /** + * Sort results by a specific field + */ + shortDesc: () => LocalizedString + /** + * Define the field and direction to sort search results + */ + longDesc: () => LocalizedString + type: { + fields: { + field: { + /** + * Field + */ + displayName: () => LocalizedString + /** + * The field to sort by + */ + shortDesc: () => LocalizedString + /** + * The name of the field to use for sorting results + */ + longDesc: () => LocalizedString + } + direction: { + /** + * Direction + */ + displayName: () => LocalizedString + /** + * Sort direction + */ + shortDesc: () => LocalizedString + /** + * The direction to sort results (ascending or descending) + */ + longDesc: () => LocalizedString + } + } } + } + } + actions: { + count_records: { /** - * Move Folder + * Count Records */ displayName: () => LocalizedString /** - * Move a folder to a new location + * Get the count of records in a table */ shortDesc: () => LocalizedString /** - * Move a folder and all its contents from one location to another within your Dropbox. + * Returns the total number of records in a NocoDB table. You can optionally filter the count using a where clause to count only records matching specific criteria. */ longDesc: () => LocalizedString options: { - fromPath: { + workspaceId: { /** - * Source Path + * Workspace */ displayName: () => LocalizedString /** - * Path to the folder to move + * The NocoDB workspace containing the base */ shortDesc: () => LocalizedString /** - * The full path to the source folder. + * Select the NocoDB workspace containing the base with the table. */ longDesc: () => LocalizedString } - toPath: { + baseId: { /** - * Destination Path + * Base */ displayName: () => LocalizedString /** - * Path for the moved folder + * The NocoDB base containing the table */ shortDesc: () => LocalizedString /** - * The full path where the folder should be moved to. + * Select the NocoDB base (project) containing the table. */ longDesc: () => LocalizedString } - autorename: { + table: { /** - * Auto Rename + * Table */ displayName: () => LocalizedString /** - * Automatically rename if destination exists + * The table to count records from */ shortDesc: () => LocalizedString /** - * If enabled and a folder exists at the destination, generate a new name. + * Select the NocoDB table to count records from. */ longDesc: () => LocalizedString } - allowOwnershipTransfer: { + where: { /** - * Allow Ownership Transfer + * Where Filter */ displayName: () => LocalizedString /** - * Allow ownership transfer for shared content + * Optional filter to count specific records */ shortDesc: () => LocalizedString /** - * If enabled, allows the move operation to transfer ownership of the content if needed. + * Optionally specify a filter using NocoDB where syntax (e.g., "(Status,eq,Active)") to only count records matching specific criteria. */ longDesc: () => LocalizedString } } } - list_folder: { - groups: { - /** - * Folders - */ - '0': () => LocalizedString - } + upload_attachment: { /** - * List Folder Contents + * Upload Attachment */ displayName: () => LocalizedString /** - * List files and folders in a directory + * Upload a file to an attachment field */ shortDesc: () => LocalizedString /** - * Retrieve a list of all files and subfolders within a specified folder in your Dropbox. + * Uploads a file to a specific attachment field in a NocoDB record. The file will be stored in NocoDB and associated with the specified record. */ longDesc: () => LocalizedString options: { - path: { + workspaceId: { /** - * Folder Path + * Workspace */ displayName: () => LocalizedString /** - * Path to the folder to list + * The NocoDB workspace containing the base */ shortDesc: () => LocalizedString /** - * The full path to the folder whose contents you want to list. Use empty string for root. + * Select the NocoDB workspace containing the base with the table. */ longDesc: () => LocalizedString } - recursive: { + baseId: { /** - * Recursive + * Base */ displayName: () => LocalizedString /** - * Include contents of subfolders + * The NocoDB base containing the table */ shortDesc: () => LocalizedString /** - * If enabled, also include files and folders from all subfolders recursively. + * Select the NocoDB base (project) containing the table. */ longDesc: () => LocalizedString } - limit: { + table: { /** - * Limit + * Table */ displayName: () => LocalizedString /** - * Maximum number of items to return + * The table containing the record */ shortDesc: () => LocalizedString /** - * The maximum number of items to return. Default is 2000. + * Select the NocoDB table containing the record to attach the file to. */ longDesc: () => LocalizedString } - } - } - search: { - groups: { - /** - * Search - */ - '0': () => LocalizedString - } - /** - * Search - */ - displayName: () => LocalizedString - /** - * Search for files and folders in Dropbox - */ - shortDesc: () => LocalizedString - /** - * Search for files and folders in your Dropbox by name or content. Returns matching items with their metadata. - */ - longDesc: () => LocalizedString - options: { - query: { + recordId: { /** - * Search Query + * Record ID */ displayName: () => LocalizedString /** - * Text to search for + * The ID of the record to attach the file to */ shortDesc: () => LocalizedString /** - * The search query. Searches file and folder names. + * Specify the ID of the record where the file should be uploaded. */ longDesc: () => LocalizedString } - path: { + attachmentField: { /** - * Path + * Attachment Field */ displayName: () => LocalizedString /** - * Folder to search within + * The attachment field to upload to */ shortDesc: () => LocalizedString /** - * Optionally limit the search to a specific folder path. Leave empty to search all of Dropbox. + * Select the attachment field in the table where the file will be stored. */ longDesc: () => LocalizedString } - maxResults: { + file: { /** - * Max Results + * File */ displayName: () => LocalizedString /** - * Maximum number of results + * The file to upload */ shortDesc: () => LocalizedString /** - * The maximum number of search results to return. Default is 100. + * The file to upload to the attachment field. Supports various file types including images, documents, and more. */ longDesc: () => LocalizedString } - orderBy: { + } + } + link_records: { + /** + * Link Records + */ + displayName: () => LocalizedString + /** + * Create relationships between records + */ + shortDesc: () => LocalizedString + /** + * Links records from another table to a record via a link field. This creates a relationship between the records without affecting existing links. + */ + longDesc: () => LocalizedString + options: { + workspaceId: { /** - * Order By + * Workspace */ displayName: () => LocalizedString /** - * Sort order for results + * The NocoDB workspace containing the base */ shortDesc: () => LocalizedString /** - * How to order the search results: by relevance or by modified time. + * Select the NocoDB workspace containing the base with the table. */ longDesc: () => LocalizedString } - fileStatus: { + baseId: { /** - * File Status + * Base */ displayName: () => LocalizedString /** - * Filter by file status + * The NocoDB base containing the table */ shortDesc: () => LocalizedString /** - * Filter search results by file status: active (existing files) or deleted (removed files). + * Select the NocoDB base (project) containing the table. */ longDesc: () => LocalizedString } - filenameOnly: { + table: { /** - * Filename Only + * Table */ displayName: () => LocalizedString /** - * Search only in file names + * The table containing the source record */ shortDesc: () => LocalizedString /** - * If enabled, search will only match file names, not file contents. + * Select the NocoDB table containing the record you want to link from. */ longDesc: () => LocalizedString } - fileExtensions: { + linkField: { /** - * File Extensions + * Link Field */ displayName: () => LocalizedString /** - * Filter by file extensions + * The link field to use for the relationship */ shortDesc: () => LocalizedString /** - * Comma-separated list of file extensions to filter by (e.g., "pdf,doc,txt"). + * Select the link field (Link to Another Record) that defines the relationship between tables. */ longDesc: () => LocalizedString } - fileCategories: { + recordId: { /** - * File Categories + * Record ID */ displayName: () => LocalizedString /** - * Filter by file categories + * The source record ID */ shortDesc: () => LocalizedString /** - * Comma-separated list of file categories to filter by (e.g., "image,document,video"). + * Specify the ID of the record in the source table to link from. + */ + longDesc: () => LocalizedString + } + linkedRecordIds: { + /** + * Records to Link + */ + displayName: () => LocalizedString + /** + * IDs of records to link + */ + shortDesc: () => LocalizedString + /** + * Provide the IDs of records from the linked table to connect to the source record. */ longDesc: () => LocalizedString } } } - create_shared_link: { - groups: { - /** - * Sharing - */ - '0': () => LocalizedString - } + unlink_records: { /** - * Create Shared Link + * Unlink Records */ displayName: () => LocalizedString /** - * Create a shared link for a file + * Remove relationships between records */ shortDesc: () => LocalizedString /** - * Create a shared link for a file in your Dropbox that can be shared with others. You can configure visibility and expiration settings. + * Removes the link between records via a link field. This breaks the relationship without deleting any records. */ longDesc: () => LocalizedString options: { - path: { + workspaceId: { /** - * File Path + * Workspace */ displayName: () => LocalizedString /** - * Path to the file to share + * The NocoDB workspace containing the base */ shortDesc: () => LocalizedString /** - * The full path to the file for which you want to create a shared link. + * Select the NocoDB workspace containing the base with the table. */ longDesc: () => LocalizedString } - requested_visibility: { + baseId: { /** - * Visibility + * Base */ displayName: () => LocalizedString /** - * Who can access this link + * The NocoDB base containing the table */ shortDesc: () => LocalizedString /** - * The visibility level for the shared link: public (anyone), team_only (team members), or password (requires password). + * Select the NocoDB base (project) containing the table. */ longDesc: () => LocalizedString } - expires: { + table: { /** - * Expiration Date + * Table */ displayName: () => LocalizedString /** - * When the link expires + * The table containing the source record */ shortDesc: () => LocalizedString /** - * Optional expiration date for the link in ISO 8601 format (e.g., "2024-12-31T23:59:59Z"). + * Select the NocoDB table containing the record you want to unlink from. */ longDesc: () => LocalizedString } - } - } - list_shared_links: { - groups: { - /** - * Sharing - */ - '0': () => LocalizedString - } - /** - * List Shared Links - */ - displayName: () => LocalizedString - /** - * List shared links for a file or all files - */ - shortDesc: () => LocalizedString - /** - * Retrieve a list of shared links. You can list all shared links or filter to a specific file path. - */ - longDesc: () => LocalizedString - options: { - path: { + linkField: { /** - * File Path + * Link Field */ displayName: () => LocalizedString /** - * Filter by file path + * The link field with the relationship */ shortDesc: () => LocalizedString /** - * Optionally specify a file path to list only shared links for that file. Leave empty to list all shared links. + * Select the link field (Link to Another Record) that defines the relationship to remove. */ longDesc: () => LocalizedString } - direct_only: { + recordId: { /** - * Direct Only + * Record ID */ displayName: () => LocalizedString /** - * Return only direct links + * The source record ID */ shortDesc: () => LocalizedString /** - * If enabled, only return shared links that directly reference the file, not links to parent folders. + * Specify the ID of the record in the source table to unlink from. */ longDesc: () => LocalizedString } - } - } - revoke_shared_link: { - groups: { - /** - * Sharing - */ - '0': () => LocalizedString - } - /** - * Revoke Shared Link - */ - displayName: () => LocalizedString - /** - * Revoke a shared link - */ - shortDesc: () => LocalizedString - /** - * Revoke a shared link so it can no longer be used to access the file. This action cannot be undone. - */ - longDesc: () => LocalizedString - options: { - url: { + linkedRecordIds: { /** - * Shared Link URL + * Records to Unlink */ displayName: () => LocalizedString /** - * The URL of the shared link to revoke + * IDs of records to unlink */ shortDesc: () => LocalizedString /** - * The full URL of the shared link you want to revoke. + * Provide the IDs of records from the linked table to disconnect from the source record. */ longDesc: () => LocalizedString } } } - list_file_revisions: { - groups: { - /** - * Revisions - */ - '0': () => LocalizedString - } + trigger_button: { /** - * List File Revisions + * Trigger Button */ displayName: () => LocalizedString /** - * List revision history for a file + * Trigger a button action on records */ shortDesc: () => LocalizedString /** - * Retrieve a list of all revisions (versions) of a file. This allows you to see the history of changes to the file. + * Programmatically triggers a button action (such as AI generation or webhook) for specified records. Maximum of 25 records can be processed at a time. */ longDesc: () => LocalizedString options: { - path: { + workspaceId: { /** - * File Path + * Workspace */ displayName: () => LocalizedString /** - * Path to the file + * The NocoDB workspace containing the base */ shortDesc: () => LocalizedString /** - * The full path to the file whose revisions you want to list. + * Select the NocoDB workspace containing the base with the table. */ longDesc: () => LocalizedString } - mode: { + baseId: { /** - * Mode + * Base */ displayName: () => LocalizedString /** - * How to identify the file + * The NocoDB base containing the table */ shortDesc: () => LocalizedString /** - * How the path parameter identifies the file: "path" (by file path) or "id" (by file ID). + * Select the NocoDB base (project) containing the table. */ longDesc: () => LocalizedString } - limit: { + table: { /** - * Limit + * Table */ displayName: () => LocalizedString /** - * Maximum number of revisions + * The table containing the button field */ shortDesc: () => LocalizedString /** - * The maximum number of revisions to return. Default is 10. + * Select the NocoDB table containing the button field to trigger. */ longDesc: () => LocalizedString } - } - } - restore_file_revision: { - groups: { - /** - * Revisions - */ - '0': () => LocalizedString - } - /** - * Restore File Revision - */ - displayName: () => LocalizedString - /** - * Restore a file to a previous revision - */ - shortDesc: () => LocalizedString - /** - * Restore a file to a previous revision (version). This creates a new revision with the content from the specified revision. - */ - longDesc: () => LocalizedString - options: { - path: { + buttonField: { /** - * File Path + * Button Field */ displayName: () => LocalizedString /** - * Path to the file + * The button field to trigger */ shortDesc: () => LocalizedString /** - * The full path to the file you want to restore. + * Select the button field whose action should be triggered for the specified records. */ longDesc: () => LocalizedString } - rev: { + recordIds: { /** - * Revision + * Record IDs */ displayName: () => LocalizedString /** - * Revision ID to restore + * IDs of records to process */ shortDesc: () => LocalizedString /** - * The revision identifier (rev) of the version you want to restore. Get this from list_file_revisions. + * Provide the IDs of records to trigger the button action for. Maximum 25 records per request. + */ + longDesc: () => LocalizedString + } + preview: { + /** + * Preview Mode + */ + displayName: () => LocalizedString + /** + * Run in preview mode without saving changes + */ + shortDesc: () => LocalizedString + /** + * When enabled, the button action runs in preview mode and changes are not saved. Useful for testing. */ longDesc: () => LocalizedString } } } } + } + Salesforce: { + groups: { + /** + * CRM & Sales Management + */ + '0': () => LocalizedString + } triggers: { - new_file: { - groups: { - /** - * Files - */ - '0': () => LocalizedString - } + new_record_trigger: { /** - * New File + * New Record */ displayName: () => LocalizedString /** - * Triggers when a new file is added to a folder + * Triggers when a new record is created in the specified object. */ shortDesc: () => LocalizedString /** - * This trigger fires whenever a new file is created in the specified folder. Monitor for new uploads, file creations, or files moved into the folder. + * This trigger fires whenever a new record is created in a specified Salesforce object. You can configure the object type to target specific record types, such as Leads, Contacts, or custom objects. It is useful for automating workflows triggered by record creation. */ longDesc: () => LocalizedString options: { - folder: { + object: { /** - * Folder Path + * Object Type */ displayName: () => LocalizedString /** - * The folder to monitor for new files + * The Salesforce object to monitor for new records. */ shortDesc: () => LocalizedString /** - * Specify the path to the folder you want to monitor for new files. Use empty string for root folder. + * Select the Salesforce object (e.g., Lead, Account, Contact) where this trigger will monitor for newly created records. */ longDesc: () => LocalizedString } } - } - new_folder: { - groups: { + event_info: { /** - * Folders + * Fires when a new record is created in the specified Salesforce object. */ - '0': () => LocalizedString + desc: () => LocalizedString } + } + new_contact_trigger: { /** - * New Folder + * New Contact */ displayName: () => LocalizedString /** - * Triggers when a new folder is created + * Triggers when a new Contact record is created. */ shortDesc: () => LocalizedString /** - * This trigger fires whenever a new folder is created within the specified parent folder. + * This trigger fires whenever a new Contact record is created in Salesforce. It is ideal for automating workflows such as contact notifications, integrations, or CRM updates. */ longDesc: () => LocalizedString - options: { - parentFolder: { - /** - * Parent Folder - */ - displayName: () => LocalizedString - /** - * The parent folder to monitor - */ - shortDesc: () => LocalizedString - /** - * Specify the path to the parent folder you want to monitor for new subfolders. - */ - longDesc: () => LocalizedString - } + event_info: { + /** + * Fires when a new Contact record is created in Salesforce. + */ + desc: () => LocalizedString } } - file_modified: { - groups: { + new_lead_trigger: { + /** + * New Lead + */ + displayName: () => LocalizedString + /** + * Triggers when a new Lead record is created. + */ + shortDesc: () => LocalizedString + /** + * This trigger activates whenever a new Lead record is created in Salesforce. It is commonly used for workflows related to lead generation, qualification, or assignment. + */ + longDesc: () => LocalizedString + event_info: { /** - * Files + * Fires when a new Lead record is created in Salesforce. */ - '0': () => LocalizedString + desc: () => LocalizedString } + } + updated_record_trigger: { /** - * File Modified + * Updated Record */ displayName: () => LocalizedString /** - * Triggers when a file is modified + * Triggers when an existing record is updated. */ shortDesc: () => LocalizedString /** - * This trigger fires whenever a file is modified in the specified folder. This includes content changes, not just metadata updates. + * This trigger fires whenever an existing record in a specified Salesforce object is updated. It is useful for workflows that depend on changes to specific fields or records, such as updating downstream systems or notifying users of record changes. */ longDesc: () => LocalizedString options: { - folder: { + object: { /** - * Folder Path + * Object Type */ displayName: () => LocalizedString /** - * The folder to monitor for modified files + * The Salesforce object to monitor for updates. */ shortDesc: () => LocalizedString /** - * Specify the path to the folder you want to monitor for file modifications. + * Specify the Salesforce object (e.g., Opportunity, Contact, or custom objects) where this trigger will monitor for record updates. */ longDesc: () => LocalizedString } } + event_info: { + /** + * Fires when a record in the specified Salesforce object is updated. + */ + desc: () => LocalizedString + } } } } - NetSuite: { + Freshdesk: { /** - * NetSuite + * Freshdesk */ displayName: () => LocalizedString groups: { /** - * Accounting & ERP + * Customer Support & Helpdesk */ '0': () => LocalizedString } /** - * A comprehensive suite of cloud-based business management solutions. + * Cloud-based customer support software */ shortDesc: () => LocalizedString /** - * NetSuite offers a unified platform for ERP, CRM, e-commerce, and more, enabling businesses to manage all key operations in a single system. + * Freshdesk is a cloud-based customer support platform that was founded with the mission of enabling companies of all sizes to provide great customer service. Our goal is simple: make it easy for brands to talk to their customers and make it easy for users to get in touch with businesses. */ longDesc: () => LocalizedString + connectionMessage: { + /** + * Connect to Freshdesk + */ + title: () => LocalizedString + /** + * To connect to Freshdesk, you will need your **Subdomain** and **API Key**. + + ## Finding Your Subdomain + + Your Freshdesk subdomain is the unique identifier in your Freshdesk URL: + - If your Freshdesk URL is `https://yourcompany.freshdesk.com`, your subdomain is `yourcompany` + + ## Getting Your API Key + + 1. Log in to your Freshdesk account + 2. Click on your **profile icon** in the top right corner + 3. Select **Profile settings** + 4. Scroll down to find your **API Key** section + 5. Click **View API Key** to reveal your key + 6. Copy the API key + + ## Connection Details + + ### Subdomain + Your Freshdesk subdomain (e.g., `yourcompany` from `yourcompany.freshdesk.com`). Do not include the full URL, just the subdomain portion. + + ### API Key + Your personal Freshdesk API key. This key is tied to your user account and inherits your permissions within Freshdesk. + + **Note:** Your API key provides access based on your user role and permissions in Freshdesk. For production integrations, consider using a dedicated service account with appropriate permissions. Keep your API key secure and never share it publicly. + */ + content: () => LocalizedString + } triggers: { - new_record: { + new_ticket_trigger: { /** - * New Record + * New Ticket */ displayName: () => LocalizedString /** - * Triggers when a new record is created + * Triggers when a new ticket is created in Freshdesk. */ shortDesc: () => LocalizedString /** - * Triggers when a new record is created + * Fires whenever a new ticket is created in your Freshdesk instance. You can capture details such as subject, description, priority, and more, and use this data in subsequent actions or notifications. */ longDesc: () => LocalizedString options: { - recordType: { + ticketStatus: { /** - * Record Type + * Ticket Status Filter */ displayName: () => LocalizedString /** - * The type of record to monitor + * Filters by ticket status */ shortDesc: () => LocalizedString /** - * The type of record to monitor + * Restrict or filter the trigger to only fire for tickets matching a certain status (e.g. Open, Pending, Resolved, etc.). + */ + longDesc: () => LocalizedString + } + ticketPriority: { + /** + * Ticket Priority Filter + */ + displayName: () => LocalizedString + /** + * Filters by ticket priority + */ + shortDesc: () => LocalizedString + /** + * Restrict or filter the trigger to only fire for tickets matching a certain priority (e.g. Low, Medium, High). */ longDesc: () => LocalizedString } } + event_info: { + /** + * Structure and types for Freshdesk’s new ticket data payload. + */ + desc: () => LocalizedString + } } - } - actions: { - list_records: { - groups: { + new_contact_trigger: { + /** + * New Contact + */ + displayName: () => LocalizedString + /** + * Triggers when a new contact is created in Freshdesk. + */ + shortDesc: () => LocalizedString + /** + * Fires whenever a new contact is added to your Freshdesk instance. Capture details such as name, email, phone, and any custom fields associated with the contact. + */ + longDesc: () => LocalizedString + event_info: { /** - * Data & Search + * Structure and types for Freshdesk’s new contact data payload. */ - '0': () => LocalizedString + desc: () => LocalizedString } + } + updated_ticket_trigger: { /** - * List Records + * Updated Ticket */ displayName: () => LocalizedString /** - * Retrieve NetSuite records based on search criteria + * Triggers when an existing ticket is updated in Freshdesk. */ shortDesc: () => LocalizedString /** - * Query NetSuite records by type with optional filtering, field selection, and pagination + * Fires whenever an existing ticket is updated with new details in your Freshdesk instance. For example, changes to subject, priority, status, or assigned agent. */ longDesc: () => LocalizedString - options: { - recordType: { - /** - * Record Type - */ - displayName: () => LocalizedString - /** - * Type of NetSuite record to retrieve - */ - shortDesc: () => LocalizedString - /** - * Specifies which NetSuite record type to query (customer, invoice, transaction, etc.) - */ - longDesc: () => LocalizedString - } - searchMode: { - /** - * Search Mode - */ - displayName: () => LocalizedString - /** - * How multiple search criteria are combined - */ - shortDesc: () => LocalizedString - /** - * Determines if records must match all criteria (All) or any criteria (Any) when multiple query fields are provided - */ - longDesc: () => LocalizedString - } - fields: { - /** - * Fields - */ - displayName: () => LocalizedString - /** - * Specific record fields to return - */ - shortDesc: () => LocalizedString - /** - * List of field names to include in results (returns all fields if omitted) - */ - longDesc: () => LocalizedString - } - query: { - /** - * Query Criteria - */ - displayName: () => LocalizedString - /** - * Search conditions for filtering records - */ - shortDesc: () => LocalizedString - /** - * Key-value pairs defining search criteria - */ - longDesc: () => LocalizedString - type: { - element_type: { - fields: { - key: { - /** - * Field Name - */ - displayName: () => LocalizedString - /** - * Name of the field to filter by - */ - shortDesc: () => LocalizedString - /** - * The name of the field to filter by - */ - longDesc: () => LocalizedString - } - value: { - /** - * Field Value - */ - displayName: () => LocalizedString - /** - * Value to match for the field - */ - shortDesc: () => LocalizedString - /** - * The value to match for the field - */ - longDesc: () => LocalizedString - } - } - } - } - } - limit: { - /** - * Limit - */ - displayName: () => LocalizedString - /** - * Maximum number of records to return - */ - shortDesc: () => LocalizedString - /** - * Caps the number of results returned in a single query - */ - longDesc: () => LocalizedString - } - offset: { - /** - * Offset - */ - displayName: () => LocalizedString - /** - * Number of records to skip - */ - shortDesc: () => LocalizedString - /** - * Used for pagination to skip a specified number of records in the result set - */ - longDesc: () => LocalizedString - } + event_info: { + /** + * Structure and types for Freshdesk’s updated ticket data payload. + */ + desc: () => LocalizedString } } - suite_ql: { - groups: { + updated_contact_trigger: { + /** + * Updated Contact + */ + displayName: () => LocalizedString + /** + * Triggers when an existing contact is updated in Freshdesk. + */ + shortDesc: () => LocalizedString + /** + * Fires whenever an existing contact's details are updated in your Freshdesk instance. For example, changes to name, phone number, email, or custom fields. + */ + longDesc: () => LocalizedString + event_info: { /** - * Data & Search + * Structure and types for Freshdesk's updated contact data payload. */ - '0': () => LocalizedString + desc: () => LocalizedString } + } + } + searchOptions: { + orderBy: { /** - * SuiteQL + * Order By */ displayName: () => LocalizedString /** - * Run a SuiteQL query + * Sort results by a specific field */ shortDesc: () => LocalizedString /** - * Run a SuiteQL query + * Define the field and direction to sort search results */ longDesc: () => LocalizedString - options: { - query: { - /** - * Query - */ - displayName: () => LocalizedString - /** - * The SuiteQL query to run - */ - shortDesc: () => LocalizedString - /** - * The SuiteQL query to run - */ - longDesc: () => LocalizedString - } - limit: { - /** - * Limit - */ - displayName: () => LocalizedString - /** - * The maximum number of records to return - */ - shortDesc: () => LocalizedString - /** - * The maximum number of records to return - */ - longDesc: () => LocalizedString - } - offset: { - /** - * Offset - */ - displayName: () => LocalizedString - /** - * The number of records to skip - */ - shortDesc: () => LocalizedString - /** - * The number of records to skip - */ - longDesc: () => LocalizedString - } - response_type: { - fields: { - links: { - /** - * Links - */ - display_name: () => LocalizedString - /** - * Links - */ - short_desc: () => LocalizedString - /** - * Links - */ - desc: () => LocalizedString - } - count: { - /** - * Count - */ - display_name: () => LocalizedString - /** - * The number of results - */ - short_desc: () => LocalizedString - /** - * The number of results - */ - desc: () => LocalizedString - } - hasMore: { - /** - * Has More - */ - display_name: () => LocalizedString - /** - * Whether there are more results - */ - short_desc: () => LocalizedString - /** - * Whether there are more results - */ - desc: () => LocalizedString - } - items: { - /** - * Items - */ - display_name: () => LocalizedString - /** - * The items - */ - short_desc: () => LocalizedString - /** - * The items - */ - desc: () => LocalizedString - } + type: { + fields: { + field: { + /** + * Field + */ + displayName: () => LocalizedString + /** + * The field to sort by + */ + shortDesc: () => LocalizedString + /** + * The name of the field to use for sorting results + */ + longDesc: () => LocalizedString + } + direction: { + /** + * Direction + */ + displayName: () => LocalizedString + /** + * Sort direction + */ + shortDesc: () => LocalizedString + /** + * The direction to sort results (ascending or descending) + */ + longDesc: () => LocalizedString } } } } - account_get: { - groups: { - /** - * Accounting - */ - '0': () => LocalizedString - } + } + expressions: { + '&&': { /** - * Get List of Accounts + * And */ displayName: () => LocalizedString /** - * Retrieve a list of accounts. + * Logical AND operator */ shortDesc: () => LocalizedString /** - * Fetches a list of accounts based on specified filters. + * Combines multiple conditions where all must be true */ longDesc: () => LocalizedString } - account_post: { - groups: { - /** - * Accounting - */ - '0': () => LocalizedString - } + '||': { /** - * Create Account + * Or */ displayName: () => LocalizedString /** - * Creates a new account. + * Logical OR operator */ shortDesc: () => LocalizedString /** - * Allows the user to create a new account record in NetSuite. + * Combines multiple conditions where at least one must be true */ longDesc: () => LocalizedString } - account_id_get: { - groups: { - /** - * Accounting - */ - '0': () => LocalizedString - } + '==': { /** - * Get Account + * Equals */ displayName: () => LocalizedString /** - * Retrieve details of a specific account. + * Field equals value */ shortDesc: () => LocalizedString /** - * Fetches detailed information of a single account by its ID. + * Matches records where the field equals the specified value */ longDesc: () => LocalizedString } - account_id_patch: { - groups: { - /** - * Accounting - */ - '0': () => LocalizedString - } + '!=': { /** - * Update Account + * Not Equals */ displayName: () => LocalizedString /** - * Updates an existing account. + * Field does not equal value */ shortDesc: () => LocalizedString /** - * Allows the user to update details of a specific account by its ID. + * Matches records where the field does not equal the specified value */ longDesc: () => LocalizedString } - account_id_delete: { - groups: { - /** - * Accounting - */ - '0': () => LocalizedString - } + '>': { /** - * Delete Account + * Greater Than */ displayName: () => LocalizedString /** - * Deletes a specific account. + * Field is greater than value */ shortDesc: () => LocalizedString /** - * Removes an account record from NetSuite based on its ID. + * Matches records where the field value is greater than the specified value */ longDesc: () => LocalizedString } - customer_get: { - groups: { - /** - * CRM - */ - '0': () => LocalizedString - } + '>=': { /** - * Get List of Customers + * Greater Than or Equal */ displayName: () => LocalizedString /** - * Retrieve a list of customers. + * Field is greater than or equal to value */ shortDesc: () => LocalizedString /** - * Fetches a list of customers based on specified filters. + * Matches records where the field value is greater than or equal to the specified value */ longDesc: () => LocalizedString } - customer_post: { - groups: { - /** - * CRM - */ - '0': () => LocalizedString - } + '<': { /** - * Create Customer + * Less Than */ displayName: () => LocalizedString /** - * Creates a new customer. + * Field is less than value */ shortDesc: () => LocalizedString /** - * Allows the user to create a new customer record in NetSuite. + * Matches records where the field value is less than the specified value */ longDesc: () => LocalizedString } - customer_id_get: { - groups: { - /** - * CRM - */ - '0': () => LocalizedString - } + '<=': { /** - * Get Customer + * Less Than or Equal */ displayName: () => LocalizedString /** - * Retrieve details of a specific customer. + * Field is less than or equal to value */ shortDesc: () => LocalizedString /** - * Fetches detailed information of a single customer by its ID. + * Matches records where the field value is less than or equal to the specified value */ longDesc: () => LocalizedString } - customer_id_patch: { - groups: { - /** - * CRM - */ - '0': () => LocalizedString - } + contains: { /** - * Update Customer + * Contains */ displayName: () => LocalizedString /** - * Updates an existing customer. + * Field contains value */ shortDesc: () => LocalizedString /** - * Allows the user to update details of a specific customer by its ID. + * Matches records where the field contains the specified substring */ longDesc: () => LocalizedString } - customer_id_delete: { - groups: { - /** - * CRM - */ - '0': () => LocalizedString - } + 'is-set': { /** - * Delete Customer + * Is Set */ displayName: () => LocalizedString /** - * Deletes a specific customer. + * Field has a value */ shortDesc: () => LocalizedString /** - * Removes a customer record from NetSuite based on its ID. + * Matches records where the field has a value (is not empty) */ longDesc: () => LocalizedString } - contact_get: { - groups: { - /** - * CRM - */ - '0': () => LocalizedString - } + 'is-not-set': { /** - * Get List of Contacts + * Is Not Set */ displayName: () => LocalizedString /** - * Retrieve a list of contacts. + * Field has no value */ shortDesc: () => LocalizedString /** - * Fetches a list of contacts based on specified filters. + * Matches records where the field has no value (is empty) */ longDesc: () => LocalizedString } - contact_post: { + } + } + Front: { + /** + * Front + */ + displayName: () => LocalizedString + groups: { + /** + * Customer Support & Helpdesk + */ + '0': () => LocalizedString + /** + * Messaging & Real-time Communication + */ + '1': () => LocalizedString + } + /** + * Connect with Front to manage shared inboxes, contacts, and customer communications + */ + shortDesc: () => LocalizedString + /** + * Integrate with Front to manage your team shared inboxes, contacts, accounts, and customer conversations. Front is a customer communication platform that brings email and messaging into a shared inbox. This integration enables you to automate contact management, organize accounts, and streamline team collaboration. + */ + longDesc: () => LocalizedString + actions: { + list_accounts: { groups: { /** - * CRM + * Accounts */ '0': () => LocalizedString } /** - * Create Contact + * List Accounts */ displayName: () => LocalizedString /** - * Creates a new contact. + * Retrieve a list of accounts */ shortDesc: () => LocalizedString /** - * Allows the user to create a new contact record in NetSuite. + * Retrieve a list of all accounts in your Front workspace. Accounts represent companies or organizations that your contacts belong to. Use accounts to group contacts and track interactions at the company level. */ longDesc: () => LocalizedString + options: { + limit: { + /** + * Limit + */ + displayName: () => LocalizedString + /** + * Maximum number of accounts to return + */ + shortDesc: () => LocalizedString + /** + * The maximum number of account records to return. Default is 50. Use pagination for larger datasets. + */ + longDesc: () => LocalizedString + } + } } - contact_id_delete: { + get_account: { groups: { /** - * CRM + * Accounts */ '0': () => LocalizedString } /** - * Delete Contact + * Get Account */ displayName: () => LocalizedString /** - * Deletes a specific contact. + * Retrieve a single account by ID */ shortDesc: () => LocalizedString /** - * Removes a contact record from NetSuite based on its ID. + * Retrieve the full details of a specific account from Front by its ID. Returns all account data including name, description, domains, external ID, and custom fields. */ longDesc: () => LocalizedString + options: { + accountId: { + /** + * Account + */ + displayName: () => LocalizedString + /** + * The account to retrieve + */ + shortDesc: () => LocalizedString + /** + * Select or enter the ID of the account you want to retrieve. Account IDs start with "acc_". + */ + longDesc: () => LocalizedString + } + } } - contact_id_get: { + create_account: { groups: { /** - * CRM + * Accounts */ '0': () => LocalizedString } /** - * Get Contact + * Create Account */ displayName: () => LocalizedString /** - * Retrieve details of a specific contact. + * Create a new account */ shortDesc: () => LocalizedString /** - * Fetches detailed information of a single contact by its ID. + * Create a new account in Front. Accounts represent companies or organizations and can be used to group related contacts together. You can associate domains with accounts to automatically link contacts. */ longDesc: () => LocalizedString + options: { + name: { + /** + * Name + */ + displayName: () => LocalizedString + /** + * The account name + */ + shortDesc: () => LocalizedString + /** + * The name of the account, typically the company or organization name. This is a required field. + */ + longDesc: () => LocalizedString + } + description: { + /** + * Description + */ + displayName: () => LocalizedString + /** + * A description of the account + */ + shortDesc: () => LocalizedString + /** + * An optional description providing additional context about the account, such as the type of business or relationship. + */ + longDesc: () => LocalizedString + } + domains: { + /** + * Domains + */ + displayName: () => LocalizedString + /** + * Email domains associated with the account + */ + shortDesc: () => LocalizedString + /** + * A list of email domains (e.g., "example.com") associated with this account. Contacts with email addresses from these domains can be automatically linked to the account. + */ + longDesc: () => LocalizedString + } + externalId: { + /** + * External ID + */ + displayName: () => LocalizedString + /** + * External system identifier + */ + shortDesc: () => LocalizedString + /** + * An optional external ID to link this account to a record in another system, such as a CRM or billing platform. + */ + longDesc: () => LocalizedString + } + customFields: { + /** + * Custom Fields + */ + displayName: () => LocalizedString + /** + * Custom field values + */ + shortDesc: () => LocalizedString + /** + * An object containing custom field values for the account. The keys should match your configured custom field names. + */ + longDesc: () => LocalizedString + } + } } - contact_id_patch: { + update_account: { groups: { /** - * CRM + * Accounts */ '0': () => LocalizedString } /** - * Update Contact + * Update Account */ displayName: () => LocalizedString /** - * Updates an existing contact. + * Update an existing account */ shortDesc: () => LocalizedString /** - * Allows the user to update details of a specific contact by its ID. + * Update the properties of an existing account in Front. You can modify the name, description, domains, external ID, or custom fields. At least one field must be provided to update. */ longDesc: () => LocalizedString + options: { + accountId: { + /** + * Account + */ + displayName: () => LocalizedString + /** + * The account to update + */ + shortDesc: () => LocalizedString + /** + * Select or enter the ID of the account you want to update. + */ + longDesc: () => LocalizedString + } + name: { + /** + * Name + */ + displayName: () => LocalizedString + /** + * The new account name + */ + shortDesc: () => LocalizedString + /** + * Update the name of the account. + */ + longDesc: () => LocalizedString + } + description: { + /** + * Description + */ + displayName: () => LocalizedString + /** + * The new description + */ + shortDesc: () => LocalizedString + /** + * Update the description of the account. + */ + longDesc: () => LocalizedString + } + domains: { + /** + * Domains + */ + displayName: () => LocalizedString + /** + * The new list of domains + */ + shortDesc: () => LocalizedString + /** + * Update the list of email domains associated with this account. This will replace the existing domains. + */ + longDesc: () => LocalizedString + } + externalId: { + /** + * External ID + */ + displayName: () => LocalizedString + /** + * The new external ID + */ + shortDesc: () => LocalizedString + /** + * Update the external system identifier for this account. + */ + longDesc: () => LocalizedString + } + customFields: { + /** + * Custom Fields + */ + displayName: () => LocalizedString + /** + * Updated custom field values + */ + shortDesc: () => LocalizedString + /** + * Update custom field values for the account. + */ + longDesc: () => LocalizedString + } + } } - opportunity_get: { + delete_account: { groups: { /** - * CRM + * Accounts */ '0': () => LocalizedString } /** - * Get List of Opportunities + * Delete Account */ displayName: () => LocalizedString /** - * Retrieve a list of opportunities. + * Delete an account */ shortDesc: () => LocalizedString /** - * Fetches a list of opportunities based on specified filters. + * Delete an account from Front. This action is permanent. Contacts associated with the account will not be deleted but will no longer be linked to this account. */ longDesc: () => LocalizedString + options: { + accountId: { + /** + * Account + */ + displayName: () => LocalizedString + /** + * The account to delete + */ + shortDesc: () => LocalizedString + /** + * Select or enter the ID of the account you want to delete. + */ + longDesc: () => LocalizedString + } + } } - opportunity_id_delete: { + list_account_contacts: { groups: { /** - * CRM + * Accounts */ '0': () => LocalizedString } /** - * Delete Opportunity + * List Account Contacts */ displayName: () => LocalizedString /** - * Deletes a specific opportunity. + * List contacts associated with an account */ shortDesc: () => LocalizedString /** - * Removes an opportunity record from NetSuite based on its ID. + * Retrieve a list of all contacts that are associated with a specific account. This helps you see all the people from a particular company or organization. */ longDesc: () => LocalizedString + options: { + accountId: { + /** + * Account + */ + displayName: () => LocalizedString + /** + * The account to list contacts from + */ + shortDesc: () => LocalizedString + /** + * Select or enter the ID of the account whose contacts you want to retrieve. + */ + longDesc: () => LocalizedString + } + limit: { + /** + * Limit + */ + displayName: () => LocalizedString + /** + * Maximum number of contacts to return + */ + shortDesc: () => LocalizedString + /** + * The maximum number of contact records to return. Default is 50. + */ + longDesc: () => LocalizedString + } + } } - opportunity_id_get: { + add_contact_to_account: { groups: { /** - * CRM + * Accounts */ '0': () => LocalizedString } /** - * Get Opportunity + * Add Contact to Account */ displayName: () => LocalizedString /** - * Retrieve details of a specific opportunity. + * Add contacts to an account */ shortDesc: () => LocalizedString /** - * Fetches detailed information of a single opportunity by its ID. + * Add one or more contacts to an account in Front. This creates an association between the contacts and the account, helping you organize contacts by company or organization. */ longDesc: () => LocalizedString + options: { + accountId: { + /** + * Account + */ + displayName: () => LocalizedString + /** + * The account to add contacts to + */ + shortDesc: () => LocalizedString + /** + * Select or enter the ID of the account where you want to add contacts. + */ + longDesc: () => LocalizedString + } + contactIds: { + /** + * Contacts + */ + displayName: () => LocalizedString + /** + * The contacts to add + */ + shortDesc: () => LocalizedString + /** + * Select one or more contacts to add to the account. Contact IDs start with "crd_". + */ + longDesc: () => LocalizedString + } + } } - opportunity_id_patch: { + remove_contact_from_account: { groups: { /** - * CRM + * Accounts */ '0': () => LocalizedString } /** - * Update Opportunity + * Remove Contact from Account */ displayName: () => LocalizedString /** - * Updates an existing opportunity. + * Remove contacts from an account */ shortDesc: () => LocalizedString /** - * Allows the user to update details of a specific opportunity by its ID. + * Remove one or more contacts from an account in Front. This removes the association between the contacts and the account but does not delete the contacts themselves. */ longDesc: () => LocalizedString + options: { + accountId: { + /** + * Account + */ + displayName: () => LocalizedString + /** + * The account to remove contacts from + */ + shortDesc: () => LocalizedString + /** + * Select or enter the ID of the account from which you want to remove contacts. + */ + longDesc: () => LocalizedString + } + contactIds: { + /** + * Contacts + */ + displayName: () => LocalizedString + /** + * The contacts to remove + */ + shortDesc: () => LocalizedString + /** + * Select one or more contacts to remove from the account. + */ + longDesc: () => LocalizedString + } + } } - opportunity_post: { + list_contacts: { groups: { /** - * CRM + * Contacts */ '0': () => LocalizedString } /** - * Create Opportunity + * List Contacts */ displayName: () => LocalizedString /** - * Creates a new opportunity. + * Retrieve a list of contacts */ shortDesc: () => LocalizedString /** - * Allows the user to create a new opportunity record in NetSuite. + * Retrieve a list of all contacts in your Front workspace. Contacts represent the people you communicate with. Results can be sorted by creation or update date. */ longDesc: () => LocalizedString + options: { + sortBy: { + /** + * Sort By + */ + displayName: () => LocalizedString + /** + * Field to sort by + */ + shortDesc: () => LocalizedString + /** + * The field to sort results by: created_at or updated_at. + */ + longDesc: () => LocalizedString + } + sortOrder: { + /** + * Sort Order + */ + displayName: () => LocalizedString + /** + * Sort order direction + */ + shortDesc: () => LocalizedString + /** + * The direction to sort results: desc (newest first) or asc (oldest first). + */ + longDesc: () => LocalizedString + } + limit: { + /** + * Limit + */ + displayName: () => LocalizedString + /** + * Maximum number of contacts to return + */ + shortDesc: () => LocalizedString + /** + * The maximum number of contact records to return. Default is 50. + */ + longDesc: () => LocalizedString + } + } } - invoice_get: { + get_contact: { groups: { /** - * Sales & Billing + * Contacts */ '0': () => LocalizedString } /** - * Get List of Invoices + * Get Contact */ displayName: () => LocalizedString /** - * Retrieve a list of invoices. + * Retrieve a single contact by ID */ shortDesc: () => LocalizedString /** - * Fetches a list of invoices based on specified filters. + * Retrieve the full details of a specific contact from Front by their ID. Returns all contact data including name, handles (email, phone, etc.), groups, links, and custom fields. */ longDesc: () => LocalizedString + options: { + contactId: { + /** + * Contact + */ + displayName: () => LocalizedString + /** + * The contact to retrieve + */ + shortDesc: () => LocalizedString + /** + * Select or enter the ID of the contact you want to retrieve. Contact IDs start with "crd_". + */ + longDesc: () => LocalizedString + } + } } - invoice_post: { + create_contact: { groups: { /** - * Sales & Billing + * Contacts */ '0': () => LocalizedString } /** - * Create Invoice + * Create Contact */ displayName: () => LocalizedString /** - * Creates a new invoice. + * Create a new contact */ shortDesc: () => LocalizedString /** - * Allows the user to create a new invoice record in NetSuite. + * Create a new contact in Front. Contacts represent the people you communicate with. A contact must have at least one handle (email, phone, etc.) to be created. */ longDesc: () => LocalizedString options: { - entity: { + name: { /** - * Customer for the invoice + * Name */ displayName: () => LocalizedString /** - * The customer for the invoice + * The contact name */ shortDesc: () => LocalizedString /** - * The customer for the invoice + * The display name of the contact. This is optional but recommended for easier identification. + */ + longDesc: () => LocalizedString + } + description: { + /** + * Description + */ + displayName: () => LocalizedString + /** + * A description of the contact + */ + shortDesc: () => LocalizedString + /** + * An optional description or notes about the contact. This can include any relevant context about the person. + */ + longDesc: () => LocalizedString + } + handles: { + /** + * Handles + */ + displayName: () => LocalizedString + /** + * Contact handles (email, phone, etc.) + */ + shortDesc: () => LocalizedString + /** + * A list of handles for the contact. Each handle consists of a handle value (e.g., email address) and a source type (email, phone, twitter, etc.). At least one handle is required. + */ + longDesc: () => LocalizedString + type: { + element_type: { + fields: { + handle: { + /** + * Handle + */ + displayName: () => LocalizedString + /** + * The handle value + */ + shortDesc: () => LocalizedString + /** + * The actual handle value, such as an email address, phone number, or social media username. + */ + longDesc: () => LocalizedString + } + source: { + /** + * Source + */ + displayName: () => LocalizedString + /** + * The type of handle + */ + shortDesc: () => LocalizedString + /** + * The type of handle: email, phone, twitter, facebook, intercom, front_chat, or custom. + */ + longDesc: () => LocalizedString + } + } + } + } + } + links: { + /** + * Links + */ + displayName: () => LocalizedString + /** + * Associated URLs + */ + shortDesc: () => LocalizedString + /** + * A list of URLs associated with this contact, such as social media profiles or company websites. + */ + longDesc: () => LocalizedString + } + groupNames: { + /** + * Group Names + */ + displayName: () => LocalizedString + /** + * Groups to add the contact to + */ + shortDesc: () => LocalizedString + /** + * A list of group names to add the contact to. Groups help organize contacts into categories. + */ + longDesc: () => LocalizedString + } + customFields: { + /** + * Custom Fields + */ + displayName: () => LocalizedString + /** + * Custom field values + */ + shortDesc: () => LocalizedString + /** + * An object containing custom field values for the contact. The keys should match your configured custom field names. */ longDesc: () => LocalizedString } } } - invoice_id_get: { + update_contact: { groups: { /** - * Sales & Billing + * Contacts */ '0': () => LocalizedString } /** - * Get Invoice + * Update Contact */ displayName: () => LocalizedString /** - * Retrieve details of a specific invoice. + * Update an existing contact */ shortDesc: () => LocalizedString /** - * Fetches detailed information of a single invoice by its ID. + * Update the properties of an existing contact in Front. You can modify the name, description, links, or custom fields. At least one field must be provided to update. */ longDesc: () => LocalizedString + options: { + contactId: { + /** + * Contact + */ + displayName: () => LocalizedString + /** + * The contact to update + */ + shortDesc: () => LocalizedString + /** + * Select or enter the ID of the contact you want to update. + */ + longDesc: () => LocalizedString + } + name: { + /** + * Name + */ + displayName: () => LocalizedString + /** + * The new contact name + */ + shortDesc: () => LocalizedString + /** + * Update the display name of the contact. + */ + longDesc: () => LocalizedString + } + description: { + /** + * Description + */ + displayName: () => LocalizedString + /** + * The new description + */ + shortDesc: () => LocalizedString + /** + * Update the description or notes about the contact. This can include any relevant context about the person. + */ + longDesc: () => LocalizedString + } + links: { + /** + * Links + */ + displayName: () => LocalizedString + /** + * Associated URLs + */ + shortDesc: () => LocalizedString + /** + * A list of URLs associated with this contact, such as social media profiles or company websites. + */ + longDesc: () => LocalizedString + } + customFields: { + /** + * Custom Fields + */ + displayName: () => LocalizedString + /** + * Updated custom field values + */ + shortDesc: () => LocalizedString + /** + * Update custom field values for the contact. + */ + longDesc: () => LocalizedString + } + } } - invoice_id_patch: { + delete_contact: { groups: { /** - * Sales & Billing + * Contacts */ '0': () => LocalizedString } /** - * Update Invoice + * Delete Contact */ displayName: () => LocalizedString /** - * Updates an existing invoice. + * Delete a contact */ shortDesc: () => LocalizedString /** - * Allows the user to update details of a specific invoice by its ID. + * Delete a contact from Front. This action is permanent and will remove all associated data. Conversations with this contact will remain but will no longer be linked to the contact. */ longDesc: () => LocalizedString + options: { + contactId: { + /** + * Contact + */ + displayName: () => LocalizedString + /** + * The contact to delete + */ + shortDesc: () => LocalizedString + /** + * Select or enter the ID of the contact you want to delete. + */ + longDesc: () => LocalizedString + } + } } - invoice_id_delete: { + list_contact_conversations: { groups: { /** - * Sales & Billing + * Contacts */ '0': () => LocalizedString } /** - * Delete Invoice + * List Contact Conversations */ displayName: () => LocalizedString /** - * Deletes a specific invoice. + * List conversations for a contact */ shortDesc: () => LocalizedString /** - * Removes an invoice record from NetSuite based on its ID. + * Retrieve a list of all conversations associated with a specific contact. Conversations are returned in reverse chronological order (newest first). This helps you see the full communication history with a contact. */ longDesc: () => LocalizedString + options: { + contactId: { + /** + * Contact + */ + displayName: () => LocalizedString + /** + * The contact to list conversations for + */ + shortDesc: () => LocalizedString + /** + * Select or enter the ID of the contact whose conversations you want to retrieve. + */ + longDesc: () => LocalizedString + } + limit: { + /** + * Limit + */ + displayName: () => LocalizedString + /** + * Maximum number of conversations to return + */ + shortDesc: () => LocalizedString + /** + * The maximum number of conversation records to return. Default is 50. + */ + longDesc: () => LocalizedString + } + } } - journalEntry_get: { + list_contact_notes: { groups: { /** - * Accounting + * Contacts */ '0': () => LocalizedString + /** + * Notes + */ + '1': () => LocalizedString } /** - * Get List of Journal Entries + * List Contact Notes */ displayName: () => LocalizedString /** - * Retrieve a list of journal entries. + * List notes for a contact */ shortDesc: () => LocalizedString /** - * Fetches a list of journal entries based on specified filters. + * Retrieve all notes that have been added to a specific contact. Notes are internal annotations visible only to your team, useful for documenting important information about contacts. */ longDesc: () => LocalizedString + options: { + contactId: { + /** + * Contact + */ + displayName: () => LocalizedString + /** + * The contact to list notes for + */ + shortDesc: () => LocalizedString + /** + * Select or enter the ID of the contact whose notes you want to retrieve. + */ + longDesc: () => LocalizedString + } + limit: { + /** + * Limit + */ + displayName: () => LocalizedString + /** + * Maximum number of notes to return + */ + shortDesc: () => LocalizedString + /** + * The maximum number of note records to return. Default is 50. + */ + longDesc: () => LocalizedString + } + } } - journalEntry_post: { + add_contact_note: { groups: { /** - * Accounting + * Contacts */ '0': () => LocalizedString + /** + * Notes + */ + '1': () => LocalizedString } /** - * Create Journal Entry + * Add Note to Contact */ displayName: () => LocalizedString /** - * Creates a new journal entry. + * Add a note to a contact */ shortDesc: () => LocalizedString /** - * Allows the user to create a new journal entry record in NetSuite. + * Add a new note to a contact in Front. Notes are internal annotations that are only visible to your team members. Use notes to document important information, context, or reminders about a contact. */ longDesc: () => LocalizedString + options: { + contactId: { + /** + * Contact + */ + displayName: () => LocalizedString + /** + * The contact to add the note to + */ + shortDesc: () => LocalizedString + /** + * Select or enter the ID of the contact you want to add a note to. + */ + longDesc: () => LocalizedString + } + body: { + /** + * Note Body + */ + displayName: () => LocalizedString + /** + * The content of the note + */ + shortDesc: () => LocalizedString + /** + * The text content of the note. This will be visible to all team members who can access the contact. + */ + longDesc: () => LocalizedString + } + authorId: { + /** + * Author + */ + displayName: () => LocalizedString + /** + * The teammate who authored the note + */ + shortDesc: () => LocalizedString + /** + * Select the teammate who will be recorded as the author of this note. This is a required field. + */ + longDesc: () => LocalizedString + } + } } - journalEntry_id_get: { + list_contact_lists: { groups: { /** - * Accounting + * Contact Lists */ '0': () => LocalizedString } /** - * Get Journal Entry + * List Contact Lists */ displayName: () => LocalizedString /** - * Retrieve details of a specific journal entry. + * Retrieve all contact lists */ shortDesc: () => LocalizedString /** - * Fetches detailed information of a single journal entry by its ID. + * Retrieve a list of all contact lists in your Front workspace. Contact lists are used to organize contacts into groups for easier management, such as for marketing campaigns or customer segments. */ longDesc: () => LocalizedString + options: { + limit: { + /** + * Limit + */ + displayName: () => LocalizedString + /** + * Maximum number of contact lists to return + */ + shortDesc: () => LocalizedString + /** + * The maximum number of contact list records to return. Default is 50. + */ + longDesc: () => LocalizedString + } + } } - journal_entry_id_patch: { + create_contact_list: { groups: { /** - * Accounting + * Contact Lists */ '0': () => LocalizedString } /** - * Update Journal Entry + * Create Contact List */ displayName: () => LocalizedString /** - * Updates an existing journal entry. + * Create a new contact list */ shortDesc: () => LocalizedString /** - * Allows the user to update details of a specific journal entry by its ID. + * Create a new contact list in Front. Contact lists help you organize contacts into logical groups. The list will be created in the oldest active workspace that your token has access to. */ longDesc: () => LocalizedString + options: { + name: { + /** + * Name + */ + displayName: () => LocalizedString + /** + * The contact list name + */ + shortDesc: () => LocalizedString + /** + * The name of the contact list. Choose a descriptive name that clearly identifies the purpose of the list. + */ + longDesc: () => LocalizedString + } + description: { + /** + * Description + */ + displayName: () => LocalizedString + /** + * A description of the contact list + */ + shortDesc: () => LocalizedString + /** + * An optional description explaining the purpose of the contact list or the criteria for contacts in it. + */ + longDesc: () => LocalizedString + } + } } - journalEntry_id_delete: { + delete_contact_list: { groups: { /** - * Accounting + * Contact Lists */ '0': () => LocalizedString } /** - * Delete Journal Entry + * Delete Contact List */ displayName: () => LocalizedString /** - * Deletes a specific journal entry. + * Delete a contact list */ shortDesc: () => LocalizedString /** - * Removes a journal entry record from NetSuite based on its ID. + * Delete a contact list from Front. This removes the list but does not delete the contacts that were in it. The contacts will remain in your workspace. */ longDesc: () => LocalizedString + options: { + contactListId: { + /** + * Contact List + */ + displayName: () => LocalizedString + /** + * The contact list to delete + */ + shortDesc: () => LocalizedString + /** + * Select or enter the ID of the contact list you want to delete. + */ + longDesc: () => LocalizedString + } + } } - purchaseOrder_get: { + list_contacts_in_contact_list: { groups: { /** - * Procurement + * Contact Lists */ '0': () => LocalizedString } /** - * Get List of Purchase Orders + * List Contacts in Contact List */ displayName: () => LocalizedString /** - * Retrieve a list of purchase orders. + * List contacts in a specific contact list */ shortDesc: () => LocalizedString /** - * Fetches a list of purchase orders based on specified filters. + * Retrieve all contacts that belong to a specific contact list. This helps you see which contacts are included in a particular list or segment. */ longDesc: () => LocalizedString + options: { + contactListId: { + /** + * Contact List + */ + displayName: () => LocalizedString + /** + * The contact list to retrieve contacts from + */ + shortDesc: () => LocalizedString + /** + * Select or enter the ID of the contact list whose contacts you want to see. + */ + longDesc: () => LocalizedString + } + limit: { + /** + * Limit + */ + displayName: () => LocalizedString + /** + * Maximum number of contacts to return + */ + shortDesc: () => LocalizedString + /** + * The maximum number of contact records to return. Default is 50. + */ + longDesc: () => LocalizedString + } + } } - purchaseOrder_post: { + add_contacts_to_contact_list: { groups: { /** - * Procurement + * Contact Lists */ '0': () => LocalizedString } /** - * Create Purchase Order + * Add Contacts to Contact List */ displayName: () => LocalizedString /** - * Creates a new purchase order. + * Add contacts to a contact list */ shortDesc: () => LocalizedString /** - * Allows the user to create a new purchase order record in NetSuite. + * Add one or more contacts to a contact list in Front. This helps you organize contacts into logical groups for easier management and targeted communication. */ longDesc: () => LocalizedString options: { - entity: { + contactListId: { /** - * Vendor + * Contact List */ displayName: () => LocalizedString /** - * The vendor for the purchase order + * The contact list to add contacts to */ shortDesc: () => LocalizedString /** - * The vendor for the purchase order + * Select or enter the ID of the contact list where you want to add contacts. */ longDesc: () => LocalizedString } - employee: { + contactIds: { /** - * Employee (Requestor) + * Contacts */ displayName: () => LocalizedString /** - * The employee who requested the purchase order + * The contacts to add */ shortDesc: () => LocalizedString /** - * The employee who requested the purchase order + * Select one or more contacts to add to the contact list. */ longDesc: () => LocalizedString } } } - purchaseOrder_id_get: { + remove_contacts_from_contact_list: { groups: { /** - * Procurement + * Contact Lists */ '0': () => LocalizedString } /** - * Get Purchase Order + * Remove Contacts from Contact List */ displayName: () => LocalizedString /** - * Retrieve details of a specific purchase order. + * Remove contacts from a contact list */ shortDesc: () => LocalizedString /** - * Fetches detailed information of a single purchase order by its ID. + * Remove one or more contacts from a contact list in Front. This removes the contacts from the list but does not delete the contacts themselves. */ longDesc: () => LocalizedString + options: { + contactListId: { + /** + * Contact List + */ + displayName: () => LocalizedString + /** + * The contact list to remove contacts from + */ + shortDesc: () => LocalizedString + /** + * Select or enter the ID of the contact list from which you want to remove contacts. + */ + longDesc: () => LocalizedString + } + contactIds: { + /** + * Contacts + */ + displayName: () => LocalizedString + /** + * The contacts to remove + */ + shortDesc: () => LocalizedString + /** + * Select one or more contacts to remove from the contact list. + */ + longDesc: () => LocalizedString + } + } } - purchaseOrder_id_patch: { + list_conversations: { groups: { /** - * Procurement + * Conversations */ '0': () => LocalizedString } /** - * Update Purchase Order + * List Conversations */ displayName: () => LocalizedString /** - * Updates an existing purchase order. + * Retrieve a list of conversations */ shortDesc: () => LocalizedString /** - * Allows the user to update details of a specific purchase order by its ID. + * Retrieve a list of conversations in your Front workspace. Conversations are returned in reverse chronological order (most recently updated first). You can filter by inbox or status. */ longDesc: () => LocalizedString options: { - entity: { + inboxId: { /** - * Vendor + * Inbox */ displayName: () => LocalizedString /** - * The vendor for the purchase order + * Filter by inbox */ shortDesc: () => LocalizedString /** - * The vendor for the purchase order + * Optionally filter conversations to a specific inbox. Leave empty to retrieve conversations from all inboxes. */ longDesc: () => LocalizedString } - employee: { + status: { /** - * Employee (Requestor) + * Status */ displayName: () => LocalizedString /** - * The employee who requested the purchase order + * Filter by conversation status */ shortDesc: () => LocalizedString /** - * The employee who requested the purchase order + * Optionally filter conversations by their status: open, archived, deleted, or spam. + */ + longDesc: () => LocalizedString + } + limit: { + /** + * Limit + */ + displayName: () => LocalizedString + /** + * Maximum number of conversations to return + */ + shortDesc: () => LocalizedString + /** + * The maximum number of conversation records to return. Default is 50. */ longDesc: () => LocalizedString } } } - purchaseOrder_id_delete: { - groups: { - /** - * Procurement - */ - '0': () => LocalizedString - } - /** - * Delete Purchase Order - */ - displayName: () => LocalizedString - /** - * Deletes a specific purchase order. - */ - shortDesc: () => LocalizedString - /** - * Removes a purchase order record from NetSuite based on its ID. - */ - longDesc: () => LocalizedString - } - salesOrder_get: { - groups: { - /** - * Sales & Billing - */ - '0': () => LocalizedString - } - /** - * Get List of Sales Orders - */ - displayName: () => LocalizedString - /** - * Retrieve a list of sales orders. - */ - shortDesc: () => LocalizedString - /** - * Fetches a list of sales orders based on specified filters. - */ - longDesc: () => LocalizedString - } - salesOrder_post: { + get_conversation: { groups: { /** - * Sales & Billing + * Conversations */ '0': () => LocalizedString } /** - * Create Sales Order + * Get Conversation */ displayName: () => LocalizedString /** - * Creates a new sales order. + * Retrieve a single conversation by ID */ shortDesc: () => LocalizedString /** - * Allows the user to create a new sales order record in NetSuite. + * Retrieve the full details of a specific conversation from Front by its ID. Returns all conversation data including subject, status, assignee, tags, and custom fields. */ longDesc: () => LocalizedString options: { - entity: { + conversationId: { /** - * Customer + * Conversation */ displayName: () => LocalizedString /** - * The customer for the sales order + * The conversation to retrieve */ shortDesc: () => LocalizedString /** - * The customer for the sales order + * Select or enter the ID of the conversation you want to retrieve. Conversation IDs start with "cnv_". */ longDesc: () => LocalizedString } } } - customer_post_simplified: { + search_conversations: { groups: { /** - * CRM + * Conversations */ '0': () => LocalizedString } /** - * Create Customer (Simplified) + * Search Conversations */ displayName: () => LocalizedString /** - * Creates a new customer with simplified options. + * Search for conversations */ shortDesc: () => LocalizedString /** - * Creates a new customer in NetSuite with simplified fields + * Search for conversations in Front using a search query. Returns matching conversations in descending order by last activity along with a count of total matches. */ longDesc: () => LocalizedString options: { - entityStatus: { + query: { /** - * Status + * Search Query */ displayName: () => LocalizedString /** - * Customer status + * The search query */ shortDesc: () => LocalizedString /** - * The status of the customer (e.g., Active, Inactive) + * The search query to find conversations. You can search by keywords, email addresses, or use Front search syntax for advanced queries. */ longDesc: () => LocalizedString } - subsidiary: { + limit: { /** - * Subsidiary + * Limit */ displayName: () => LocalizedString /** - * The subsidiary for the customer + * Maximum number of conversations to return */ shortDesc: () => LocalizedString /** - * The subsidiary for the customer + * The maximum number of conversation records to return. Default is 25. */ longDesc: () => LocalizedString } } } - salesOrder_post_simplified: { + update_conversation: { groups: { /** - * Sales & Billing + * Conversations */ '0': () => LocalizedString } /** - * Create Sales Order (Simplified) + * Update Conversation */ displayName: () => LocalizedString /** - * Creates a new sales order with simplified options. + * Update a conversation */ shortDesc: () => LocalizedString /** - * Creates a new customer sales order in NetSuite with only the most commonly used fields, making order creation faster and more straightforward. + * Update the properties of an existing conversation in Front. You can change the status, move to a different inbox, or update custom fields. */ longDesc: () => LocalizedString options: { - entity: { + conversationId: { /** - * Customer + * Conversation */ displayName: () => LocalizedString /** - * Customer for this order + * The conversation to update */ shortDesc: () => LocalizedString /** - * The NetSuite internal ID of the customer this sales order is for. Must be an existing customer record in your NetSuite account. + * Select or enter the ID of the conversation you want to update. */ longDesc: () => LocalizedString } - memo: { + status: { /** - * Memo + * Status */ displayName: () => LocalizedString /** - * Order notes + * The new status */ shortDesc: () => LocalizedString /** - * Additional notes or information about this order. This will appear in the memo field on the sales order record. + * Update the conversation status to open, archived, deleted, or spam. */ longDesc: () => LocalizedString } - orderStatus: { + inboxId: { /** - * Order Status + * Inbox */ displayName: () => LocalizedString /** - * Current status of order + * Move to inbox */ shortDesc: () => LocalizedString /** - * The processing status of this sales order (e.g., Pending Approval, Pending Fulfillment). Controls workflow and availability for further processing. + * Move the conversation to a different inbox. */ longDesc: () => LocalizedString } - item: { + customFields: { /** - * Order Items + * Custom Fields */ displayName: () => LocalizedString /** - * Products or services being ordered + * Updated custom field values */ shortDesc: () => LocalizedString /** - * List of items being purchased in this order. Each item requires an ID and amount + * Update custom field values for the conversation. */ longDesc: () => LocalizedString - type: { - element_type: { - fields: { - id: { - /** - * Item ID - */ - displayName: () => LocalizedString - /** - * NetSuite item identifier - */ - shortDesc: () => LocalizedString - /** - * The internal ID of the inventory item, non-inventory item, service, or other item type in NetSuite that is being ordered. - */ - longDesc: () => LocalizedString - } - quantity: { - /** - * Quantity - */ - displayName: () => LocalizedString - /** - * Number of units - */ - shortDesc: () => LocalizedString - /** - * The number of units being ordered for this line item. For services, this is typically hours or days. - */ - longDesc: () => LocalizedString - } - amount: { - /** - * Amount Override - */ - displayName: () => LocalizedString - /** - * Custom price (optional) - */ - shortDesc: () => LocalizedString - /** - * Optional custom price override for this line item. If provided, overrides the standard price calculation (quantity × rate). Leave empty to use standard pricing from the price level assigned to the customer. - */ - longDesc: () => LocalizedString - } - } - } - } } } } - salesOrder_id_get: { + update_conversation_assignee: { groups: { /** - * Sales & Billing + * Conversations */ '0': () => LocalizedString } /** - * Get Sales Order + * Update Conversation Assignee */ displayName: () => LocalizedString /** - * Retrieve details of a specific sales order. + * Assign or unassign a conversation */ shortDesc: () => LocalizedString /** - * Fetches detailed information of a single sales order by its ID. + * Assign a conversation to a teammate or unassign it. Assigning conversations helps route work to the right team members and track ownership. */ longDesc: () => LocalizedString + options: { + conversationId: { + /** + * Conversation + */ + displayName: () => LocalizedString + /** + * The conversation to update + */ + shortDesc: () => LocalizedString + /** + * Select or enter the ID of the conversation you want to assign. + */ + longDesc: () => LocalizedString + } + assigneeId: { + /** + * Assignee + */ + displayName: () => LocalizedString + /** + * The teammate to assign + */ + shortDesc: () => LocalizedString + /** + * Select a teammate to assign the conversation to. Leave empty to unassign the conversation. + */ + longDesc: () => LocalizedString + } + } } - salesOrder_id_patch: { + add_conversation_tag: { groups: { /** - * Sales & Billing + * Conversations */ '0': () => LocalizedString + /** + * Tags + */ + '1': () => LocalizedString } /** - * Update Sales Order + * Add Tag to Conversation */ displayName: () => LocalizedString /** - * Updates an existing sales order. + * Add tags to a conversation */ shortDesc: () => LocalizedString /** - * Allows the user to update details of a specific sales order by its ID. + * Add one or more tags to a conversation in Front. Tags help categorize and organize conversations for easier filtering and reporting. */ longDesc: () => LocalizedString options: { - entity: { + conversationId: { /** - * Customer + * Conversation */ displayName: () => LocalizedString /** - * The customer for the sales order + * The conversation to tag */ shortDesc: () => LocalizedString /** - * The customer for the sales order + * Select or enter the ID of the conversation you want to add tags to. + */ + longDesc: () => LocalizedString + } + tagIds: { + /** + * Tags + */ + displayName: () => LocalizedString + /** + * The tags to add + */ + shortDesc: () => LocalizedString + /** + * Select one or more tags to add to the conversation. */ longDesc: () => LocalizedString } } } - salesOrder_id_delete: { + remove_conversation_tag: { groups: { /** - * Sales & Billing + * Conversations */ '0': () => LocalizedString - } - /** - * Delete Sales Order - */ - displayName: () => LocalizedString - /** - * Deletes a specific sales order. - */ - shortDesc: () => LocalizedString - /** - * Removes a sales order record from NetSuite based on its ID. - */ - longDesc: () => LocalizedString - } - vendor_get: { - groups: { /** - * Procurement + * Tags */ - '0': () => LocalizedString + '1': () => LocalizedString } /** - * Get List of Vendors + * Remove Tag from Conversation */ displayName: () => LocalizedString /** - * Retrieve a list of vendors. + * Remove tags from a conversation */ shortDesc: () => LocalizedString /** - * Fetches a list of vendors based on specified filters. + * Remove one or more tags from a conversation in Front. This removes the tag association but does not delete the tags themselves. */ longDesc: () => LocalizedString + options: { + conversationId: { + /** + * Conversation + */ + displayName: () => LocalizedString + /** + * The conversation to remove tags from + */ + shortDesc: () => LocalizedString + /** + * Select or enter the ID of the conversation you want to remove tags from. + */ + longDesc: () => LocalizedString + } + tagIds: { + /** + * Tags + */ + displayName: () => LocalizedString + /** + * The tags to remove + */ + shortDesc: () => LocalizedString + /** + * Select one or more tags to remove from the conversation. + */ + longDesc: () => LocalizedString + } + } } - vendor_post: { + add_conversation_followers: { groups: { /** - * Procurement + * Conversations */ '0': () => LocalizedString } /** - * Create Vendor + * Add Conversation Followers */ displayName: () => LocalizedString /** - * Creates a new vendor. + * Add followers to a conversation */ shortDesc: () => LocalizedString /** - * Allows the user to create a new vendor record in NetSuite. + * Add teammates as followers to a conversation. Followers receive notifications about conversation updates without being the assignee. */ longDesc: () => LocalizedString + options: { + conversationId: { + /** + * Conversation + */ + displayName: () => LocalizedString + /** + * The conversation to add followers to + */ + shortDesc: () => LocalizedString + /** + * Select or enter the ID of the conversation you want to add followers to. + */ + longDesc: () => LocalizedString + } + teammateIds: { + /** + * Teammates + */ + displayName: () => LocalizedString + /** + * The teammates to add as followers + */ + shortDesc: () => LocalizedString + /** + * Select one or more teammates to add as followers to the conversation. + */ + longDesc: () => LocalizedString + } + } } - vendor_id_get: { + get_message: { groups: { /** - * Procurement + * Messages */ '0': () => LocalizedString } /** - * Get Vendor + * Get Message */ displayName: () => LocalizedString /** - * Retrieve details of a specific vendor. + * Retrieve a single message by ID */ shortDesc: () => LocalizedString /** - * Fetches detailed information of a single vendor by its ID. + * Retrieve the full details of a specific message from Front by its ID. Returns all message data including content, author, recipients, and attachments. */ longDesc: () => LocalizedString + options: { + messageId: { + /** + * Message ID + */ + displayName: () => LocalizedString + /** + * The message to retrieve + */ + shortDesc: () => LocalizedString + /** + * Enter the ID of the message you want to retrieve. Message IDs start with "msg_". + */ + longDesc: () => LocalizedString + } + } } - vendor_id_patch: { + list_conversation_messages: { groups: { /** - * Procurement + * Conversations */ '0': () => LocalizedString + /** + * Messages + */ + '1': () => LocalizedString } /** - * Update Vendor + * List Conversation Messages */ displayName: () => LocalizedString /** - * Updates an existing vendor. + * List messages in a conversation */ shortDesc: () => LocalizedString /** - * Allows the user to update details of a specific vendor by its ID. + * Retrieve a list of all messages in a specific conversation. Messages are returned in reverse chronological order (newest first). This provides the full message history of a conversation. */ longDesc: () => LocalizedString + options: { + conversationId: { + /** + * Conversation + */ + displayName: () => LocalizedString + /** + * The conversation to list messages from + */ + shortDesc: () => LocalizedString + /** + * Select or enter the ID of the conversation whose messages you want to retrieve. + */ + longDesc: () => LocalizedString + } + limit: { + /** + * Limit + */ + displayName: () => LocalizedString + /** + * Maximum number of messages to return + */ + shortDesc: () => LocalizedString + /** + * The maximum number of message records to return. Default is 50. + */ + longDesc: () => LocalizedString + } + } } - vendor_id_delete: { + create_message_reply: { groups: { /** - * Procurement + * Conversations */ '0': () => LocalizedString + /** + * Messages + */ + '1': () => LocalizedString } /** - * Delete Vendor - */ - displayName: () => LocalizedString - /** - * Deletes a specific vendor. - */ - shortDesc: () => LocalizedString - /** - * Removes a vendor record from NetSuite based on its ID. - */ - longDesc: () => LocalizedString - } - } - expressions: { - '&&': { - /** - * And - */ - displayName: () => LocalizedString - /** - * Logical AND operator - */ - shortDesc: () => LocalizedString - /** - * Combines multiple conditions where all must be true - */ - longDesc: () => LocalizedString - } - '||': { - /** - * Or - */ - displayName: () => LocalizedString - /** - * Logical OR operator - */ - shortDesc: () => LocalizedString - /** - * Combines multiple conditions where at least one must be true - */ - longDesc: () => LocalizedString - } - '==': { - /** - * Equals - */ - displayName: () => LocalizedString - /** - * Field equals value - */ - shortDesc: () => LocalizedString - /** - * Matches records where the field equals the specified value - */ - longDesc: () => LocalizedString - } - '!=': { - /** - * Not Equals - */ - displayName: () => LocalizedString - /** - * Field does not equal value - */ - shortDesc: () => LocalizedString - /** - * Matches records where the field does not equal the specified value - */ - longDesc: () => LocalizedString - } - '>': { - /** - * Greater Than - */ - displayName: () => LocalizedString - /** - * Field is greater than value - */ - shortDesc: () => LocalizedString - /** - * Matches records where the field value is greater than the specified value - */ - longDesc: () => LocalizedString - } - '>=': { - /** - * Greater Than or Equal - */ - displayName: () => LocalizedString - /** - * Field is greater than or equal to value - */ - shortDesc: () => LocalizedString - /** - * Matches records where the field value is greater than or equal to the specified value - */ - longDesc: () => LocalizedString - } - '<': { - /** - * Less Than - */ - displayName: () => LocalizedString - /** - * Field is less than value - */ - shortDesc: () => LocalizedString - /** - * Matches records where the field value is less than the specified value - */ - longDesc: () => LocalizedString - } - '<=': { - /** - * Less Than or Equal - */ - displayName: () => LocalizedString - /** - * Field is less than or equal to value - */ - shortDesc: () => LocalizedString - /** - * Matches records where the field value is less than or equal to the specified value - */ - longDesc: () => LocalizedString - } - 'is-set': { - /** - * Is Set - */ - displayName: () => LocalizedString - /** - * Field has a value - */ - shortDesc: () => LocalizedString - /** - * Matches records where the field has a value (is not null) - */ - longDesc: () => LocalizedString - } - 'is-not-set': { - /** - * Is Not Set - */ - displayName: () => LocalizedString - /** - * Field has no value - */ - shortDesc: () => LocalizedString - /** - * Matches records where the field has no value (is null) - */ - longDesc: () => LocalizedString - } - contains: { - /** - * Contains - */ - displayName: () => LocalizedString - /** - * Field contains value - */ - shortDesc: () => LocalizedString - /** - * Matches records where the field contains the specified substring - */ - longDesc: () => LocalizedString - } - 'starts-with': { - /** - * Starts With - */ - displayName: () => LocalizedString - /** - * Field starts with value - */ - shortDesc: () => LocalizedString - /** - * Matches records where the field value starts with the specified prefix - */ - longDesc: () => LocalizedString - } - 'ends-with': { - /** - * Ends With - */ - displayName: () => LocalizedString - /** - * Field ends with value - */ - shortDesc: () => LocalizedString - /** - * Matches records where the field value ends with the specified suffix - */ - longDesc: () => LocalizedString - } - } - searchOptions: { - orderBy: { - /** - * Order By - */ - displayName: () => LocalizedString - /** - * Sort results by a specific field - */ - shortDesc: () => LocalizedString - /** - * Define the field and direction to sort search results - */ - longDesc: () => LocalizedString - type: { - fields: { - field: { - /** - * Field - */ - displayName: () => LocalizedString - /** - * The field to sort by - */ - shortDesc: () => LocalizedString - /** - * The name of the field to use for sorting results - */ - longDesc: () => LocalizedString - } - direction: { - /** - * Direction - */ - displayName: () => LocalizedString - /** - * Sort direction - */ - shortDesc: () => LocalizedString - /** - * The direction to sort results (ascending or descending) - */ - longDesc: () => LocalizedString - } - } - } - } - } - } - NocoDB: { - /** - * NocoDB - */ - displayName: () => LocalizedString - groups: { - /** - * Spreadsheets & Data Tables - */ - '0': () => LocalizedString - /** - * Databases & Backend Services - */ - '1': () => LocalizedString - } - /** - * Connect to NocoDB to manage your database tables and records with powerful automation - */ - shortDesc: () => LocalizedString - /** - * The NocoDB integration provides comprehensive access to your NocoDB database operations. Create, read, update, and delete records in your tables, and monitor new entries with real-time triggers. Whether you need to manage data, filter results, or track new records, this integration streamlines your NocoDB workflow automation and database management. - */ - longDesc: () => LocalizedString - connectionMessage: { - /** - * Connect to NocoDB - */ - title: () => LocalizedString - /** - * To connect to NocoDB, you will need your **NocoDB URL** and an **API Token**. - - ## Getting Your API Token - - 1. Log in to your NocoDB instance - 2. Click on your **profile icon** in the top right corner - 3. Select **Copy Auth Token** from the dropdown menu - 4. Alternatively, go to **Account Settings** → **Tokens** to create a new API token - - ## Connection Details - - ### NocoDB URL - The base URL of your NocoDB instance: - - **NocoDB Cloud**: Use `https://app.nocodb.com` - - **Self-hosted**: Use your instance URL (e.g., `https://nocodb.yourcompany.com`) - - ### API Token - Your API token that grants access to NocoDB. Tokens can be created in your account settings and provide access to all operations within the authorized workspaces and bases. - - **Note:** API tokens provide full access to the workspaces and bases you have permissions for. Ensure you keep your tokens secure and only use them in trusted environments. - */ - content: () => LocalizedString - } - triggers: { - new_document: { - /** - * New Row + * Reply to Conversation */ displayName: () => LocalizedString /** - * Trigger when a new row is added to a NocoDB table + * Send a reply message to a conversation */ shortDesc: () => LocalizedString /** - * Monitors a NocoDB table for new rows and triggers when new records are detected. You can optionally filter which rows trigger the event using a where clause. + * Reply to a conversation by sending a message. The message will be appended to the conversation and sent to the recipients. You can optionally save it as a draft instead of sending immediately. */ longDesc: () => LocalizedString options: { - workspaceId: { - /** - * Workspace - */ - displayName: () => LocalizedString - /** - * The NocoDB workspace containing the base - */ - shortDesc: () => LocalizedString - /** - * Select the NocoDB workspace containing the base with the table you want to monitor. - */ - longDesc: () => LocalizedString - } - baseId: { + conversationId: { /** - * Base + * Conversation */ displayName: () => LocalizedString /** - * The NocoDB base containing the table + * The conversation to reply to */ shortDesc: () => LocalizedString /** - * Select the NocoDB base (project) containing the table you want to monitor for new rows. + * Select or enter the ID of the conversation you want to reply to. */ longDesc: () => LocalizedString } - table: { + body: { /** - * Table + * Message Body */ displayName: () => LocalizedString /** - * The table to monitor for new rows + * The content of the reply */ shortDesc: () => LocalizedString /** - * Select the NocoDB table to monitor. The trigger will fire when new rows are added to this table. + * The HTML content of the reply message. This is the main body text that will be sent to recipients. */ longDesc: () => LocalizedString } - where: { + subject: { /** - * Where Filter + * Subject */ displayName: () => LocalizedString /** - * Optional filter for new rows + * Optional subject line */ shortDesc: () => LocalizedString /** - * Optionally specify a filter using NocoDB where syntax (e.g., "(Status,eq,Active)") to only trigger for rows matching specific criteria. + * An optional subject line for the reply. If not provided, the original conversation subject may be used. */ longDesc: () => LocalizedString } - } - } - } - searchOptions: { - orderBy: { - /** - * Order By - */ - displayName: () => LocalizedString - /** - * Sort results by a specific field - */ - shortDesc: () => LocalizedString - /** - * Define the field and direction to sort search results - */ - longDesc: () => LocalizedString - type: { - fields: { - field: { - /** - * Field - */ - displayName: () => LocalizedString - /** - * The field to sort by - */ - shortDesc: () => LocalizedString - /** - * The name of the field to use for sorting results - */ - longDesc: () => LocalizedString - } - direction: { - /** - * Direction - */ - displayName: () => LocalizedString - /** - * Sort direction - */ - shortDesc: () => LocalizedString - /** - * The direction to sort results (ascending or descending) - */ - longDesc: () => LocalizedString - } - } - } - } - } - actions: { - count_records: { - /** - * Count Records - */ - displayName: () => LocalizedString - /** - * Get the count of records in a table - */ - shortDesc: () => LocalizedString - /** - * Returns the total number of records in a NocoDB table. You can optionally filter the count using a where clause to count only records matching specific criteria. - */ - longDesc: () => LocalizedString - options: { - workspaceId: { + to: { /** - * Workspace + * To */ displayName: () => LocalizedString /** - * The NocoDB workspace containing the base + * Additional recipients */ shortDesc: () => LocalizedString /** - * Select the NocoDB workspace containing the base with the table. + * A list of email addresses to send the reply to. These are added to the existing conversation recipients. */ longDesc: () => LocalizedString } - baseId: { + cc: { /** - * Base + * CC */ displayName: () => LocalizedString /** - * The NocoDB base containing the table + * CC recipients */ shortDesc: () => LocalizedString /** - * Select the NocoDB base (project) containing the table. + * A list of email addresses to CC on the reply. */ longDesc: () => LocalizedString } - table: { + bcc: { /** - * Table + * BCC */ displayName: () => LocalizedString /** - * The table to count records from + * BCC recipients */ shortDesc: () => LocalizedString /** - * Select the NocoDB table to count records from. + * A list of email addresses to BCC on the reply. */ longDesc: () => LocalizedString } - where: { + isDraft: { /** - * Where Filter + * Save as Draft */ displayName: () => LocalizedString /** - * Optional filter to count specific records + * Save as draft instead of sending */ shortDesc: () => LocalizedString /** - * Optionally specify a filter using NocoDB where syntax (e.g., "(Status,eq,Active)") to only count records matching specific criteria. + * If true, the message will be saved as a draft instead of being sent immediately. Default is false. */ longDesc: () => LocalizedString } } } - upload_attachment: { + add_conversation_comment: { + groups: { + /** + * Conversations + */ + '0': () => LocalizedString + /** + * Comments + */ + '1': () => LocalizedString + } /** - * Upload Attachment + * Add Comment to Conversation */ displayName: () => LocalizedString /** - * Upload a file to an attachment field + * Add an internal comment to a conversation */ shortDesc: () => LocalizedString /** - * Uploads a file to a specific attachment field in a NocoDB record. The file will be stored in NocoDB and associated with the specified record. + * Add an internal comment to a conversation in Front. Comments are private messages visible only to your teammates and are never sent to external contacts. Use comments for internal notes, discussions, or context sharing. */ longDesc: () => LocalizedString options: { - workspaceId: { - /** - * Workspace - */ - displayName: () => LocalizedString - /** - * The NocoDB workspace containing the base - */ - shortDesc: () => LocalizedString - /** - * Select the NocoDB workspace containing the base with the table. - */ - longDesc: () => LocalizedString - } - baseId: { - /** - * Base - */ - displayName: () => LocalizedString - /** - * The NocoDB base containing the table - */ - shortDesc: () => LocalizedString - /** - * Select the NocoDB base (project) containing the table. - */ - longDesc: () => LocalizedString - } - table: { + conversationId: { /** - * Table + * Conversation */ displayName: () => LocalizedString /** - * The table containing the record + * The conversation to add a comment to */ shortDesc: () => LocalizedString /** - * Select the NocoDB table containing the record to attach the file to. + * Select or enter the ID of the conversation you want to add a comment to. */ longDesc: () => LocalizedString } - recordId: { + body: { /** - * Record ID + * Comment Body */ displayName: () => LocalizedString /** - * The ID of the record to attach the file to + * The content of the comment */ shortDesc: () => LocalizedString /** - * Specify the ID of the record where the file should be uploaded. + * The text content of the internal comment. This will be visible to all teammates who can access the conversation. */ longDesc: () => LocalizedString } - attachmentField: { + } + } + list_conversation_comments: { + groups: { + /** + * Conversations + */ + '0': () => LocalizedString + /** + * Comments + */ + '1': () => LocalizedString + } + /** + * List Conversation Comments + */ + displayName: () => LocalizedString + /** + * List comments in a conversation + */ + shortDesc: () => LocalizedString + /** + * Retrieve a list of all internal comments in a specific conversation. Comments are returned in reverse chronological order (newest first). This provides the full internal discussion history of a conversation. + */ + longDesc: () => LocalizedString + options: { + conversationId: { /** - * Attachment Field + * Conversation */ displayName: () => LocalizedString /** - * The attachment field to upload to + * The conversation to list comments from */ shortDesc: () => LocalizedString /** - * Select the attachment field in the table where the file will be stored. + * Select or enter the ID of the conversation whose comments you want to retrieve. */ longDesc: () => LocalizedString } - file: { + limit: { /** - * File + * Limit */ displayName: () => LocalizedString /** - * The file to upload + * Maximum number of comments to return */ shortDesc: () => LocalizedString /** - * The file to upload to the attachment field. Supports various file types including images, documents, and more. + * The maximum number of comment records to return. Default is 50. */ longDesc: () => LocalizedString } } - } - link_records: { + } + } + triggers: { + new_conversation: { + groups: { + /** + * Conversations + */ + '0': () => LocalizedString + } /** - * Link Records + * New Conversation */ displayName: () => LocalizedString /** - * Create relationships between records + * Triggers when a new conversation is created */ shortDesc: () => LocalizedString /** - * Links records from another table to a record via a link field. This creates a relationship between the records without affecting existing links. + * This trigger fires whenever a new conversation is created in Front. You can optionally filter by inbox or status to only trigger for specific types of conversations. */ longDesc: () => LocalizedString options: { - workspaceId: { + inboxId: { /** - * Workspace + * Inbox */ displayName: () => LocalizedString /** - * The NocoDB workspace containing the base + * Filter by inbox */ shortDesc: () => LocalizedString /** - * Select the NocoDB workspace containing the base with the table. + * Optionally filter to only trigger for conversations in a specific inbox. Leave empty to trigger for all inboxes. */ longDesc: () => LocalizedString } - baseId: { + status: { /** - * Base + * Status */ displayName: () => LocalizedString /** - * The NocoDB base containing the table + * Filter by conversation status */ shortDesc: () => LocalizedString /** - * Select the NocoDB base (project) containing the table. + * Optionally filter to only trigger for conversations with a specific status: open, archived, deleted, or spam. */ longDesc: () => LocalizedString } - table: { + } + } + new_contact: { + groups: { + /** + * Contacts + */ + '0': () => LocalizedString + } + /** + * New Contact + */ + displayName: () => LocalizedString + /** + * Triggers when a new contact is created + */ + shortDesc: () => LocalizedString + /** + * This trigger fires whenever a new contact is created in Front. Use this to automate workflows when new contacts are added to your workspace. + */ + longDesc: () => LocalizedString + options: { + } + } + new_contact_note: { + groups: { + /** + * Contacts + */ + '0': () => LocalizedString + /** + * Notes + */ + '1': () => LocalizedString + } + /** + * New Contact Note + */ + displayName: () => LocalizedString + /** + * Triggers when a new note is added to a contact + */ + shortDesc: () => LocalizedString + /** + * This trigger fires whenever a new note is added to a specific contact in Front. You must specify which contact to monitor for new notes. + */ + longDesc: () => LocalizedString + options: { + contactId: { /** - * Table + * Contact */ displayName: () => LocalizedString /** - * The table containing the source record + * The contact to monitor */ shortDesc: () => LocalizedString /** - * Select the NocoDB table containing the record you want to link from. + * Select or enter the ID of the contact you want to monitor for new notes. The trigger will fire whenever a new note is added to this contact. */ longDesc: () => LocalizedString } - linkField: { + } + } + new_comment: { + groups: { + /** + * Conversations + */ + '0': () => LocalizedString + /** + * Comments + */ + '1': () => LocalizedString + } + /** + * New Comment + */ + displayName: () => LocalizedString + /** + * Triggers when a new comment is added to a conversation + */ + shortDesc: () => LocalizedString + /** + * This trigger fires whenever a new internal comment is added to a specific conversation in Front. Comments are private messages visible only to teammates. You must specify which conversation to monitor for new comments. + */ + longDesc: () => LocalizedString + options: { + conversationId: { /** - * Link Field + * Conversation */ displayName: () => LocalizedString /** - * The link field to use for the relationship + * The conversation to monitor */ shortDesc: () => LocalizedString /** - * Select the link field (Link to Another Record) that defines the relationship between tables. + * Select or enter the ID of the conversation you want to monitor for new comments. The trigger will fire whenever a new comment is added to this conversation. */ longDesc: () => LocalizedString } - recordId: { + } + } + } + } + SharePoint: { + /** + * Microsoft SharePoint + */ + displayName: () => LocalizedString + groups: { + /** + * Documents & Documentation + */ + '0': () => LocalizedString + /** + * Cloud Storage & File Management + */ + '1': () => LocalizedString + } + /** + * Connect, automate, and manage your SharePoint Online workflows with ease. + */ + shortDesc: () => LocalizedString + /** + * Integrate your Microsoft 365 environment to quickly create, update, and synchronize documents, lists, and other assets—all from one secure, user-friendly app. + */ + longDesc: () => LocalizedString + triggers: { + 'new-row': { + /** + * New Row + */ + displayName: () => LocalizedString + /** + * Triggers when a new row is added to a SharePoint list. + */ + shortDesc: () => LocalizedString + /** + * This trigger activates whenever a new row is added to a specified SharePoint list. + */ + longDesc: () => LocalizedString + options: { + site_id: { /** - * Record ID + * Site ID */ displayName: () => LocalizedString /** - * The source record ID + * The unique identifier for the SharePoint site. */ shortDesc: () => LocalizedString /** - * Specify the ID of the record in the source table to link from. + * Enter the Site ID where the target list resides. This ID ensures that the trigger is activated in the correct SharePoint site. */ longDesc: () => LocalizedString } - linkedRecordIds: { + list_id: { /** - * Records to Link + * List ID */ displayName: () => LocalizedString /** - * IDs of records to link + * The unique identifier for the SharePoint list. */ shortDesc: () => LocalizedString /** - * Provide the IDs of records from the linked table to connect to the source record. + * Specify the List ID of the SharePoint list where the new row will be added. */ longDesc: () => LocalizedString } } } - unlink_records: { + } + actions: { + 'create-folder': { /** - * Unlink Records + * Create Folder */ displayName: () => LocalizedString /** - * Remove relationships between records + * Create a new folder in a specified SharePoint drive. */ shortDesc: () => LocalizedString /** - * Removes the link between records via a link field. This breaks the relationship without deleting any records. + * This action creates a new folder within a specified SharePoint document library. Provide the target site, drive, parent folder path, and the desired folder name to organize your files effectively. */ longDesc: () => LocalizedString options: { - workspaceId: { + site_id: { /** - * Workspace + * Site ID */ displayName: () => LocalizedString /** - * The NocoDB workspace containing the base + * The unique identifier for the SharePoint site. */ shortDesc: () => LocalizedString /** - * Select the NocoDB workspace containing the base with the table. + * Enter the unique Site ID where the folder will be created. This ID is required to target the correct SharePoint site in your Microsoft 365 environment. */ longDesc: () => LocalizedString } - baseId: { + drive_id: { /** - * Base + * Drive ID */ displayName: () => LocalizedString /** - * The NocoDB base containing the table + * The unique identifier for the SharePoint drive. */ shortDesc: () => LocalizedString /** - * Select the NocoDB base (project) containing the table. + * Specify the Drive ID corresponding to the document library in which the folder will be created. */ longDesc: () => LocalizedString } - table: { + parent_folder: { /** - * Table + * Parent Folder Path */ displayName: () => LocalizedString /** - * The table containing the source record + * The path of the existing parent folder. */ shortDesc: () => LocalizedString /** - * Select the NocoDB table containing the record you want to unlink from. + * Provide the path of the parent folder where the new folder should reside. This helps maintain an organized folder structure within your SharePoint drive. */ longDesc: () => LocalizedString } - linkField: { + folder_name: { /** - * Link Field + * Folder Name */ displayName: () => LocalizedString /** - * The link field with the relationship + * The name for the new folder. */ shortDesc: () => LocalizedString /** - * Select the link field (Link to Another Record) that defines the relationship to remove. + * Enter the desired name for the new folder. This name will be used as the folder title in SharePoint. */ longDesc: () => LocalizedString } - recordId: { + } + } + 'create-list-item': { + /** + * Create List Item + */ + displayName: () => LocalizedString + /** + * Add a new item to an existing SharePoint list. + */ + shortDesc: () => LocalizedString + /** + * This action creates a new item within a specified SharePoint list. Provide the Site ID and List ID to target the correct list, and include the necessary fields to populate the item data. + */ + longDesc: () => LocalizedString + options: { + site_id: { /** - * Record ID + * Site ID */ displayName: () => LocalizedString /** - * The source record ID + * The unique identifier for the SharePoint site. */ shortDesc: () => LocalizedString /** - * Specify the ID of the record in the source table to unlink from. + * Enter the Site ID where your target list resides. This ID ensures that the action is executed in the correct SharePoint environment. */ longDesc: () => LocalizedString } - linkedRecordIds: { + list_id: { /** - * Records to Unlink + * List ID */ displayName: () => LocalizedString /** - * IDs of records to unlink + * The unique identifier for the SharePoint list. */ shortDesc: () => LocalizedString /** - * Provide the IDs of records from the linked table to disconnect from the source record. + * Specify the List ID of the SharePoint list to which the new item will be added. */ longDesc: () => LocalizedString } } } - trigger_button: { + 'create-list': { /** - * Trigger Button + * Create List */ displayName: () => LocalizedString /** - * Trigger a button action on records + * Generate a new list within a SharePoint site. */ shortDesc: () => LocalizedString /** - * Programmatically triggers a button action (such as AI generation or webhook) for specified records. Maximum of 25 records can be processed at a time. + * This action creates a new SharePoint list. Provide the Site ID, a name for the list, and a description if needed. This is ideal for setting up new data repositories in your SharePoint site. */ longDesc: () => LocalizedString options: { - workspaceId: { + site_id: { /** - * Workspace + * Site ID */ displayName: () => LocalizedString /** - * The NocoDB workspace containing the base + * The unique identifier for the SharePoint site. */ shortDesc: () => LocalizedString /** - * Select the NocoDB workspace containing the base with the table. + * Enter the Site ID where the new list should be created, ensuring the list is added to the correct SharePoint site. */ longDesc: () => LocalizedString } - baseId: { + list_name: { /** - * Base + * List Name */ displayName: () => LocalizedString /** - * The NocoDB base containing the table + * The name of the new list. */ shortDesc: () => LocalizedString /** - * Select the NocoDB base (project) containing the table. + * Provide a name for your new list. This name will be visible to users and used to identify the list within SharePoint. */ longDesc: () => LocalizedString } - table: { + list_description: { /** - * Table + * List Description */ displayName: () => LocalizedString /** - * The table containing the button field + * A brief description of the list. */ shortDesc: () => LocalizedString /** - * Select the NocoDB table containing the button field to trigger. + * Enter a description for the new list to provide context about its purpose and contents. This helps users understand what the list is used for. */ longDesc: () => LocalizedString } - buttonField: { + } + } + 'delete-list-item': { + /** + * Delete List Item + */ + displayName: () => LocalizedString + /** + * Remove an item from a SharePoint list. + */ + shortDesc: () => LocalizedString + /** + * This action deletes a specific item from a SharePoint list. Provide the Site ID, List ID, and the Item ID of the list item to be removed. Use this action with caution, as deleted items cannot be easily recovered. + */ + longDesc: () => LocalizedString + options: { + site_id: { /** - * Button Field + * Site ID */ displayName: () => LocalizedString /** - * The button field to trigger + * The unique identifier for the SharePoint site. */ shortDesc: () => LocalizedString /** - * Select the button field whose action should be triggered for the specified records. + * Enter the Site ID where the list is hosted, ensuring the deletion is performed in the correct SharePoint environment. */ longDesc: () => LocalizedString } - recordIds: { + list_id: { /** - * Record IDs + * List ID */ displayName: () => LocalizedString /** - * IDs of records to process + * The unique identifier for the SharePoint list. */ shortDesc: () => LocalizedString /** - * Provide the IDs of records to trigger the button action for. Maximum 25 records per request. + * Specify the List ID of the target SharePoint list from which the item will be deleted. */ longDesc: () => LocalizedString } - preview: { + item_id: { /** - * Preview Mode + * Item ID */ displayName: () => LocalizedString /** - * Run in preview mode without saving changes + * The unique identifier for the list item. */ shortDesc: () => LocalizedString /** - * When enabled, the button action runs in preview mode and changes are not saved. Useful for testing. + * Provide the Item ID of the list item that you want to delete. This ensures that the correct item is removed from the list. */ longDesc: () => LocalizedString } } } - } - } - Salesforce: { - groups: { - /** - * CRM & Sales Management - */ - '0': () => LocalizedString - } - triggers: { - new_record_trigger: { + 'search-list-item': { /** - * New Record + * Search List Item */ displayName: () => LocalizedString /** - * Triggers when a new record is created in the specified object. + * Search for items in a SharePoint list by title. */ shortDesc: () => LocalizedString /** - * This trigger fires whenever a new record is created in a specified Salesforce object. You can configure the object type to target specific record types, such as Leads, Contacts, or custom objects. It is useful for automating workflows triggered by record creation. + * This action searches for list items within a specified SharePoint list that match a provided title or search term. Use this action to quickly locate specific items based on their Title field. */ longDesc: () => LocalizedString options: { - object: { + site_id: { /** - * Object Type + * Site ID */ displayName: () => LocalizedString /** - * The Salesforce object to monitor for new records. + * The unique identifier for the SharePoint site. */ shortDesc: () => LocalizedString /** - * Select the Salesforce object (e.g., Lead, Account, Contact) where this trigger will monitor for newly created records. + * Enter the Site ID where the list is located, ensuring the search is conducted in the correct SharePoint site. */ longDesc: () => LocalizedString } - } - event_info: { - /** - * Fires when a new record is created in the specified Salesforce object. - */ - desc: () => LocalizedString - } - } - new_contact_trigger: { - /** - * New Contact - */ - displayName: () => LocalizedString - /** - * Triggers when a new Contact record is created. - */ - shortDesc: () => LocalizedString - /** - * This trigger fires whenever a new Contact record is created in Salesforce. It is ideal for automating workflows such as contact notifications, integrations, or CRM updates. - */ - longDesc: () => LocalizedString - event_info: { - /** - * Fires when a new Contact record is created in Salesforce. - */ - desc: () => LocalizedString - } - } - new_lead_trigger: { - /** - * New Lead - */ - displayName: () => LocalizedString - /** - * Triggers when a new Lead record is created. - */ - shortDesc: () => LocalizedString - /** - * This trigger activates whenever a new Lead record is created in Salesforce. It is commonly used for workflows related to lead generation, qualification, or assignment. - */ - longDesc: () => LocalizedString - event_info: { - /** - * Fires when a new Lead record is created in Salesforce. - */ - desc: () => LocalizedString - } - } - updated_record_trigger: { - /** - * Updated Record - */ - displayName: () => LocalizedString - /** - * Triggers when an existing record is updated. - */ - shortDesc: () => LocalizedString - /** - * This trigger fires whenever an existing record in a specified Salesforce object is updated. It is useful for workflows that depend on changes to specific fields or records, such as updating downstream systems or notifying users of record changes. - */ - longDesc: () => LocalizedString - options: { - object: { + list_id: { /** - * Object Type + * List ID */ displayName: () => LocalizedString /** - * The Salesforce object to monitor for updates. + * The unique identifier for the SharePoint list. */ shortDesc: () => LocalizedString /** - * Specify the Salesforce object (e.g., Opportunity, Contact, or custom objects) where this trigger will monitor for record updates. + * Provide the List ID of the SharePoint list to be searched. + */ + longDesc: () => LocalizedString + } + search_value: { + /** + * Search Value + */ + displayName: () => LocalizedString + /** + * The search term to filter list items. + */ + shortDesc: () => LocalizedString + /** + * Enter the text value to search for within the list items, particularly in the Title field. This value is used to filter and return matching items. */ longDesc: () => LocalizedString } - } - event_info: { - /** - * Fires when a record in the specified Salesforce object is updated. - */ - desc: () => LocalizedString } } - } - } - Freshdesk: { - /** - * Freshdesk - */ - displayName: () => LocalizedString - groups: { - /** - * Customer Support & Helpdesk - */ - '0': () => LocalizedString - } - /** - * Cloud-based customer support software - */ - shortDesc: () => LocalizedString - /** - * Freshdesk is a cloud-based customer support platform that was founded with the mission of enabling companies of all sizes to provide great customer service. Our goal is simple: make it easy for brands to talk to their customers and make it easy for users to get in touch with businesses. - */ - longDesc: () => LocalizedString - connectionMessage: { - /** - * Connect to Freshdesk - */ - title: () => LocalizedString - /** - * To connect to Freshdesk, you will need your **Subdomain** and **API Key**. - - ## Finding Your Subdomain - - Your Freshdesk subdomain is the unique identifier in your Freshdesk URL: - - If your Freshdesk URL is `https://yourcompany.freshdesk.com`, your subdomain is `yourcompany` - - ## Getting Your API Key - - 1. Log in to your Freshdesk account - 2. Click on your **profile icon** in the top right corner - 3. Select **Profile settings** - 4. Scroll down to find your **API Key** section - 5. Click **View API Key** to reveal your key - 6. Copy the API key - - ## Connection Details - - ### Subdomain - Your Freshdesk subdomain (e.g., `yourcompany` from `yourcompany.freshdesk.com`). Do not include the full URL, just the subdomain portion. - - ### API Key - Your personal Freshdesk API key. This key is tied to your user account and inherits your permissions within Freshdesk. - - **Note:** Your API key provides access based on your user role and permissions in Freshdesk. For production integrations, consider using a dedicated service account with appropriate permissions. Keep your API key secure and never share it publicly. - */ - content: () => LocalizedString - } - triggers: { - new_ticket_trigger: { + 'update-list-item': { /** - * New Ticket + * Update List Item */ displayName: () => LocalizedString /** - * Triggers when a new ticket is created in Freshdesk. + * Modify an existing item in a SharePoint list. */ shortDesc: () => LocalizedString /** - * Fires whenever a new ticket is created in your Freshdesk instance. You can capture details such as subject, description, priority, and more, and use this data in subsequent actions or notifications. + * This action updates the fields of an existing list item in a SharePoint list. Provide the Site ID, List ID, and Item ID to locate the item, along with the new field values that should be applied. */ longDesc: () => LocalizedString options: { - ticketStatus: { + site_id: { /** - * Ticket Status Filter + * Site ID */ displayName: () => LocalizedString /** - * Filters by ticket status + * The unique identifier for the SharePoint site. */ shortDesc: () => LocalizedString /** - * Restrict or filter the trigger to only fire for tickets matching a certain status (e.g. Open, Pending, Resolved, etc.). + * Enter the Site ID where the list is hosted. This identifies the correct SharePoint site in your Microsoft 365 environment. */ longDesc: () => LocalizedString } - ticketPriority: { + list_id: { /** - * Ticket Priority Filter + * List ID */ displayName: () => LocalizedString /** - * Filters by ticket priority + * The unique identifier for the SharePoint list. */ shortDesc: () => LocalizedString /** - * Restrict or filter the trigger to only fire for tickets matching a certain priority (e.g. Low, Medium, High). + * Provide the List ID of the target SharePoint list that contains the item you wish to update. */ longDesc: () => LocalizedString } - } - event_info: { - /** - * Structure and types for Freshdesk’s new ticket data payload. - */ - desc: () => LocalizedString - } - } - new_contact_trigger: { - /** - * New Contact - */ - displayName: () => LocalizedString - /** - * Triggers when a new contact is created in Freshdesk. - */ - shortDesc: () => LocalizedString - /** - * Fires whenever a new contact is added to your Freshdesk instance. Capture details such as name, email, phone, and any custom fields associated with the contact. - */ - longDesc: () => LocalizedString - event_info: { - /** - * Structure and types for Freshdesk’s new contact data payload. - */ - desc: () => LocalizedString - } - } - updated_ticket_trigger: { - /** - * Updated Ticket - */ - displayName: () => LocalizedString - /** - * Triggers when an existing ticket is updated in Freshdesk. - */ - shortDesc: () => LocalizedString - /** - * Fires whenever an existing ticket is updated with new details in your Freshdesk instance. For example, changes to subject, priority, status, or assigned agent. - */ - longDesc: () => LocalizedString - event_info: { - /** - * Structure and types for Freshdesk’s updated ticket data payload. - */ - desc: () => LocalizedString - } - } - updated_contact_trigger: { - /** - * Updated Contact - */ - displayName: () => LocalizedString - /** - * Triggers when an existing contact is updated in Freshdesk. - */ - shortDesc: () => LocalizedString - /** - * Fires whenever an existing contact's details are updated in your Freshdesk instance. For example, changes to name, phone number, email, or custom fields. - */ - longDesc: () => LocalizedString - event_info: { - /** - * Structure and types for Freshdesk's updated contact data payload. - */ - desc: () => LocalizedString - } - } - } - searchOptions: { - orderBy: { - /** - * Order By - */ - displayName: () => LocalizedString - /** - * Sort results by a specific field - */ - shortDesc: () => LocalizedString - /** - * Define the field and direction to sort search results - */ - longDesc: () => LocalizedString - type: { - fields: { - field: { - /** - * Field - */ - displayName: () => LocalizedString - /** - * The field to sort by - */ - shortDesc: () => LocalizedString - /** - * The name of the field to use for sorting results - */ - longDesc: () => LocalizedString - } - direction: { - /** - * Direction - */ - displayName: () => LocalizedString - /** - * Sort direction - */ - shortDesc: () => LocalizedString - /** - * The direction to sort results (ascending or descending) - */ - longDesc: () => LocalizedString - } + item_id: { + /** + * Item ID + */ + displayName: () => LocalizedString + /** + * The unique identifier for the list item. + */ + shortDesc: () => LocalizedString + /** + * Specify the Item ID of the list item that you want to update. This ensures that the correct item is modified. + */ + longDesc: () => LocalizedString } } } @@ -219943,7 +225264,7 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Field contains value + * Field contains substring */ shortDesc: () => LocalizedString /** @@ -219951,2855 +225272,2283 @@ export type TranslationFunctions = { */ longDesc: () => LocalizedString } - 'is-set': { - /** - * Is Set - */ - displayName: () => LocalizedString - /** - * Field has a value - */ - shortDesc: () => LocalizedString - /** - * Matches records where the field has a value (is not empty) - */ - longDesc: () => LocalizedString - } - 'is-not-set': { + 'starts-with': { /** - * Is Not Set + * Starts With */ displayName: () => LocalizedString /** - * Field has no value + * Field starts with value */ shortDesc: () => LocalizedString /** - * Matches records where the field has no value (is empty) + * Matches records where the field value starts with the specified string */ longDesc: () => LocalizedString } } - } - Front: { - /** - * Front - */ - displayName: () => LocalizedString - groups: { - /** - * Customer Support & Helpdesk - */ - '0': () => LocalizedString - /** - * Messaging & Real-time Communication - */ - '1': () => LocalizedString - } - /** - * Connect with Front to manage shared inboxes, contacts, and customer communications - */ - shortDesc: () => LocalizedString - /** - * Integrate with Front to manage your team shared inboxes, contacts, accounts, and customer conversations. Front is a customer communication platform that brings email and messaging into a shared inbox. This integration enables you to automate contact management, organize accounts, and streamline team collaboration. - */ - longDesc: () => LocalizedString - actions: { - list_accounts: { - groups: { - /** - * Accounts - */ - '0': () => LocalizedString - } - /** - * List Accounts - */ - displayName: () => LocalizedString - /** - * Retrieve a list of accounts - */ - shortDesc: () => LocalizedString - /** - * Retrieve a list of all accounts in your Front workspace. Accounts represent companies or organizations that your contacts belong to. Use accounts to group contacts and track interactions at the company level. - */ - longDesc: () => LocalizedString - options: { - limit: { - /** - * Limit - */ - displayName: () => LocalizedString - /** - * Maximum number of accounts to return - */ - shortDesc: () => LocalizedString - /** - * The maximum number of account records to return. Default is 50. Use pagination for larger datasets. - */ - longDesc: () => LocalizedString - } - } - } - get_account: { - groups: { - /** - * Accounts - */ - '0': () => LocalizedString - } - /** - * Get Account - */ - displayName: () => LocalizedString - /** - * Retrieve a single account by ID - */ - shortDesc: () => LocalizedString - /** - * Retrieve the full details of a specific account from Front by its ID. Returns all account data including name, description, domains, external ID, and custom fields. - */ - longDesc: () => LocalizedString - options: { - accountId: { - /** - * Account - */ - displayName: () => LocalizedString - /** - * The account to retrieve - */ - shortDesc: () => LocalizedString - /** - * Select or enter the ID of the account you want to retrieve. Account IDs start with "acc_". - */ - longDesc: () => LocalizedString - } - } - } - create_account: { - groups: { - /** - * Accounts - */ - '0': () => LocalizedString - } - /** - * Create Account - */ - displayName: () => LocalizedString - /** - * Create a new account - */ - shortDesc: () => LocalizedString - /** - * Create a new account in Front. Accounts represent companies or organizations and can be used to group related contacts together. You can associate domains with accounts to automatically link contacts. - */ - longDesc: () => LocalizedString - options: { - name: { - /** - * Name - */ - displayName: () => LocalizedString - /** - * The account name - */ - shortDesc: () => LocalizedString - /** - * The name of the account, typically the company or organization name. This is a required field. - */ - longDesc: () => LocalizedString - } - description: { - /** - * Description - */ - displayName: () => LocalizedString - /** - * A description of the account - */ - shortDesc: () => LocalizedString - /** - * An optional description providing additional context about the account, such as the type of business or relationship. - */ - longDesc: () => LocalizedString - } - domains: { - /** - * Domains - */ - displayName: () => LocalizedString - /** - * Email domains associated with the account - */ - shortDesc: () => LocalizedString - /** - * A list of email domains (e.g., "example.com") associated with this account. Contacts with email addresses from these domains can be automatically linked to the account. - */ - longDesc: () => LocalizedString - } - externalId: { - /** - * External ID - */ - displayName: () => LocalizedString - /** - * External system identifier - */ - shortDesc: () => LocalizedString - /** - * An optional external ID to link this account to a record in another system, such as a CRM or billing platform. - */ - longDesc: () => LocalizedString - } - customFields: { - /** - * Custom Fields - */ - displayName: () => LocalizedString - /** - * Custom field values - */ - shortDesc: () => LocalizedString - /** - * An object containing custom field values for the account. The keys should match your configured custom field names. - */ - longDesc: () => LocalizedString - } - } - } - update_account: { - groups: { - /** - * Accounts - */ - '0': () => LocalizedString - } - /** - * Update Account - */ - displayName: () => LocalizedString - /** - * Update an existing account - */ - shortDesc: () => LocalizedString - /** - * Update the properties of an existing account in Front. You can modify the name, description, domains, external ID, or custom fields. At least one field must be provided to update. - */ - longDesc: () => LocalizedString - options: { - accountId: { - /** - * Account - */ - displayName: () => LocalizedString - /** - * The account to update - */ - shortDesc: () => LocalizedString - /** - * Select or enter the ID of the account you want to update. - */ - longDesc: () => LocalizedString - } - name: { - /** - * Name - */ - displayName: () => LocalizedString - /** - * The new account name - */ - shortDesc: () => LocalizedString - /** - * Update the name of the account. - */ - longDesc: () => LocalizedString - } - description: { - /** - * Description - */ - displayName: () => LocalizedString - /** - * The new description - */ - shortDesc: () => LocalizedString - /** - * Update the description of the account. - */ - longDesc: () => LocalizedString - } - domains: { - /** - * Domains - */ - displayName: () => LocalizedString - /** - * The new list of domains - */ - shortDesc: () => LocalizedString - /** - * Update the list of email domains associated with this account. This will replace the existing domains. - */ - longDesc: () => LocalizedString - } - externalId: { - /** - * External ID - */ - displayName: () => LocalizedString - /** - * The new external ID - */ - shortDesc: () => LocalizedString - /** - * Update the external system identifier for this account. - */ - longDesc: () => LocalizedString - } - customFields: { - /** - * Custom Fields - */ - displayName: () => LocalizedString - /** - * Updated custom field values - */ - shortDesc: () => LocalizedString - /** - * Update custom field values for the account. - */ - longDesc: () => LocalizedString - } - } - } - delete_account: { - groups: { - /** - * Accounts - */ - '0': () => LocalizedString - } + searchOptions: { + orderBy: { /** - * Delete Account + * Order By */ displayName: () => LocalizedString /** - * Delete an account + * Sort results by a specific field */ shortDesc: () => LocalizedString /** - * Delete an account from Front. This action is permanent. Contacts associated with the account will not be deleted but will no longer be linked to this account. + * Define the field and direction to sort search results */ longDesc: () => LocalizedString - options: { - accountId: { - /** - * Account - */ - displayName: () => LocalizedString - /** - * The account to delete - */ - shortDesc: () => LocalizedString - /** - * Select or enter the ID of the account you want to delete. - */ - longDesc: () => LocalizedString + type: { + fields: { + field: { + /** + * Field + */ + displayName: () => LocalizedString + /** + * The field to sort by + */ + shortDesc: () => LocalizedString + /** + * The name of the field to use for sorting results + */ + longDesc: () => LocalizedString + } + direction: { + /** + * Direction + */ + displayName: () => LocalizedString + /** + * Sort direction + */ + shortDesc: () => LocalizedString + /** + * The direction to sort results (ascending or descending) + */ + longDesc: () => LocalizedString + } } } } - list_account_contacts: { + } + } + Klaviyo: { + /** + * Klaviyo + */ + displayName: () => LocalizedString + groups: { + /** + * Email & Email Marketing + */ + '0': () => LocalizedString + } + /** + * Email and SMS marketing automation platform + */ + shortDesc: () => LocalizedString + /** + * Klaviyo is a unified customer platform that gives online brands direct ownership of their consumer data and interactions, empowering them to turn transactions with customers into productive long-term relationships. + */ + longDesc: () => LocalizedString + actions: { + get_profile: { groups: { /** - * Accounts + * Profiles */ '0': () => LocalizedString } /** - * List Account Contacts + * Get Profile */ displayName: () => LocalizedString /** - * List contacts associated with an account + * Retrieves a specific profile */ shortDesc: () => LocalizedString /** - * Retrieve a list of all contacts that are associated with a specific account. This helps you see all the people from a particular company or organization. + * Retrieves detailed information about a specific profile by its ID */ longDesc: () => LocalizedString options: { - accountId: { + id: { /** - * Account + * Profile ID */ displayName: () => LocalizedString /** - * The account to list contacts from + * The ID of the profile to retrieve */ shortDesc: () => LocalizedString /** - * Select or enter the ID of the account whose contacts you want to retrieve. + * The unique identifier of the profile you want to retrieve */ longDesc: () => LocalizedString } - limit: { + additionalFields: { /** - * Limit + * Additional Fields */ displayName: () => LocalizedString /** - * Maximum number of contacts to return + * Additional profile fields to include */ shortDesc: () => LocalizedString /** - * The maximum number of contact records to return. Default is 50. + * Optional additional fields to include in the profile response */ longDesc: () => LocalizedString } } } - add_contact_to_account: { + list_campaigns: { groups: { /** - * Accounts + * Campaigns */ '0': () => LocalizedString } /** - * Add Contact to Account + * List Campaigns */ displayName: () => LocalizedString /** - * Add contacts to an account + * Lists campaigns */ shortDesc: () => LocalizedString /** - * Add one or more contacts to an account in Front. This creates an association between the contacts and the account, helping you organize contacts by company or organization. + * Retrieves a list of campaigns with optional filtering and sorting */ longDesc: () => LocalizedString options: { - accountId: { + cursor: { /** - * Account + * Cursor */ displayName: () => LocalizedString /** - * The account to add contacts to + * Pagination cursor */ shortDesc: () => LocalizedString /** - * Select or enter the ID of the account where you want to add contacts. + * Cursor for pagination to get the next set of results */ longDesc: () => LocalizedString } - contactIds: { + pageSize: { /** - * Contacts + * Page Size */ displayName: () => LocalizedString /** - * The contacts to add + * Number of items per page */ shortDesc: () => LocalizedString /** - * Select one or more contacts to add to the account. Contact IDs start with "crd_". + * The number of campaigns to return per page */ longDesc: () => LocalizedString } - } - } - remove_contact_from_account: { - groups: { - /** - * Accounts - */ - '0': () => LocalizedString - } - /** - * Remove Contact from Account - */ - displayName: () => LocalizedString - /** - * Remove contacts from an account - */ - shortDesc: () => LocalizedString - /** - * Remove one or more contacts from an account in Front. This removes the association between the contacts and the account but does not delete the contacts themselves. - */ - longDesc: () => LocalizedString - options: { - accountId: { + channel: { /** - * Account + * Channel */ displayName: () => LocalizedString /** - * The account to remove contacts from + * Campaign channel type */ shortDesc: () => LocalizedString /** - * Select or enter the ID of the account from which you want to remove contacts. + * The channel type to filter campaigns by (email or SMS) */ longDesc: () => LocalizedString } - contactIds: { + name: { /** - * Contacts + * Name */ displayName: () => LocalizedString /** - * The contacts to remove + * Campaign name filter */ shortDesc: () => LocalizedString /** - * Select one or more contacts to remove from the account. + * Filter campaigns by name containing this value */ longDesc: () => LocalizedString } + sort: { + /** + * Sort + */ + displayName: () => LocalizedString + /** + * Sort options + */ + shortDesc: () => LocalizedString + /** + * Sort configuration for the campaign list + */ + longDesc: () => LocalizedString + type: { + fields: { + field: { + /** + * Sort Field + */ + displayName: () => LocalizedString + /** + * Field to sort by + */ + shortDesc: () => LocalizedString + /** + * The field to use for sorting the campaign list + */ + longDesc: () => LocalizedString + } + direction: { + /** + * Sort Direction + */ + displayName: () => LocalizedString + /** + * Sort direction + */ + shortDesc: () => LocalizedString + /** + * The direction to sort the campaign list (ascending or descending) + */ + longDesc: () => LocalizedString + } + } + } + } } } - list_contacts: { + list_lists: { groups: { /** - * Contacts + * Lists */ '0': () => LocalizedString } /** - * List Contacts + * List Lists */ displayName: () => LocalizedString /** - * Retrieve a list of contacts + * Lists all lists */ shortDesc: () => LocalizedString /** - * Retrieve a list of all contacts in your Front workspace. Contacts represent the people you communicate with. Results can be sorted by creation or update date. + * Retrieves a list of all lists with optional filtering and sorting */ longDesc: () => LocalizedString options: { - sortBy: { + cursor: { /** - * Sort By + * Cursor */ displayName: () => LocalizedString /** - * Field to sort by + * Pagination cursor */ shortDesc: () => LocalizedString /** - * The field to sort results by: created_at or updated_at. + * Cursor for pagination to get the next set of results */ longDesc: () => LocalizedString } - sortOrder: { + filter: { /** - * Sort Order + * Filter */ displayName: () => LocalizedString /** - * Sort order direction + * Filter options */ shortDesc: () => LocalizedString /** - * The direction to sort results: desc (newest first) or asc (oldest first). + * Filter configuration for the list results */ longDesc: () => LocalizedString + type: { + fields: { + name: { + /** + * Name Filter + */ + displayName: () => LocalizedString + /** + * Filter by list names + */ + shortDesc: () => LocalizedString + /** + * Filter lists by names containing these values + */ + longDesc: () => LocalizedString + } + id: { + /** + * ID Filter + */ + displayName: () => LocalizedString + /** + * Filter by list IDs + */ + shortDesc: () => LocalizedString + /** + * Filter lists by specific IDs + */ + longDesc: () => LocalizedString + } + } + } } - limit: { + sort: { /** - * Limit + * Sort */ displayName: () => LocalizedString /** - * Maximum number of contacts to return + * Sort options */ shortDesc: () => LocalizedString /** - * The maximum number of contact records to return. Default is 50. + * Sort configuration for the list results */ longDesc: () => LocalizedString + type: { + fields: { + field: { + /** + * Sort Field + */ + displayName: () => LocalizedString + /** + * Field to sort by + */ + shortDesc: () => LocalizedString + /** + * The field to use for sorting the list results + */ + longDesc: () => LocalizedString + } + direction: { + /** + * Sort Direction + */ + displayName: () => LocalizedString + /** + * Sort direction + */ + shortDesc: () => LocalizedString + /** + * The direction to sort the list results (ascending or descending) + */ + longDesc: () => LocalizedString + } + } + } } } } - get_contact: { + list_profiles: { groups: { /** - * Contacts + * Profiles */ '0': () => LocalizedString } /** - * Get Contact + * List Profiles */ displayName: () => LocalizedString /** - * Retrieve a single contact by ID + * Lists profiles */ shortDesc: () => LocalizedString /** - * Retrieve the full details of a specific contact from Front by their ID. Returns all contact data including name, handles (email, phone, etc.), groups, links, and custom fields. + * Retrieves a list of profiles with optional filtering and sorting */ longDesc: () => LocalizedString options: { - contactId: { + additionalFields: { /** - * Contact + * Additional Fields */ displayName: () => LocalizedString /** - * The contact to retrieve + * Additional profile fields to include */ shortDesc: () => LocalizedString /** - * Select or enter the ID of the contact you want to retrieve. Contact IDs start with "crd_". + * Optional additional fields to include in the profile responses */ longDesc: () => LocalizedString } - } - } - create_contact: { - groups: { - /** - * Contacts - */ - '0': () => LocalizedString - } - /** - * Create Contact - */ - displayName: () => LocalizedString - /** - * Create a new contact - */ - shortDesc: () => LocalizedString - /** - * Create a new contact in Front. Contacts represent the people you communicate with. A contact must have at least one handle (email, phone, etc.) to be created. - */ - longDesc: () => LocalizedString - options: { - name: { + cursor: { /** - * Name + * Cursor */ displayName: () => LocalizedString /** - * The contact name + * Pagination cursor */ shortDesc: () => LocalizedString /** - * The display name of the contact. This is optional but recommended for easier identification. + * Cursor for pagination to get the next set of results */ longDesc: () => LocalizedString } - description: { + pageSize: { /** - * Description + * Page Size */ displayName: () => LocalizedString /** - * A description of the contact + * Number of items per page */ shortDesc: () => LocalizedString /** - * An optional description or notes about the contact. This can include any relevant context about the person. + * The number of profiles to return per page */ longDesc: () => LocalizedString } - handles: { + filter: { /** - * Handles + * Filter */ displayName: () => LocalizedString /** - * Contact handles (email, phone, etc.) + * Filter options */ shortDesc: () => LocalizedString /** - * A list of handles for the contact. Each handle consists of a handle value (e.g., email address) and a source type (email, phone, twitter, etc.). At least one handle is required. + * Filter configuration for the profile results */ longDesc: () => LocalizedString type: { - element_type: { - fields: { - handle: { - /** - * Handle - */ - displayName: () => LocalizedString - /** - * The handle value - */ - shortDesc: () => LocalizedString - /** - * The actual handle value, such as an email address, phone number, or social media username. - */ - longDesc: () => LocalizedString - } - source: { - /** - * Source - */ - displayName: () => LocalizedString - /** - * The type of handle - */ - shortDesc: () => LocalizedString - /** - * The type of handle: email, phone, twitter, facebook, intercom, front_chat, or custom. - */ - longDesc: () => LocalizedString - } + fields: { + email: { + /** + * Email Filter + */ + displayName: () => LocalizedString + /** + * Filter by email addresses + */ + shortDesc: () => LocalizedString + /** + * Filter profiles by specific email addresses + */ + longDesc: () => LocalizedString + } + phone_number: { + /** + * Phone Number Filter + */ + displayName: () => LocalizedString + /** + * Filter by phone numbers + */ + shortDesc: () => LocalizedString + /** + * Filter profiles by specific phone numbers + */ + longDesc: () => LocalizedString + } + external_id: { + /** + * External ID Filter + */ + displayName: () => LocalizedString + /** + * Filter by external IDs + */ + shortDesc: () => LocalizedString + /** + * Filter profiles by specific external IDs + */ + longDesc: () => LocalizedString + } + id: { + /** + * ID Filter + */ + displayName: () => LocalizedString + /** + * Filter by profile IDs + */ + shortDesc: () => LocalizedString + /** + * Filter profiles by specific profile IDs + */ + longDesc: () => LocalizedString } } } } - links: { - /** - * Links - */ - displayName: () => LocalizedString - /** - * Associated URLs - */ - shortDesc: () => LocalizedString - /** - * A list of URLs associated with this contact, such as social media profiles or company websites. - */ - longDesc: () => LocalizedString - } - groupNames: { - /** - * Group Names - */ - displayName: () => LocalizedString - /** - * Groups to add the contact to - */ - shortDesc: () => LocalizedString - /** - * A list of group names to add the contact to. Groups help organize contacts into categories. - */ - longDesc: () => LocalizedString - } - customFields: { + sort: { /** - * Custom Fields + * Sort */ displayName: () => LocalizedString /** - * Custom field values + * Sort options */ shortDesc: () => LocalizedString /** - * An object containing custom field values for the contact. The keys should match your configured custom field names. + * Sort configuration for the profile results */ longDesc: () => LocalizedString + type: { + fields: { + field: { + /** + * Sort Field + */ + displayName: () => LocalizedString + /** + * Field to sort by + */ + shortDesc: () => LocalizedString + /** + * The field to use for sorting the profile results + */ + longDesc: () => LocalizedString + } + direction: { + /** + * Sort Direction + */ + displayName: () => LocalizedString + /** + * Sort direction + */ + shortDesc: () => LocalizedString + /** + * The direction to sort the profile results (ascending or descending) + */ + longDesc: () => LocalizedString + } + } + } } } } - update_contact: { + list_segments: { groups: { /** - * Contacts + * Segments */ '0': () => LocalizedString } /** - * Update Contact + * List Segments */ displayName: () => LocalizedString /** - * Update an existing contact + * Lists segments */ shortDesc: () => LocalizedString /** - * Update the properties of an existing contact in Front. You can modify the name, description, links, or custom fields. At least one field must be provided to update. + * Retrieves a list of segments with optional filtering and sorting */ longDesc: () => LocalizedString options: { - contactId: { - /** - * Contact - */ - displayName: () => LocalizedString - /** - * The contact to update - */ - shortDesc: () => LocalizedString - /** - * Select or enter the ID of the contact you want to update. - */ - longDesc: () => LocalizedString - } - name: { - /** - * Name - */ - displayName: () => LocalizedString - /** - * The new contact name - */ - shortDesc: () => LocalizedString - /** - * Update the display name of the contact. - */ - longDesc: () => LocalizedString - } - description: { + cursor: { /** - * Description + * Cursor */ displayName: () => LocalizedString /** - * The new description + * Pagination cursor */ shortDesc: () => LocalizedString /** - * Update the description or notes about the contact. This can include any relevant context about the person. + * Cursor for pagination to get the next set of results */ longDesc: () => LocalizedString } - links: { + filter: { /** - * Links + * Filter */ displayName: () => LocalizedString /** - * Associated URLs + * Filter options */ shortDesc: () => LocalizedString /** - * A list of URLs associated with this contact, such as social media profiles or company websites. + * Filter configuration for the segment results */ longDesc: () => LocalizedString + type: { + fields: { + name: { + /** + * Name Filter + */ + displayName: () => LocalizedString + /** + * Filter by segment names + */ + shortDesc: () => LocalizedString + /** + * Filter segments by names containing these values + */ + longDesc: () => LocalizedString + } + id: { + /** + * ID Filter + */ + displayName: () => LocalizedString + /** + * Filter by segment IDs + */ + shortDesc: () => LocalizedString + /** + * Filter segments by specific IDs + */ + longDesc: () => LocalizedString + } + } + } } - customFields: { + sort: { /** - * Custom Fields + * Sort */ displayName: () => LocalizedString /** - * Updated custom field values + * Sort options */ shortDesc: () => LocalizedString /** - * Update custom field values for the contact. + * Sort configuration for the segment results */ longDesc: () => LocalizedString + type: { + fields: { + field: { + /** + * Sort Field + */ + displayName: () => LocalizedString + /** + * Field to sort by + */ + shortDesc: () => LocalizedString + /** + * The field to use for sorting the segment results + */ + longDesc: () => LocalizedString + } + direction: { + /** + * Sort Direction + */ + displayName: () => LocalizedString + /** + * Sort direction + */ + shortDesc: () => LocalizedString + /** + * The direction to sort the segment results (ascending or descending) + */ + longDesc: () => LocalizedString + } + } + } } } } - delete_contact: { + list_tags: { groups: { /** - * Contacts + * Tags */ '0': () => LocalizedString } /** - * Delete Contact + * List Tags */ displayName: () => LocalizedString /** - * Delete a contact + * Lists tags */ shortDesc: () => LocalizedString /** - * Delete a contact from Front. This action is permanent and will remove all associated data. Conversations with this contact will remain but will no longer be linked to the contact. + * Retrieves a list of tags with optional filtering and sorting */ longDesc: () => LocalizedString options: { - contactId: { + cursor: { /** - * Contact + * Cursor */ displayName: () => LocalizedString /** - * The contact to delete + * Pagination cursor */ shortDesc: () => LocalizedString /** - * Select or enter the ID of the contact you want to delete. + * Cursor for pagination to get the next set of results */ longDesc: () => LocalizedString } - } - } - list_contact_conversations: { - groups: { - /** - * Contacts - */ - '0': () => LocalizedString - } - /** - * List Contact Conversations - */ - displayName: () => LocalizedString - /** - * List conversations for a contact - */ - shortDesc: () => LocalizedString - /** - * Retrieve a list of all conversations associated with a specific contact. Conversations are returned in reverse chronological order (newest first). This helps you see the full communication history with a contact. - */ - longDesc: () => LocalizedString - options: { - contactId: { + filter: { /** - * Contact + * Filter */ displayName: () => LocalizedString /** - * The contact to list conversations for + * Filter options */ shortDesc: () => LocalizedString /** - * Select or enter the ID of the contact whose conversations you want to retrieve. + * Filter configuration for the tag results */ longDesc: () => LocalizedString + type: { + fields: { + name: { + /** + * Name Filter + */ + displayName: () => LocalizedString + /** + * Filter by tag name + */ + shortDesc: () => LocalizedString + /** + * Filter tags by name containing this value + */ + longDesc: () => LocalizedString + } + } + } } - limit: { + sort: { /** - * Limit + * Sort */ displayName: () => LocalizedString /** - * Maximum number of conversations to return + * Sort options */ shortDesc: () => LocalizedString /** - * The maximum number of conversation records to return. Default is 50. + * Sort configuration for the tag results */ longDesc: () => LocalizedString + type: { + fields: { + field: { + /** + * Sort Field + */ + displayName: () => LocalizedString + /** + * Field to sort by + */ + shortDesc: () => LocalizedString + /** + * The field to use for sorting the tag results + */ + longDesc: () => LocalizedString + } + direction: { + /** + * Sort Direction + */ + displayName: () => LocalizedString + /** + * Sort direction + */ + shortDesc: () => LocalizedString + /** + * The direction to sort the tag results (ascending or descending) + */ + longDesc: () => LocalizedString + } + } + } } } } - list_contact_notes: { + remove_profile_from_list: { groups: { /** - * Contacts + * Lists */ '0': () => LocalizedString - /** - * Notes - */ - '1': () => LocalizedString } /** - * List Contact Notes + * Remove Profile from List */ displayName: () => LocalizedString /** - * List notes for a contact + * Removes a profile from a list */ shortDesc: () => LocalizedString /** - * Retrieve all notes that have been added to a specific contact. Notes are internal annotations visible only to your team, useful for documenting important information about contacts. + * Removes a specified profile from a specified list in Klaviyo */ longDesc: () => LocalizedString options: { - contactId: { + profile: { /** - * Contact + * Profile */ displayName: () => LocalizedString /** - * The contact to list notes for + * Profile to remove */ shortDesc: () => LocalizedString /** - * Select or enter the ID of the contact whose notes you want to retrieve. + * The profile to remove from the list */ longDesc: () => LocalizedString } - limit: { + list: { /** - * Limit + * List */ displayName: () => LocalizedString /** - * Maximum number of notes to return + * Target list */ shortDesc: () => LocalizedString /** - * The maximum number of note records to return. Default is 50. + * The list to remove the profile from */ longDesc: () => LocalizedString } } } - add_contact_note: { + remove_tag_from_list: { groups: { /** - * Contacts + * Tags */ '0': () => LocalizedString /** - * Notes + * Lists */ '1': () => LocalizedString } /** - * Add Note to Contact + * Remove Tag from List */ displayName: () => LocalizedString /** - * Add a note to a contact + * Removes a tag from a list */ shortDesc: () => LocalizedString /** - * Add a new note to a contact in Front. Notes are internal annotations that are only visible to your team members. Use notes to document important information, context, or reminders about a contact. + * Removes a specified tag from a specified list in Klaviyo */ longDesc: () => LocalizedString options: { - contactId: { - /** - * Contact - */ - displayName: () => LocalizedString - /** - * The contact to add the note to - */ - shortDesc: () => LocalizedString - /** - * Select or enter the ID of the contact you want to add a note to. - */ - longDesc: () => LocalizedString - } - body: { + tag: { /** - * Note Body + * Tag */ displayName: () => LocalizedString /** - * The content of the note + * Tag to remove */ shortDesc: () => LocalizedString /** - * The text content of the note. This will be visible to all team members who can access the contact. + * The tag to remove from the list */ longDesc: () => LocalizedString } - authorId: { + list: { /** - * Author + * List */ displayName: () => LocalizedString /** - * The teammate who authored the note + * Target list */ shortDesc: () => LocalizedString /** - * Select the teammate who will be recorded as the author of this note. This is a required field. + * The list to remove the tag from */ longDesc: () => LocalizedString } } } - list_contact_lists: { + remove_tag_from_segment: { groups: { /** - * Contact Lists + * Tags */ '0': () => LocalizedString - } - /** - * List Contact Lists - */ - displayName: () => LocalizedString - /** - * Retrieve all contact lists - */ - shortDesc: () => LocalizedString - /** - * Retrieve a list of all contact lists in your Front workspace. Contact lists are used to organize contacts into groups for easier management, such as for marketing campaigns or customer segments. - */ - longDesc: () => LocalizedString - options: { - limit: { - /** - * Limit - */ - displayName: () => LocalizedString - /** - * Maximum number of contact lists to return - */ - shortDesc: () => LocalizedString - /** - * The maximum number of contact list records to return. Default is 50. - */ - longDesc: () => LocalizedString - } - } - } - create_contact_list: { - groups: { /** - * Contact Lists + * Segments */ - '0': () => LocalizedString + '1': () => LocalizedString } /** - * Create Contact List + * Remove Tag from Segment */ displayName: () => LocalizedString /** - * Create a new contact list + * Removes a tag from a segment */ shortDesc: () => LocalizedString /** - * Create a new contact list in Front. Contact lists help you organize contacts into logical groups. The list will be created in the oldest active workspace that your token has access to. + * Removes a specified tag from a specified segment in Klaviyo */ longDesc: () => LocalizedString options: { - name: { - /** - * Name - */ - displayName: () => LocalizedString - /** - * The contact list name - */ - shortDesc: () => LocalizedString - /** - * The name of the contact list. Choose a descriptive name that clearly identifies the purpose of the list. - */ - longDesc: () => LocalizedString - } - description: { + tag: { /** - * Description + * Tag */ displayName: () => LocalizedString /** - * A description of the contact list + * Tag to remove */ shortDesc: () => LocalizedString /** - * An optional description explaining the purpose of the contact list or the criteria for contacts in it. + * The tag to remove from the segment */ longDesc: () => LocalizedString } - } - } - delete_contact_list: { - groups: { - /** - * Contact Lists - */ - '0': () => LocalizedString - } - /** - * Delete Contact List - */ - displayName: () => LocalizedString - /** - * Delete a contact list - */ - shortDesc: () => LocalizedString - /** - * Delete a contact list from Front. This removes the list but does not delete the contacts that were in it. The contacts will remain in your workspace. - */ - longDesc: () => LocalizedString - options: { - contactListId: { + segment: { /** - * Contact List + * Segment */ displayName: () => LocalizedString /** - * The contact list to delete + * Target segment */ shortDesc: () => LocalizedString /** - * Select or enter the ID of the contact list you want to delete. + * The segment to remove the tag from */ longDesc: () => LocalizedString } } } - list_contacts_in_contact_list: { + send_campaign: { groups: { /** - * Contact Lists + * Campaigns */ '0': () => LocalizedString } /** - * List Contacts in Contact List + * Send Campaign */ displayName: () => LocalizedString /** - * List contacts in a specific contact list + * Sends a campaign */ shortDesc: () => LocalizedString /** - * Retrieve all contacts that belong to a specific contact list. This helps you see which contacts are included in a particular list or segment. + * Sends a draft campaign immediately to its target audience */ longDesc: () => LocalizedString options: { - contactListId: { - /** - * Contact List - */ - displayName: () => LocalizedString - /** - * The contact list to retrieve contacts from - */ - shortDesc: () => LocalizedString - /** - * Select or enter the ID of the contact list whose contacts you want to see. - */ - longDesc: () => LocalizedString - } - limit: { + id: { /** - * Limit + * Campaign ID */ displayName: () => LocalizedString /** - * Maximum number of contacts to return + * The ID of the campaign to send */ shortDesc: () => LocalizedString /** - * The maximum number of contact records to return. Default is 50. + * The unique identifier of the campaign you want to send */ longDesc: () => LocalizedString } } } - add_contacts_to_contact_list: { + subscribe_profile: { groups: { /** - * Contact Lists + * Profiles */ '0': () => LocalizedString } /** - * Add Contacts to Contact List + * Subscribe Profile */ displayName: () => LocalizedString /** - * Add contacts to a contact list + * Subscribes a profile to marketing channels */ shortDesc: () => LocalizedString /** - * Add one or more contacts to a contact list in Front. This helps you organize contacts into logical groups for easier management and targeted communication. + * Subscribes a profile to email marketing, SMS marketing, or both channels */ longDesc: () => LocalizedString options: { - contactListId: { - /** - * Contact List - */ - displayName: () => LocalizedString - /** - * The contact list to add contacts to - */ - shortDesc: () => LocalizedString - /** - * Select or enter the ID of the contact list where you want to add contacts. - */ - longDesc: () => LocalizedString - } - contactIds: { + profileId: { /** - * Contacts + * Profile ID */ displayName: () => LocalizedString /** - * The contacts to add + * The ID of the profile to subscribe */ shortDesc: () => LocalizedString /** - * Select one or more contacts to add to the contact list. + * The unique identifier of the profile to subscribe */ longDesc: () => LocalizedString } - } - } - remove_contacts_from_contact_list: { - groups: { - /** - * Contact Lists - */ - '0': () => LocalizedString - } - /** - * Remove Contacts from Contact List - */ - displayName: () => LocalizedString - /** - * Remove contacts from a contact list - */ - shortDesc: () => LocalizedString - /** - * Remove one or more contacts from a contact list in Front. This removes the contacts from the list but does not delete the contacts themselves. - */ - longDesc: () => LocalizedString - options: { - contactListId: { + email: { /** - * Contact List + * Email */ displayName: () => LocalizedString /** - * The contact list to remove contacts from + * Email address */ shortDesc: () => LocalizedString /** - * Select or enter the ID of the contact list from which you want to remove contacts. + * The email address of the profile to subscribe */ longDesc: () => LocalizedString } - contactIds: { + phoneNumber: { /** - * Contacts + * Phone Number */ displayName: () => LocalizedString /** - * The contacts to remove + * Phone number */ shortDesc: () => LocalizedString /** - * Select one or more contacts to remove from the contact list. + * The phone number of the profile to subscribe */ longDesc: () => LocalizedString } - } - } - list_conversations: { - groups: { - /** - * Conversations - */ - '0': () => LocalizedString - } - /** - * List Conversations - */ - displayName: () => LocalizedString - /** - * Retrieve a list of conversations - */ - shortDesc: () => LocalizedString - /** - * Retrieve a list of conversations in your Front workspace. Conversations are returned in reverse chronological order (most recently updated first). You can filter by inbox or status. - */ - longDesc: () => LocalizedString - options: { - inboxId: { + consentToSubscribeToChannel: { /** - * Inbox + * Subscription Channel */ displayName: () => LocalizedString /** - * Filter by inbox + * Channel to subscribe to */ shortDesc: () => LocalizedString /** - * Optionally filter conversations to a specific inbox. Leave empty to retrieve conversations from all inboxes. + * The marketing channel(s) to subscribe the profile to */ longDesc: () => LocalizedString } - status: { + smsSubscriptionType: { /** - * Status + * SMS Subscription Type */ displayName: () => LocalizedString /** - * Filter by conversation status + * Type of SMS subscription */ shortDesc: () => LocalizedString /** - * Optionally filter conversations by their status: open, archived, deleted, or spam. + * The type of SMS subscription (marketing, transactional, or both) */ longDesc: () => LocalizedString } - limit: { + list: { /** - * Limit + * List */ displayName: () => LocalizedString /** - * Maximum number of conversations to return + * Target list */ shortDesc: () => LocalizedString /** - * The maximum number of conversation records to return. Default is 50. + * Optional list to add the profile to during subscription */ longDesc: () => LocalizedString } } } - get_conversation: { + unsubscribe_profile: { groups: { /** - * Conversations + * Profiles */ '0': () => LocalizedString } /** - * Get Conversation + * Unsubscribe Profile */ displayName: () => LocalizedString /** - * Retrieve a single conversation by ID + * Unsubscribes a profile from marketing channels */ shortDesc: () => LocalizedString /** - * Retrieve the full details of a specific conversation from Front by its ID. Returns all conversation data including subject, status, assignee, tags, and custom fields. + * Unsubscribes a profile from email and/or SMS marketing based on provided identifiers */ longDesc: () => LocalizedString options: { - conversationId: { + email: { /** - * Conversation + * Email */ displayName: () => LocalizedString /** - * The conversation to retrieve + * Email address */ shortDesc: () => LocalizedString /** - * Select or enter the ID of the conversation you want to retrieve. Conversation IDs start with "cnv_". + * The email address of the profile to unsubscribe */ longDesc: () => LocalizedString } - } - } - search_conversations: { - groups: { - /** - * Conversations - */ - '0': () => LocalizedString - } - /** - * Search Conversations - */ - displayName: () => LocalizedString - /** - * Search for conversations - */ - shortDesc: () => LocalizedString - /** - * Search for conversations in Front using a search query. Returns matching conversations in descending order by last activity along with a count of total matches. - */ - longDesc: () => LocalizedString - options: { - query: { + phoneNumber: { /** - * Search Query + * Phone Number */ displayName: () => LocalizedString /** - * The search query + * Phone number */ shortDesc: () => LocalizedString /** - * The search query to find conversations. You can search by keywords, email addresses, or use Front search syntax for advanced queries. + * The phone number of the profile to unsubscribe */ longDesc: () => LocalizedString } - limit: { + smsSubscriptionType: { /** - * Limit + * SMS Subscription Type */ displayName: () => LocalizedString /** - * Maximum number of conversations to return + * Type of SMS subscription to cancel */ shortDesc: () => LocalizedString /** - * The maximum number of conversation records to return. Default is 25. + * The type of SMS subscription to cancel (marketing, transactional, or both) */ longDesc: () => LocalizedString } } } - update_conversation: { + update_profile: { groups: { /** - * Conversations + * Profiles */ '0': () => LocalizedString } /** - * Update Conversation + * Update Profile */ displayName: () => LocalizedString /** - * Update a conversation + * Updates an existing profile */ shortDesc: () => LocalizedString /** - * Update the properties of an existing conversation in Front. You can change the status, move to a different inbox, or update custom fields. + * Updates an existing profile with new information and optionally adds them to a list */ longDesc: () => LocalizedString options: { - conversationId: { + id: { /** - * Conversation + * Profile ID */ displayName: () => LocalizedString /** - * The conversation to update + * The ID of the profile to update */ shortDesc: () => LocalizedString /** - * Select or enter the ID of the conversation you want to update. + * The unique identifier of the profile you want to update */ longDesc: () => LocalizedString } - status: { + email: { /** - * Status + * Email */ displayName: () => LocalizedString /** - * The new status + * Email address */ shortDesc: () => LocalizedString /** - * Update the conversation status to open, archived, deleted, or spam. + * The new email address for the profile */ longDesc: () => LocalizedString } - inboxId: { + phoneNumber: { /** - * Inbox + * Phone Number */ displayName: () => LocalizedString /** - * Move to inbox + * Phone number */ shortDesc: () => LocalizedString /** - * Move the conversation to a different inbox. + * The new phone number for the profile */ longDesc: () => LocalizedString } - customFields: { + firstName: { /** - * Custom Fields + * First Name */ displayName: () => LocalizedString /** - * Updated custom field values + * First name */ shortDesc: () => LocalizedString /** - * Update custom field values for the conversation. + * The first name of the profile */ longDesc: () => LocalizedString } - } - } - update_conversation_assignee: { - groups: { - /** - * Conversations - */ - '0': () => LocalizedString - } - /** - * Update Conversation Assignee - */ - displayName: () => LocalizedString - /** - * Assign or unassign a conversation - */ - shortDesc: () => LocalizedString - /** - * Assign a conversation to a teammate or unassign it. Assigning conversations helps route work to the right team members and track ownership. - */ - longDesc: () => LocalizedString - options: { - conversationId: { + lastName: { /** - * Conversation + * Last Name */ displayName: () => LocalizedString /** - * The conversation to update + * Last name */ shortDesc: () => LocalizedString /** - * Select or enter the ID of the conversation you want to assign. + * The last name of the profile */ longDesc: () => LocalizedString } - assigneeId: { + title: { /** - * Assignee + * Title */ displayName: () => LocalizedString /** - * The teammate to assign + * Job title */ shortDesc: () => LocalizedString /** - * Select a teammate to assign the conversation to. Leave empty to unassign the conversation. + * The job title of the profile */ longDesc: () => LocalizedString } - } - } - add_conversation_tag: { - groups: { - /** - * Conversations - */ - '0': () => LocalizedString - /** - * Tags - */ - '1': () => LocalizedString - } - /** - * Add Tag to Conversation - */ - displayName: () => LocalizedString - /** - * Add tags to a conversation - */ - shortDesc: () => LocalizedString - /** - * Add one or more tags to a conversation in Front. Tags help categorize and organize conversations for easier filtering and reporting. - */ - longDesc: () => LocalizedString - options: { - conversationId: { + organization: { /** - * Conversation + * Organization */ displayName: () => LocalizedString /** - * The conversation to tag + * Organization name */ shortDesc: () => LocalizedString /** - * Select or enter the ID of the conversation you want to add tags to. + * The organization or company name for the profile */ longDesc: () => LocalizedString } - tagIds: { + city: { /** - * Tags + * City */ displayName: () => LocalizedString /** - * The tags to add + * City */ shortDesc: () => LocalizedString /** - * Select one or more tags to add to the conversation. + * The city where the profile is located */ longDesc: () => LocalizedString } - } - } - remove_conversation_tag: { - groups: { - /** - * Conversations - */ - '0': () => LocalizedString - /** - * Tags - */ - '1': () => LocalizedString - } - /** - * Remove Tag from Conversation - */ - displayName: () => LocalizedString - /** - * Remove tags from a conversation - */ - shortDesc: () => LocalizedString - /** - * Remove one or more tags from a conversation in Front. This removes the tag association but does not delete the tags themselves. - */ - longDesc: () => LocalizedString - options: { - conversationId: { + region: { /** - * Conversation + * Region */ displayName: () => LocalizedString /** - * The conversation to remove tags from + * State or region */ shortDesc: () => LocalizedString /** - * Select or enter the ID of the conversation you want to remove tags from. + * The state or region where the profile is located */ longDesc: () => LocalizedString } - tagIds: { + country: { /** - * Tags + * Country */ displayName: () => LocalizedString /** - * The tags to remove + * Country */ shortDesc: () => LocalizedString /** - * Select one or more tags to remove from the conversation. + * The country where the profile is located */ longDesc: () => LocalizedString } - } - } - add_conversation_followers: { - groups: { - /** - * Conversations - */ - '0': () => LocalizedString - } - /** - * Add Conversation Followers - */ - displayName: () => LocalizedString - /** - * Add followers to a conversation - */ - shortDesc: () => LocalizedString - /** - * Add teammates as followers to a conversation. Followers receive notifications about conversation updates without being the assignee. - */ - longDesc: () => LocalizedString - options: { - conversationId: { + zip: { /** - * Conversation + * ZIP Code */ displayName: () => LocalizedString /** - * The conversation to add followers to + * ZIP or postal code */ shortDesc: () => LocalizedString /** - * Select or enter the ID of the conversation you want to add followers to. + * The ZIP or postal code for the profile location */ longDesc: () => LocalizedString } - teammateIds: { + imageUrl: { /** - * Teammates + * Image URL */ displayName: () => LocalizedString /** - * The teammates to add as followers + * Profile image URL */ shortDesc: () => LocalizedString /** - * Select one or more teammates to add as followers to the conversation. + * URL to the profile image + */ + longDesc: () => LocalizedString + } + externalId: { + /** + * External ID + */ + displayName: () => LocalizedString + /** + * External identifier + */ + shortDesc: () => LocalizedString + /** + * External identifier for the profile from your system + */ + longDesc: () => LocalizedString + } + customProperties: { + /** + * Custom Properties + */ + displayName: () => LocalizedString + /** + * Custom profile properties + */ + shortDesc: () => LocalizedString + /** + * Additional custom properties to set on the profile */ longDesc: () => LocalizedString } } } - get_message: { + add_tag_to_list: { groups: { /** - * Messages + * Tags */ '0': () => LocalizedString + /** + * Lists + */ + '1': () => LocalizedString } /** - * Get Message + * Add Tag to List */ displayName: () => LocalizedString /** - * Retrieve a single message by ID + * Adds an existing tag to a list */ shortDesc: () => LocalizedString /** - * Retrieve the full details of a specific message from Front by its ID. Returns all message data including content, author, recipients, and attachments. + * Associates an existing tag with a specified list in Klaviyo */ longDesc: () => LocalizedString options: { - messageId: { + tag: { /** - * Message ID + * Tag */ displayName: () => LocalizedString /** - * The message to retrieve + * Tag to add */ shortDesc: () => LocalizedString /** - * Enter the ID of the message you want to retrieve. Message IDs start with "msg_". + * The tag to add to the list + */ + longDesc: () => LocalizedString + } + list: { + /** + * List + */ + displayName: () => LocalizedString + /** + * Target list + */ + shortDesc: () => LocalizedString + /** + * The list to add the tag to */ longDesc: () => LocalizedString } } } - list_conversation_messages: { + add_tag_to_segment: { groups: { /** - * Conversations + * Tags */ '0': () => LocalizedString /** - * Messages + * Segments */ '1': () => LocalizedString } /** - * List Conversation Messages + * Add Tag to Segment */ displayName: () => LocalizedString /** - * List messages in a conversation + * Adds an existing tag to a segment */ shortDesc: () => LocalizedString /** - * Retrieve a list of all messages in a specific conversation. Messages are returned in reverse chronological order (newest first). This provides the full message history of a conversation. + * Associates an existing tag with a specified segment in Klaviyo */ longDesc: () => LocalizedString options: { - conversationId: { + tag: { /** - * Conversation + * Tag */ displayName: () => LocalizedString /** - * The conversation to list messages from + * Tag to add */ shortDesc: () => LocalizedString /** - * Select or enter the ID of the conversation whose messages you want to retrieve. + * The tag to add to the segment */ longDesc: () => LocalizedString } - limit: { + segment: { /** - * Limit + * Segment */ displayName: () => LocalizedString /** - * Maximum number of messages to return + * Target segment */ shortDesc: () => LocalizedString /** - * The maximum number of message records to return. Default is 50. + * The segment to add the tag to */ longDesc: () => LocalizedString } } } - create_message_reply: { + create_event: { groups: { /** - * Conversations + * Events */ '0': () => LocalizedString - /** - * Messages - */ - '1': () => LocalizedString } /** - * Reply to Conversation + * Create Event */ displayName: () => LocalizedString /** - * Send a reply message to a conversation + * Creates a new event */ shortDesc: () => LocalizedString /** - * Reply to a conversation by sending a message. The message will be appended to the conversation and sent to the recipients. You can optionally save it as a draft instead of sending immediately. + * Creates a new event for a specific metric in Klaviyo */ longDesc: () => LocalizedString options: { - conversationId: { + email: { /** - * Conversation + * Email */ displayName: () => LocalizedString /** - * The conversation to reply to + * Email address */ shortDesc: () => LocalizedString /** - * Select or enter the ID of the conversation you want to reply to. + * The email address of the profile for the event */ longDesc: () => LocalizedString } - body: { + metric: { /** - * Message Body + * Metric */ displayName: () => LocalizedString /** - * The content of the reply + * Event metric */ shortDesc: () => LocalizedString /** - * The HTML content of the reply message. This is the main body text that will be sent to recipients. + * The metric or event type to track */ longDesc: () => LocalizedString } - subject: { + profile: { /** - * Subject + * Profile */ displayName: () => LocalizedString /** - * Optional subject line + * Profile ID */ shortDesc: () => LocalizedString /** - * An optional subject line for the reply. If not provided, the original conversation subject may be used. + * The profile ID to associate with the event */ longDesc: () => LocalizedString } - to: { + time: { /** - * To + * Time */ displayName: () => LocalizedString /** - * Additional recipients + * Event timestamp */ shortDesc: () => LocalizedString /** - * A list of email addresses to send the reply to. These are added to the existing conversation recipients. + * The timestamp when the event occurred */ longDesc: () => LocalizedString } - cc: { + value: { /** - * CC + * Value */ displayName: () => LocalizedString /** - * CC recipients + * Event value */ shortDesc: () => LocalizedString /** - * A list of email addresses to CC on the reply. + * The monetary value associated with the event */ longDesc: () => LocalizedString } - bcc: { + customId: { /** - * BCC + * Custom ID */ displayName: () => LocalizedString /** - * BCC recipients + * Unique event identifier */ shortDesc: () => LocalizedString /** - * A list of email addresses to BCC on the reply. + * A custom unique identifier for the event */ longDesc: () => LocalizedString } - isDraft: { + customProperties: { /** - * Save as Draft + * Custom Properties */ displayName: () => LocalizedString /** - * Save as draft instead of sending + * Event properties */ shortDesc: () => LocalizedString /** - * If true, the message will be saved as a draft instead of being sent immediately. Default is false. + * Additional custom properties for the event */ longDesc: () => LocalizedString } } } - add_conversation_comment: { + create_list: { groups: { /** - * Conversations + * Lists */ '0': () => LocalizedString - /** - * Comments - */ - '1': () => LocalizedString } /** - * Add Comment to Conversation + * Create List */ displayName: () => LocalizedString /** - * Add an internal comment to a conversation + * Creates a new list */ shortDesc: () => LocalizedString /** - * Add an internal comment to a conversation in Front. Comments are private messages visible only to your teammates and are never sent to external contacts. Use comments for internal notes, discussions, or context sharing. + * Creates a new list in Klaviyo with the specified configuration */ longDesc: () => LocalizedString options: { - conversationId: { - /** - * Conversation - */ - displayName: () => LocalizedString - /** - * The conversation to add a comment to - */ - shortDesc: () => LocalizedString - /** - * Select or enter the ID of the conversation you want to add a comment to. - */ - longDesc: () => LocalizedString - } - body: { + name: { /** - * Comment Body + * Name */ displayName: () => LocalizedString /** - * The content of the comment + * List name */ shortDesc: () => LocalizedString /** - * The text content of the internal comment. This will be visible to all teammates who can access the conversation. + * The name of the new list */ longDesc: () => LocalizedString } } } - list_conversation_comments: { + create_or_update_profile: { groups: { /** - * Conversations + * Profiles */ '0': () => LocalizedString - /** - * Comments - */ - '1': () => LocalizedString } /** - * List Conversation Comments + * Create Or Update Profile */ displayName: () => LocalizedString /** - * List comments in a conversation + * Creates a new profile or updates an existing one */ shortDesc: () => LocalizedString /** - * Retrieve a list of all internal comments in a specific conversation. Comments are returned in reverse chronological order (newest first). This provides the full internal discussion history of a conversation. + * Creates a new profile or updates an existing profile and optionally adds it to a list */ longDesc: () => LocalizedString options: { - conversationId: { + id: { /** - * Conversation + * Profile ID */ displayName: () => LocalizedString /** - * The conversation to list comments from + * Profile ID (for update) */ shortDesc: () => LocalizedString /** - * Select or enter the ID of the conversation whose comments you want to retrieve. + * The ID of an existing profile to update (leave empty to create new) */ longDesc: () => LocalizedString } - limit: { + email: { /** - * Limit + * Email */ displayName: () => LocalizedString /** - * Maximum number of comments to return + * Email address */ shortDesc: () => LocalizedString /** - * The maximum number of comment records to return. Default is 50. + * The email address for the profile */ longDesc: () => LocalizedString } - } - } - } - triggers: { - new_conversation: { - groups: { - /** - * Conversations - */ - '0': () => LocalizedString - } - /** - * New Conversation - */ - displayName: () => LocalizedString - /** - * Triggers when a new conversation is created - */ - shortDesc: () => LocalizedString - /** - * This trigger fires whenever a new conversation is created in Front. You can optionally filter by inbox or status to only trigger for specific types of conversations. - */ - longDesc: () => LocalizedString - options: { - inboxId: { + phoneNumber: { /** - * Inbox + * Phone Number */ displayName: () => LocalizedString /** - * Filter by inbox + * Phone number */ shortDesc: () => LocalizedString /** - * Optionally filter to only trigger for conversations in a specific inbox. Leave empty to trigger for all inboxes. + * The phone number for the profile */ longDesc: () => LocalizedString } - status: { + firstName: { /** - * Status + * First Name */ displayName: () => LocalizedString /** - * Filter by conversation status + * First name */ shortDesc: () => LocalizedString /** - * Optionally filter to only trigger for conversations with a specific status: open, archived, deleted, or spam. + * The first name of the profile */ longDesc: () => LocalizedString } - } - } - new_contact: { - groups: { - /** - * Contacts - */ - '0': () => LocalizedString - } - /** - * New Contact - */ - displayName: () => LocalizedString - /** - * Triggers when a new contact is created - */ - shortDesc: () => LocalizedString - /** - * This trigger fires whenever a new contact is created in Front. Use this to automate workflows when new contacts are added to your workspace. - */ - longDesc: () => LocalizedString - options: { - } - } - new_contact_note: { - groups: { - /** - * Contacts - */ - '0': () => LocalizedString - /** - * Notes - */ - '1': () => LocalizedString - } - /** - * New Contact Note - */ - displayName: () => LocalizedString - /** - * Triggers when a new note is added to a contact - */ - shortDesc: () => LocalizedString - /** - * This trigger fires whenever a new note is added to a specific contact in Front. You must specify which contact to monitor for new notes. - */ - longDesc: () => LocalizedString - options: { - contactId: { + lastName: { /** - * Contact + * Last Name */ displayName: () => LocalizedString /** - * The contact to monitor + * Last name */ shortDesc: () => LocalizedString /** - * Select or enter the ID of the contact you want to monitor for new notes. The trigger will fire whenever a new note is added to this contact. + * The last name of the profile */ longDesc: () => LocalizedString } - } - } - new_comment: { - groups: { - /** - * Conversations - */ - '0': () => LocalizedString - /** - * Comments - */ - '1': () => LocalizedString - } - /** - * New Comment - */ - displayName: () => LocalizedString - /** - * Triggers when a new comment is added to a conversation - */ - shortDesc: () => LocalizedString - /** - * This trigger fires whenever a new internal comment is added to a specific conversation in Front. Comments are private messages visible only to teammates. You must specify which conversation to monitor for new comments. - */ - longDesc: () => LocalizedString - options: { - conversationId: { + title: { /** - * Conversation + * Title */ displayName: () => LocalizedString /** - * The conversation to monitor + * Job title */ shortDesc: () => LocalizedString /** - * Select or enter the ID of the conversation you want to monitor for new comments. The trigger will fire whenever a new comment is added to this conversation. + * The job title of the profile */ longDesc: () => LocalizedString } - } - } - } - } - SharePoint: { - /** - * Microsoft SharePoint - */ - displayName: () => LocalizedString - groups: { - /** - * Documents & Documentation - */ - '0': () => LocalizedString - /** - * Cloud Storage & File Management - */ - '1': () => LocalizedString - } - /** - * Connect, automate, and manage your SharePoint Online workflows with ease. - */ - shortDesc: () => LocalizedString - /** - * Integrate your Microsoft 365 environment to quickly create, update, and synchronize documents, lists, and other assets—all from one secure, user-friendly app. - */ - longDesc: () => LocalizedString - triggers: { - 'new-row': { - /** - * New Row - */ - displayName: () => LocalizedString - /** - * Triggers when a new row is added to a SharePoint list. - */ - shortDesc: () => LocalizedString - /** - * This trigger activates whenever a new row is added to a specified SharePoint list. - */ - longDesc: () => LocalizedString - options: { - site_id: { + organization: { /** - * Site ID + * Organization */ displayName: () => LocalizedString /** - * The unique identifier for the SharePoint site. + * Organization name */ shortDesc: () => LocalizedString /** - * Enter the Site ID where the target list resides. This ID ensures that the trigger is activated in the correct SharePoint site. + * The organization or company name for the profile */ longDesc: () => LocalizedString } - list_id: { + city: { /** - * List ID + * City */ displayName: () => LocalizedString /** - * The unique identifier for the SharePoint list. + * City */ shortDesc: () => LocalizedString /** - * Specify the List ID of the SharePoint list where the new row will be added. + * The city where the profile is located */ longDesc: () => LocalizedString } - } - } - } - actions: { - 'create-folder': { - /** - * Create Folder - */ - displayName: () => LocalizedString - /** - * Create a new folder in a specified SharePoint drive. - */ - shortDesc: () => LocalizedString - /** - * This action creates a new folder within a specified SharePoint document library. Provide the target site, drive, parent folder path, and the desired folder name to organize your files effectively. - */ - longDesc: () => LocalizedString - options: { - site_id: { + region: { /** - * Site ID + * Region */ displayName: () => LocalizedString /** - * The unique identifier for the SharePoint site. + * State or region */ shortDesc: () => LocalizedString /** - * Enter the unique Site ID where the folder will be created. This ID is required to target the correct SharePoint site in your Microsoft 365 environment. + * The state or region where the profile is located */ longDesc: () => LocalizedString } - drive_id: { + country: { /** - * Drive ID + * Country */ displayName: () => LocalizedString /** - * The unique identifier for the SharePoint drive. + * Country */ shortDesc: () => LocalizedString /** - * Specify the Drive ID corresponding to the document library in which the folder will be created. + * The country where the profile is located */ longDesc: () => LocalizedString } - parent_folder: { + zip: { /** - * Parent Folder Path + * ZIP Code */ displayName: () => LocalizedString /** - * The path of the existing parent folder. + * ZIP or postal code */ shortDesc: () => LocalizedString /** - * Provide the path of the parent folder where the new folder should reside. This helps maintain an organized folder structure within your SharePoint drive. + * The ZIP or postal code for the profile location */ longDesc: () => LocalizedString } - folder_name: { + imageUrl: { /** - * Folder Name + * Image URL */ displayName: () => LocalizedString /** - * The name for the new folder. + * Profile image URL */ shortDesc: () => LocalizedString /** - * Enter the desired name for the new folder. This name will be used as the folder title in SharePoint. + * URL to the profile image */ longDesc: () => LocalizedString } - } - } - 'create-list-item': { - /** - * Create List Item - */ - displayName: () => LocalizedString - /** - * Add a new item to an existing SharePoint list. - */ - shortDesc: () => LocalizedString - /** - * This action creates a new item within a specified SharePoint list. Provide the Site ID and List ID to target the correct list, and include the necessary fields to populate the item data. - */ - longDesc: () => LocalizedString - options: { - site_id: { + externalId: { /** - * Site ID + * External ID */ displayName: () => LocalizedString /** - * The unique identifier for the SharePoint site. + * External identifier */ shortDesc: () => LocalizedString /** - * Enter the Site ID where your target list resides. This ID ensures that the action is executed in the correct SharePoint environment. + * External identifier for the profile from your system */ longDesc: () => LocalizedString } - list_id: { + customProperties: { /** - * List ID + * Custom Properties */ displayName: () => LocalizedString /** - * The unique identifier for the SharePoint list. + * Custom profile properties */ shortDesc: () => LocalizedString /** - * Specify the List ID of the SharePoint list to which the new item will be added. + * Additional custom properties to set on the profile */ longDesc: () => LocalizedString } } } - 'create-list': { + create_profile: { + groups: { + /** + * Profiles + */ + '0': () => LocalizedString + } /** - * Create List + * Create Profile */ displayName: () => LocalizedString /** - * Generate a new list within a SharePoint site. + * Creates a new profile */ shortDesc: () => LocalizedString /** - * This action creates a new SharePoint list. Provide the Site ID, a name for the list, and a description if needed. This is ideal for setting up new data repositories in your SharePoint site. + * Creates a new profile in Klaviyo with the specified information */ longDesc: () => LocalizedString options: { - site_id: { + email: { /** - * Site ID + * Email */ displayName: () => LocalizedString /** - * The unique identifier for the SharePoint site. + * Email address */ shortDesc: () => LocalizedString /** - * Enter the Site ID where the new list should be created, ensuring the list is added to the correct SharePoint site. + * The email address for the new profile */ longDesc: () => LocalizedString } - list_name: { + phoneNumber: { /** - * List Name + * Phone Number */ displayName: () => LocalizedString /** - * The name of the new list. + * Phone number */ shortDesc: () => LocalizedString /** - * Provide a name for your new list. This name will be visible to users and used to identify the list within SharePoint. + * The phone number for the new profile */ longDesc: () => LocalizedString } - list_description: { + firstName: { /** - * List Description + * First Name */ displayName: () => LocalizedString /** - * A brief description of the list. + * First name */ shortDesc: () => LocalizedString /** - * Enter a description for the new list to provide context about its purpose and contents. This helps users understand what the list is used for. + * The first name of the profile */ longDesc: () => LocalizedString } - } - } - 'delete-list-item': { - /** - * Delete List Item - */ - displayName: () => LocalizedString - /** - * Remove an item from a SharePoint list. - */ - shortDesc: () => LocalizedString - /** - * This action deletes a specific item from a SharePoint list. Provide the Site ID, List ID, and the Item ID of the list item to be removed. Use this action with caution, as deleted items cannot be easily recovered. - */ - longDesc: () => LocalizedString - options: { - site_id: { + lastName: { /** - * Site ID + * Last Name */ displayName: () => LocalizedString /** - * The unique identifier for the SharePoint site. + * Last name */ shortDesc: () => LocalizedString /** - * Enter the Site ID where the list is hosted, ensuring the deletion is performed in the correct SharePoint environment. + * The last name of the profile */ longDesc: () => LocalizedString } - list_id: { + title: { /** - * List ID + * Title */ displayName: () => LocalizedString /** - * The unique identifier for the SharePoint list. + * Job title */ shortDesc: () => LocalizedString /** - * Specify the List ID of the target SharePoint list from which the item will be deleted. + * The job title of the profile */ longDesc: () => LocalizedString } - item_id: { + organization: { /** - * Item ID + * Organization */ displayName: () => LocalizedString /** - * The unique identifier for the list item. + * Organization name */ shortDesc: () => LocalizedString /** - * Provide the Item ID of the list item that you want to delete. This ensures that the correct item is removed from the list. + * The organization or company name for the profile */ longDesc: () => LocalizedString } - } - } - 'search-list-item': { - /** - * Search List Item - */ - displayName: () => LocalizedString - /** - * Search for items in a SharePoint list by title. - */ - shortDesc: () => LocalizedString - /** - * This action searches for list items within a specified SharePoint list that match a provided title or search term. Use this action to quickly locate specific items based on their Title field. - */ - longDesc: () => LocalizedString - options: { - site_id: { + city: { /** - * Site ID + * City */ displayName: () => LocalizedString /** - * The unique identifier for the SharePoint site. + * City */ shortDesc: () => LocalizedString /** - * Enter the Site ID where the list is located, ensuring the search is conducted in the correct SharePoint site. + * The city where the profile is located */ longDesc: () => LocalizedString } - list_id: { + region: { /** - * List ID + * Region */ displayName: () => LocalizedString /** - * The unique identifier for the SharePoint list. + * State or region */ shortDesc: () => LocalizedString /** - * Provide the List ID of the SharePoint list to be searched. + * The state or region where the profile is located */ longDesc: () => LocalizedString } - search_value: { + country: { /** - * Search Value + * Country */ displayName: () => LocalizedString /** - * The search term to filter list items. + * Country */ shortDesc: () => LocalizedString /** - * Enter the text value to search for within the list items, particularly in the Title field. This value is used to filter and return matching items. + * The country where the profile is located */ longDesc: () => LocalizedString } - } - } - 'update-list-item': { - /** - * Update List Item - */ - displayName: () => LocalizedString - /** - * Modify an existing item in a SharePoint list. - */ - shortDesc: () => LocalizedString - /** - * This action updates the fields of an existing list item in a SharePoint list. Provide the Site ID, List ID, and Item ID to locate the item, along with the new field values that should be applied. - */ - longDesc: () => LocalizedString - options: { - site_id: { + zip: { /** - * Site ID + * ZIP Code */ displayName: () => LocalizedString /** - * The unique identifier for the SharePoint site. + * ZIP or postal code */ shortDesc: () => LocalizedString /** - * Enter the Site ID where the list is hosted. This identifies the correct SharePoint site in your Microsoft 365 environment. + * The ZIP or postal code for the profile location */ longDesc: () => LocalizedString } - list_id: { + imageUrl: { /** - * List ID + * Image URL */ displayName: () => LocalizedString /** - * The unique identifier for the SharePoint list. + * Profile image URL */ shortDesc: () => LocalizedString /** - * Provide the List ID of the target SharePoint list that contains the item you wish to update. + * URL to the profile image */ longDesc: () => LocalizedString } - item_id: { + externalId: { /** - * Item ID + * External ID */ displayName: () => LocalizedString /** - * The unique identifier for the list item. + * External identifier */ shortDesc: () => LocalizedString /** - * Specify the Item ID of the list item that you want to update. This ensures that the correct item is modified. + * External identifier for the profile from your system + */ + longDesc: () => LocalizedString + } + customProperties: { + /** + * Custom Properties + */ + displayName: () => LocalizedString + /** + * Custom profile properties + */ + shortDesc: () => LocalizedString + /** + * Additional custom properties to set on the profile */ longDesc: () => LocalizedString } } } - } - expressions: { - '&&': { - /** - * And - */ - displayName: () => LocalizedString - /** - * Logical AND operator - */ - shortDesc: () => LocalizedString - /** - * Combines multiple conditions where all must be true - */ - longDesc: () => LocalizedString - } - '||': { - /** - * Or - */ - displayName: () => LocalizedString - /** - * Logical OR operator - */ - shortDesc: () => LocalizedString - /** - * Combines multiple conditions where at least one must be true - */ - longDesc: () => LocalizedString - } - '==': { - /** - * Equals - */ - displayName: () => LocalizedString - /** - * Field equals value - */ - shortDesc: () => LocalizedString - /** - * Matches records where the field equals the specified value - */ - longDesc: () => LocalizedString - } - '!=': { - /** - * Not Equals - */ - displayName: () => LocalizedString - /** - * Field does not equal value - */ - shortDesc: () => LocalizedString - /** - * Matches records where the field does not equal the specified value - */ - longDesc: () => LocalizedString - } - '>': { - /** - * Greater Than - */ - displayName: () => LocalizedString - /** - * Field is greater than value - */ - shortDesc: () => LocalizedString - /** - * Matches records where the field value is greater than the specified value - */ - longDesc: () => LocalizedString - } - '>=': { + get_campaign: { + groups: { + /** + * Campaigns + */ + '0': () => LocalizedString + } /** - * Greater Than or Equal + * Get Campaign */ displayName: () => LocalizedString /** - * Field is greater than or equal to value + * Retrieves a specific campaign */ shortDesc: () => LocalizedString /** - * Matches records where the field value is greater than or equal to the specified value + * Retrieves detailed information about a specific campaign by its ID */ longDesc: () => LocalizedString + options: { + id: { + /** + * Campaign ID + */ + displayName: () => LocalizedString + /** + * The ID of the campaign to retrieve + */ + shortDesc: () => LocalizedString + /** + * The unique identifier of the campaign you want to retrieve + */ + longDesc: () => LocalizedString + } + } } - '<': { + add_profile_to_list: { + groups: { + /** + * Lists + */ + '0': () => LocalizedString + } /** - * Less Than + * Add Profile to List */ displayName: () => LocalizedString /** - * Field is less than value + * Adds an existing profile to a list */ shortDesc: () => LocalizedString /** - * Matches records where the field value is less than the specified value + * Adds an existing profile to a specified list in Klaviyo */ longDesc: () => LocalizedString + options: { + profile: { + /** + * Profile + */ + displayName: () => LocalizedString + /** + * Profile to add + */ + shortDesc: () => LocalizedString + /** + * The profile to add to the list + */ + longDesc: () => LocalizedString + } + list: { + /** + * List + */ + displayName: () => LocalizedString + /** + * Target list + */ + shortDesc: () => LocalizedString + /** + * The list to add the profile to + */ + longDesc: () => LocalizedString + } + } } - '<=': { + } + triggers: { + new_event: { /** - * Less Than or Equal + * New Event */ displayName: () => LocalizedString /** - * Field is less than or equal to value + * Triggers when a new event occurs */ shortDesc: () => LocalizedString /** - * Matches records where the field value is less than or equal to the specified value + * Triggers when a new event occurs for a specific metric in Klaviyo */ longDesc: () => LocalizedString + options: { + metric: { + /** + * Metric + */ + displayName: () => LocalizedString + /** + * Event metric to monitor + */ + shortDesc: () => LocalizedString + /** + * The specific metric or event type to monitor for new events + */ + longDesc: () => LocalizedString + } + } } - contains: { + new_profile: { /** - * Contains + * New Profile */ displayName: () => LocalizedString /** - * Field contains substring + * Triggers when a new profile is created */ shortDesc: () => LocalizedString /** - * Matches records where the field contains the specified substring + * Triggers when a new profile is created in Klaviyo */ longDesc: () => LocalizedString } - 'starts-with': { + new_list_profile: { /** - * Starts With + * Profile Added to List */ displayName: () => LocalizedString /** - * Field starts with value + * Triggers when a profile is added to a list */ shortDesc: () => LocalizedString /** - * Matches records where the field value starts with the specified string + * Triggers when a profile is added to a specific list in Klaviyo */ longDesc: () => LocalizedString + options: { + list: { + /** + * List + */ + displayName: () => LocalizedString + /** + * List to monitor + */ + shortDesc: () => LocalizedString + /** + * The specific list to monitor for new profile additions + */ + longDesc: () => LocalizedString + } + } } - } - searchOptions: { - orderBy: { + new_segment_profile: { /** - * Order By + * Profile Added to Segment */ displayName: () => LocalizedString /** - * Sort results by a specific field + * Triggers when a profile is added to a segment */ shortDesc: () => LocalizedString /** - * Define the field and direction to sort search results + * Triggers when a profile is added to a specific segment in Klaviyo */ longDesc: () => LocalizedString - type: { - fields: { - field: { - /** - * Field - */ - displayName: () => LocalizedString - /** - * The field to sort by - */ - shortDesc: () => LocalizedString - /** - * The name of the field to use for sorting results - */ - longDesc: () => LocalizedString - } - direction: { - /** - * Direction - */ - displayName: () => LocalizedString - /** - * Sort direction - */ - shortDesc: () => LocalizedString - /** - * The direction to sort results (ascending or descending) - */ - longDesc: () => LocalizedString - } + options: { + segment: { + /** + * Segment + */ + displayName: () => LocalizedString + /** + * Segment to monitor + */ + shortDesc: () => LocalizedString + /** + * The specific segment to monitor for new profile additions + */ + longDesc: () => LocalizedString } } } } } - Klaviyo: { + Outlook: { /** - * Klaviyo + * Microsoft Outlook */ displayName: () => LocalizedString groups: { @@ -222809,734 +227558,614 @@ export type TranslationFunctions = { '0': () => LocalizedString } /** - * Email and SMS marketing automation platform + * Get access to your calendar events, contacts, and emails in Microsoft Outlook. */ shortDesc: () => LocalizedString /** - * Klaviyo is a unified customer platform that gives online brands direct ownership of their consumer data and interactions, empowering them to turn transactions with customers into productive long-term relationships. + * Microsoft Outlook is a personal information manager software system from Microsoft, available as a part of the Microsoft Office suite. Primarily an email application, it also includes a calendar, task manager, contact manager, note taking, journal, and web browsing. Connect your Outlook account to create and manage contacts, calendar events, and send emails. */ longDesc: () => LocalizedString actions: { - get_profile: { - groups: { - /** - * Profiles - */ - '0': () => LocalizedString - } + 'manage-email': { /** - * Get Profile + * Manage Email */ displayName: () => LocalizedString /** - * Retrieves a specific profile + * Delete or move an email message to another folder. */ shortDesc: () => LocalizedString /** - * Retrieves detailed information about a specific profile by its ID + * Performs operations on an existing email message, allowing you to either delete it permanently or move it to another folder in your Outlook mailbox. */ longDesc: () => LocalizedString options: { - id: { + messageId: { /** - * Profile ID + * Message ID */ displayName: () => LocalizedString /** - * The ID of the profile to retrieve + * ID of the email message */ shortDesc: () => LocalizedString /** - * The unique identifier of the profile you want to retrieve + * The unique identifier of the email message to be moved or deleted. */ longDesc: () => LocalizedString } - additionalFields: { + action: { /** - * Additional Fields + * Action */ displayName: () => LocalizedString /** - * Additional profile fields to include + * Action to perform on the email */ shortDesc: () => LocalizedString /** - * Optional additional fields to include in the profile response + * Specify whether to delete the email permanently or move it to another folder. + */ + longDesc: () => LocalizedString + } + targetFolderId: { + /** + * Target Folder ID + */ + displayName: () => LocalizedString + /** + * ID of the target folder + */ + shortDesc: () => LocalizedString + /** + * The ID of the folder where you want to move the email. This field is required only when the action is set to "move". */ longDesc: () => LocalizedString } } } - list_campaigns: { - groups: { - /** - * Campaigns - */ - '0': () => LocalizedString - } + 'search-emails': { /** - * List Campaigns + * Search Emails */ displayName: () => LocalizedString /** - * Lists campaigns + * Search for emails using various filter criteria including advanced attachment filters. */ shortDesc: () => LocalizedString /** - * Retrieves a list of campaigns with optional filtering and sorting + * Search and retrieve emails from Outlook based on dates, senders, recipients, subject, body content, and detailed attachment properties like names, patterns, MIME types, and sizes. */ longDesc: () => LocalizedString options: { - cursor: { + sort: { /** - * Cursor + * Sort */ displayName: () => LocalizedString /** - * Pagination cursor + * Sort emails by a specific field */ shortDesc: () => LocalizedString /** - * Cursor for pagination to get the next set of results + * Sort the email results by a specific field. The default is to sort by received date in descending order. */ longDesc: () => LocalizedString + type: { + fields: { + field: { + /** + * Sort Field + */ + displayName: () => LocalizedString + /** + * Field to sort by + */ + shortDesc: () => LocalizedString + /** + * Select the field by which to sort the email results. + */ + longDesc: () => LocalizedString + } + order: { + /** + * Sort Order + */ + displayName: () => LocalizedString + /** + * Order of sorting + */ + shortDesc: () => LocalizedString + /** + * Choose the order in which to sort the results. Options include Ascending and Descending. + */ + longDesc: () => LocalizedString + } + } + } } - pageSize: { + limit: { /** - * Page Size + * Limit */ displayName: () => LocalizedString /** - * Number of items per page + * Maximum number of emails to return */ shortDesc: () => LocalizedString /** - * The number of campaigns to return per page + * Sets the maximum number of email results to return. Default is 50. */ longDesc: () => LocalizedString } - channel: { + startDateTime: { /** - * Channel + * Start Date */ displayName: () => LocalizedString /** - * Campaign channel type + * Filter emails received on or after this date */ shortDesc: () => LocalizedString /** - * The channel type to filter campaigns by (email or SMS) + * Only include emails that were received on or after this date and time. */ longDesc: () => LocalizedString } - name: { + endDateTime: { /** - * Name + * End Date */ displayName: () => LocalizedString /** - * Campaign name filter + * Filter emails received on or before this date */ shortDesc: () => LocalizedString /** - * Filter campaigns by name containing this value + * Only include emails that were received on or before this date and time. */ longDesc: () => LocalizedString } - sort: { + fromSender: { /** - * Sort + * From Sender */ displayName: () => LocalizedString /** - * Sort options + * Filter emails from a specific sender */ shortDesc: () => LocalizedString /** - * Sort configuration for the campaign list + * Only include emails from this specific sender email address. */ longDesc: () => LocalizedString - type: { - fields: { - field: { - /** - * Sort Field - */ - displayName: () => LocalizedString - /** - * Field to sort by - */ - shortDesc: () => LocalizedString - /** - * The field to use for sorting the campaign list - */ - longDesc: () => LocalizedString - } - direction: { - /** - * Sort Direction - */ - displayName: () => LocalizedString - /** - * Sort direction - */ - shortDesc: () => LocalizedString - /** - * The direction to sort the campaign list (ascending or descending) - */ - longDesc: () => LocalizedString - } - } - } } - } - } - list_lists: { - groups: { - /** - * Lists - */ - '0': () => LocalizedString - } - /** - * List Lists - */ - displayName: () => LocalizedString - /** - * Lists all lists - */ - shortDesc: () => LocalizedString - /** - * Retrieves a list of all lists with optional filtering and sorting - */ - longDesc: () => LocalizedString - options: { - cursor: { + toRecipient: { /** - * Cursor + * To Recipient */ displayName: () => LocalizedString /** - * Pagination cursor + * Filter emails sent to a specific recipient */ shortDesc: () => LocalizedString /** - * Cursor for pagination to get the next set of results + * Only include emails sent to this specific recipient email address. */ longDesc: () => LocalizedString } - filter: { + subject: { /** - * Filter + * Subject */ displayName: () => LocalizedString /** - * Filter options + * Filter emails by subject line text */ shortDesc: () => LocalizedString /** - * Filter configuration for the list results + * Only include emails with this text in the subject line. */ longDesc: () => LocalizedString - type: { - fields: { - name: { - /** - * Name Filter - */ - displayName: () => LocalizedString - /** - * Filter by list names - */ - shortDesc: () => LocalizedString - /** - * Filter lists by names containing these values - */ - longDesc: () => LocalizedString - } - id: { - /** - * ID Filter - */ - displayName: () => LocalizedString - /** - * Filter by list IDs - */ - shortDesc: () => LocalizedString - /** - * Filter lists by specific IDs - */ - longDesc: () => LocalizedString - } - } - } } - sort: { + hasAttachments: { /** - * Sort + * Has Attachments */ displayName: () => LocalizedString /** - * Sort options + * Filter emails with or without attachments */ shortDesc: () => LocalizedString /** - * Sort configuration for the list results + * When set to true, only include emails that have attachments. When false, only include emails without attachments. */ longDesc: () => LocalizedString - type: { - fields: { - field: { - /** - * Sort Field - */ - displayName: () => LocalizedString - /** - * Field to sort by - */ - shortDesc: () => LocalizedString - /** - * The field to use for sorting the list results - */ - longDesc: () => LocalizedString - } - direction: { - /** - * Sort Direction - */ - displayName: () => LocalizedString - /** - * Sort direction - */ - shortDesc: () => LocalizedString - /** - * The direction to sort the list results (ascending or descending) - */ - longDesc: () => LocalizedString - } - } - } } - } - } - list_profiles: { - groups: { - /** - * Profiles - */ - '0': () => LocalizedString - } - /** - * List Profiles - */ - displayName: () => LocalizedString - /** - * Lists profiles - */ - shortDesc: () => LocalizedString - /** - * Retrieves a list of profiles with optional filtering and sorting - */ - longDesc: () => LocalizedString - options: { - additionalFields: { + isRead: { /** - * Additional Fields + * Is Read */ displayName: () => LocalizedString /** - * Additional profile fields to include + * Filter read or unread emails */ shortDesc: () => LocalizedString /** - * Optional additional fields to include in the profile responses + * When set to true, only include emails that have been read. When false, only include unread emails. */ longDesc: () => LocalizedString } - cursor: { + attachmentNames: { /** - * Cursor + * Attachment Names */ displayName: () => LocalizedString /** - * Pagination cursor + * Filter emails by specific attachment names */ shortDesc: () => LocalizedString /** - * Cursor for pagination to get the next set of results + * Only include emails that have attachments with these filenames. */ longDesc: () => LocalizedString } - pageSize: { + bodyContains: { /** - * Page Size + * Body Contains */ displayName: () => LocalizedString /** - * Number of items per page + * Filter emails by body content */ shortDesc: () => LocalizedString /** - * The number of profiles to return per page + * Only include emails that contain this text in the body content. */ longDesc: () => LocalizedString } - filter: { + includeAttachments: { /** - * Filter + * Include Attachments */ displayName: () => LocalizedString /** - * Filter options + * Include attachment content in results */ shortDesc: () => LocalizedString /** - * Filter configuration for the profile results + * When set to true, the content of email attachments will be included in the results. This may increase response size significantly. */ longDesc: () => LocalizedString - type: { - fields: { - email: { - /** - * Email Filter - */ - displayName: () => LocalizedString - /** - * Filter by email addresses - */ - shortDesc: () => LocalizedString - /** - * Filter profiles by specific email addresses - */ - longDesc: () => LocalizedString - } - phone_number: { - /** - * Phone Number Filter - */ - displayName: () => LocalizedString - /** - * Filter by phone numbers - */ - shortDesc: () => LocalizedString - /** - * Filter profiles by specific phone numbers - */ - longDesc: () => LocalizedString - } - external_id: { - /** - * External ID Filter - */ - displayName: () => LocalizedString - /** - * Filter by external IDs - */ - shortDesc: () => LocalizedString - /** - * Filter profiles by specific external IDs - */ - longDesc: () => LocalizedString - } - id: { - /** - * ID Filter - */ - displayName: () => LocalizedString - /** - * Filter by profile IDs - */ - shortDesc: () => LocalizedString - /** - * Filter profiles by specific profile IDs - */ - longDesc: () => LocalizedString - } - } - } } - sort: { + folder: { /** - * Sort + * Folder */ displayName: () => LocalizedString /** - * Sort options + * Email folder to search in */ shortDesc: () => LocalizedString /** - * Sort configuration for the profile results + * The email folder to search in. Defaults to Inbox if not specified. */ longDesc: () => LocalizedString - type: { - fields: { - field: { - /** - * Sort Field - */ - displayName: () => LocalizedString - /** - * Field to sort by - */ - shortDesc: () => LocalizedString - /** - * The field to use for sorting the profile results - */ - longDesc: () => LocalizedString - } - direction: { - /** - * Sort Direction - */ - displayName: () => LocalizedString - /** - * Sort direction - */ - shortDesc: () => LocalizedString - /** - * The direction to sort the profile results (ascending or descending) - */ - longDesc: () => LocalizedString - } - } - } } - } - } - list_segments: { - groups: { - /** - * Segments - */ - '0': () => LocalizedString - } - /** - * List Segments - */ - displayName: () => LocalizedString - /** - * Lists segments - */ - shortDesc: () => LocalizedString - /** - * Retrieves a list of segments with optional filtering and sorting - */ - longDesc: () => LocalizedString - options: { - cursor: { + attachmentFilenamePattern: { /** - * Cursor + * Attachment Filename Pattern */ displayName: () => LocalizedString /** - * Pagination cursor + * Filter by attachment filename pattern (regex) */ shortDesc: () => LocalizedString /** - * Cursor for pagination to get the next set of results + * Filter emails by a regular expression pattern that matches attachment filenames. Example: ".*\.pdf$" would match all PDF files. */ longDesc: () => LocalizedString } - filter: { + attachmentMimeTypes: { /** - * Filter + * Attachment MIME Types */ displayName: () => LocalizedString /** - * Filter options + * Filter by attachment MIME types */ shortDesc: () => LocalizedString /** - * Filter configuration for the segment results + * Only include emails with attachments matching these MIME types (e.g., "application/pdf", "image/jpeg"). */ longDesc: () => LocalizedString - type: { - fields: { - name: { - /** - * Name Filter - */ - displayName: () => LocalizedString - /** - * Filter by segment names - */ - shortDesc: () => LocalizedString - /** - * Filter segments by names containing these values - */ - longDesc: () => LocalizedString - } - id: { - /** - * ID Filter - */ - displayName: () => LocalizedString - /** - * Filter by segment IDs - */ - shortDesc: () => LocalizedString - /** - * Filter segments by specific IDs - */ - longDesc: () => LocalizedString - } - } - } } - sort: { + attachmentMinSize: { /** - * Sort + * Attachment Minimum Size */ displayName: () => LocalizedString /** - * Sort options + * Filter by attachment minimum size in bytes */ shortDesc: () => LocalizedString /** - * Sort configuration for the segment results + * Only include emails with attachments larger than or equal to this size in bytes. + */ + longDesc: () => LocalizedString + } + attachmentMaxSize: { + /** + * Attachment Maximum Size + */ + displayName: () => LocalizedString + /** + * Filter by attachment maximum size in bytes + */ + shortDesc: () => LocalizedString + /** + * Only include emails with attachments smaller than or equal to this size in bytes. */ longDesc: () => LocalizedString - type: { - fields: { - field: { - /** - * Sort Field - */ - displayName: () => LocalizedString - /** - * Field to sort by - */ - shortDesc: () => LocalizedString - /** - * The field to use for sorting the segment results - */ - longDesc: () => LocalizedString - } - direction: { - /** - * Sort Direction - */ - displayName: () => LocalizedString - /** - * Sort direction - */ - shortDesc: () => LocalizedString - /** - * The direction to sort the segment results (ascending or descending) - */ - longDesc: () => LocalizedString - } - } - } } } } - list_tags: { - groups: { - /** - * Tags - */ - '0': () => LocalizedString - } + 'create-contact': { /** - * List Tags + * Create Contact */ displayName: () => LocalizedString /** - * Lists tags + * Create a new contact in your Outlook contacts. */ shortDesc: () => LocalizedString /** - * Retrieves a list of tags with optional filtering and sorting + * Create a new contact with details such as name, email, phone numbers, and job information in your Microsoft Outlook contacts. */ longDesc: () => LocalizedString options: { - cursor: { + givenName: { /** - * Cursor + * First Name */ displayName: () => LocalizedString /** - * Pagination cursor + * The contact's first name. */ shortDesc: () => LocalizedString /** - * Cursor for pagination to get the next set of results + * Enter the first name or given name of the contact. */ longDesc: () => LocalizedString } - filter: { + surname: { /** - * Filter + * Last Name */ displayName: () => LocalizedString /** - * Filter options + * The contact's last name. */ shortDesc: () => LocalizedString /** - * Filter configuration for the tag results + * Enter the last name or surname of the contact. + */ + longDesc: () => LocalizedString + } + emailAddresses: { + /** + * Email Addresses + */ + displayName: () => LocalizedString + /** + * Email addresses for the contact. + */ + shortDesc: () => LocalizedString + /** + * Enter one or more email addresses for the contact. */ longDesc: () => LocalizedString type: { - fields: { - name: { - /** - * Name Filter - */ - displayName: () => LocalizedString - /** - * Filter by tag name - */ - shortDesc: () => LocalizedString - /** - * Filter tags by name containing this value - */ - longDesc: () => LocalizedString + element_type: { + fields: { + address: { + /** + * Email Address + */ + displayName: () => LocalizedString + /** + * The email address of the contact. + */ + shortDesc: () => LocalizedString + /** + * Enter a valid email address for the contact. + */ + longDesc: () => LocalizedString + } + name: { + /** + * Display Name + */ + displayName: () => LocalizedString + /** + * The display name for this email address. + */ + shortDesc: () => LocalizedString + /** + * Enter how you want the name to appear for this email address. + */ + longDesc: () => LocalizedString + } } } } } - sort: { + businessPhones: { /** - * Sort + * Business Phones */ displayName: () => LocalizedString /** - * Sort options + * Business phone numbers for the contact. */ shortDesc: () => LocalizedString /** - * Sort configuration for the tag results + * Enter one or more business phone numbers for the contact. + */ + longDesc: () => LocalizedString + } + mobilePhone: { + /** + * Mobile Phone + */ + displayName: () => LocalizedString + /** + * The contact's mobile phone number. + */ + shortDesc: () => LocalizedString + /** + * Enter the mobile or cell phone number for the contact. + */ + longDesc: () => LocalizedString + } + jobTitle: { + /** + * Job Title + */ + displayName: () => LocalizedString + /** + * The contact's job title. + */ + shortDesc: () => LocalizedString + /** + * Enter the professional title or role of the contact. + */ + longDesc: () => LocalizedString + } + companyName: { + /** + * Company Name + */ + displayName: () => LocalizedString + /** + * The name of the contact's company. + */ + shortDesc: () => LocalizedString + /** + * Enter the organization or company where the contact works. + */ + longDesc: () => LocalizedString + } + department: { + /** + * Department + */ + displayName: () => LocalizedString + /** + * The contact's department. + */ + shortDesc: () => LocalizedString + /** + * Enter the department or division within the company where the contact works. + */ + longDesc: () => LocalizedString + } + officeLocation: { + /** + * Office Location + */ + displayName: () => LocalizedString + /** + * The contact's office location. + */ + shortDesc: () => LocalizedString + /** + * Enter the physical location or office where the contact works. + */ + longDesc: () => LocalizedString + } + businessAddress: { + /** + * Business Address + */ + displayName: () => LocalizedString + /** + * The contact's business address. + */ + shortDesc: () => LocalizedString + /** + * Enter the full business address details for the contact. */ longDesc: () => LocalizedString type: { fields: { - field: { + street: { /** - * Sort Field + * Street */ displayName: () => LocalizedString /** - * Field to sort by + * Street address. */ shortDesc: () => LocalizedString /** - * The field to use for sorting the tag results + * Enter the street address including building number and street name. */ longDesc: () => LocalizedString } - direction: { + city: { /** - * Sort Direction + * City */ displayName: () => LocalizedString /** - * Sort direction + * City name. */ shortDesc: () => LocalizedString /** - * The direction to sort the tag results (ascending or descending) + * Enter the city or town for the business address. + */ + longDesc: () => LocalizedString + } + state: { + /** + * State/Province + */ + displayName: () => LocalizedString + /** + * State or province. + */ + shortDesc: () => LocalizedString + /** + * Enter the state, province, or region for the business address. + */ + longDesc: () => LocalizedString + } + countryOrRegion: { + /** + * Country/Region + */ + displayName: () => LocalizedString + /** + * Country or region. + */ + shortDesc: () => LocalizedString + /** + * Enter the country or region for the business address. + */ + longDesc: () => LocalizedString + } + postalCode: { + /** + * Postal Code + */ + displayName: () => LocalizedString + /** + * Postal or zip code. + */ + shortDesc: () => LocalizedString + /** + * Enter the postal code or zip code for the business address. */ longDesc: () => LocalizedString } @@ -223545,457 +228174,339 @@ export type TranslationFunctions = { } } } - remove_profile_from_list: { - groups: { - /** - * Lists - */ - '0': () => LocalizedString - } - /** - * Remove Profile from List - */ - displayName: () => LocalizedString - /** - * Removes a profile from a list - */ - shortDesc: () => LocalizedString - /** - * Removes a specified profile from a specified list in Klaviyo - */ - longDesc: () => LocalizedString - options: { - profile: { - /** - * Profile - */ - displayName: () => LocalizedString - /** - * Profile to remove - */ - shortDesc: () => LocalizedString - /** - * The profile to remove from the list - */ - longDesc: () => LocalizedString - } - list: { - /** - * List - */ - displayName: () => LocalizedString - /** - * Target list - */ - shortDesc: () => LocalizedString - /** - * The list to remove the profile from - */ - longDesc: () => LocalizedString - } - } - } - remove_tag_from_list: { - groups: { - /** - * Tags - */ - '0': () => LocalizedString - /** - * Lists - */ - '1': () => LocalizedString - } + 'update-contact': { /** - * Remove Tag from List + * Update Contact */ displayName: () => LocalizedString /** - * Removes a tag from a list + * Update an existing contact in your Outlook contacts. */ shortDesc: () => LocalizedString /** - * Removes a specified tag from a specified list in Klaviyo + * Modify details of an existing contact in your Microsoft Outlook contacts, such as name, email, phone numbers, or job information. */ longDesc: () => LocalizedString options: { - tag: { + contactId: { /** - * Tag + * Contact ID */ displayName: () => LocalizedString /** - * Tag to remove + * The unique identifier for the contact. */ shortDesc: () => LocalizedString /** - * The tag to remove from the list + * Select the unique identifier of the contact you want to update. */ longDesc: () => LocalizedString } - list: { + givenName: { /** - * List + * First Name */ displayName: () => LocalizedString /** - * Target list + * The contact's first name. */ shortDesc: () => LocalizedString /** - * The list to remove the tag from + * Update the first name or given name of the contact. */ longDesc: () => LocalizedString } - } - } - remove_tag_from_segment: { - groups: { - /** - * Tags - */ - '0': () => LocalizedString - /** - * Segments - */ - '1': () => LocalizedString - } - /** - * Remove Tag from Segment - */ - displayName: () => LocalizedString - /** - * Removes a tag from a segment - */ - shortDesc: () => LocalizedString - /** - * Removes a specified tag from a specified segment in Klaviyo - */ - longDesc: () => LocalizedString - options: { - tag: { + surname: { /** - * Tag + * Last Name */ displayName: () => LocalizedString /** - * Tag to remove + * The contact's last name. */ shortDesc: () => LocalizedString /** - * The tag to remove from the segment + * Update the last name or surname of the contact. */ longDesc: () => LocalizedString } - segment: { + emailAddresses: { /** - * Segment + * Email Addresses */ displayName: () => LocalizedString /** - * Target segment + * Email addresses for the contact. */ shortDesc: () => LocalizedString /** - * The segment to remove the tag from + * Update one or more email addresses for the contact. */ longDesc: () => LocalizedString + type: { + element_type: { + fields: { + address: { + /** + * Email Address + */ + displayName: () => LocalizedString + /** + * The email address of the contact. + */ + shortDesc: () => LocalizedString + /** + * Enter a valid email address for the contact. + */ + longDesc: () => LocalizedString + } + name: { + /** + * Display Name + */ + displayName: () => LocalizedString + /** + * The display name for this email address. + */ + shortDesc: () => LocalizedString + /** + * Enter how you want the name to appear for this email address. + */ + longDesc: () => LocalizedString + } + } + } + } } - } - } - send_campaign: { - groups: { - /** - * Campaigns - */ - '0': () => LocalizedString - } - /** - * Send Campaign - */ - displayName: () => LocalizedString - /** - * Sends a campaign - */ - shortDesc: () => LocalizedString - /** - * Sends a draft campaign immediately to its target audience - */ - longDesc: () => LocalizedString - options: { - id: { + businessPhones: { /** - * Campaign ID + * Business Phones */ displayName: () => LocalizedString /** - * The ID of the campaign to send + * Business phone numbers for the contact. */ shortDesc: () => LocalizedString /** - * The unique identifier of the campaign you want to send + * Update one or more business phone numbers for the contact. */ longDesc: () => LocalizedString } - } - } - subscribe_profile: { - groups: { - /** - * Profiles - */ - '0': () => LocalizedString - } - /** - * Subscribe Profile - */ - displayName: () => LocalizedString - /** - * Subscribes a profile to marketing channels - */ - shortDesc: () => LocalizedString - /** - * Subscribes a profile to email marketing, SMS marketing, or both channels - */ - longDesc: () => LocalizedString - options: { - profileId: { + mobilePhone: { /** - * Profile ID + * Mobile Phone */ displayName: () => LocalizedString /** - * The ID of the profile to subscribe + * The contact's mobile phone number. */ shortDesc: () => LocalizedString /** - * The unique identifier of the profile to subscribe + * Update the mobile or cell phone number for the contact. */ longDesc: () => LocalizedString } - email: { + jobTitle: { /** - * Email + * Job Title */ displayName: () => LocalizedString /** - * Email address + * The contact's job title. */ shortDesc: () => LocalizedString /** - * The email address of the profile to subscribe + * Update the professional title or role of the contact. */ longDesc: () => LocalizedString } - phoneNumber: { + companyName: { /** - * Phone Number + * Company Name */ displayName: () => LocalizedString /** - * Phone number + * The name of the contact's company. */ shortDesc: () => LocalizedString /** - * The phone number of the profile to subscribe + * Update the organization or company where the contact works. */ longDesc: () => LocalizedString } - consentToSubscribeToChannel: { + department: { /** - * Subscription Channel + * Department */ displayName: () => LocalizedString /** - * Channel to subscribe to + * The contact's department. */ shortDesc: () => LocalizedString /** - * The marketing channel(s) to subscribe the profile to + * Update the department or division within the company where the contact works. */ longDesc: () => LocalizedString } - smsSubscriptionType: { + officeLocation: { /** - * SMS Subscription Type + * Office Location */ displayName: () => LocalizedString /** - * Type of SMS subscription + * The contact's office location. */ shortDesc: () => LocalizedString /** - * The type of SMS subscription (marketing, transactional, or both) + * Update the physical location or office where the contact works. */ longDesc: () => LocalizedString } - list: { + businessAddress: { /** - * List + * Business Address */ displayName: () => LocalizedString /** - * Target list + * The contact's business address. */ shortDesc: () => LocalizedString /** - * Optional list to add the profile to during subscription + * Update the full business address details for the contact. */ longDesc: () => LocalizedString + type: { + fields: { + street: { + /** + * Street + */ + displayName: () => LocalizedString + /** + * Street address. + */ + shortDesc: () => LocalizedString + /** + * Update the street address including building number and street name. + */ + longDesc: () => LocalizedString + } + city: { + /** + * City + */ + displayName: () => LocalizedString + /** + * City name. + */ + shortDesc: () => LocalizedString + /** + * Update the city or town for the business address. + */ + longDesc: () => LocalizedString + } + state: { + /** + * State/Province + */ + displayName: () => LocalizedString + /** + * State or province. + */ + shortDesc: () => LocalizedString + /** + * Update the state, province, or region for the business address. + */ + longDesc: () => LocalizedString + } + countryOrRegion: { + /** + * Country/Region + */ + displayName: () => LocalizedString + /** + * Country or region. + */ + shortDesc: () => LocalizedString + /** + * Update the country or region for the business address. + */ + longDesc: () => LocalizedString + } + postalCode: { + /** + * Postal Code + */ + displayName: () => LocalizedString + /** + * Postal or zip code. + */ + shortDesc: () => LocalizedString + /** + * Update the postal code or zip code for the business address. + */ + longDesc: () => LocalizedString + } + } + } } } } - unsubscribe_profile: { - groups: { - /** - * Profiles - */ - '0': () => LocalizedString - } + 'delete-contact': { /** - * Unsubscribe Profile + * Delete Contact */ displayName: () => LocalizedString /** - * Unsubscribes a profile from marketing channels + * Delete a contact from your Outlook contacts. */ shortDesc: () => LocalizedString /** - * Unsubscribes a profile from email and/or SMS marketing based on provided identifiers + * Permanently remove a contact from your Microsoft Outlook contacts. */ longDesc: () => LocalizedString options: { - email: { - /** - * Email - */ - displayName: () => LocalizedString - /** - * Email address - */ - shortDesc: () => LocalizedString - /** - * The email address of the profile to unsubscribe - */ - longDesc: () => LocalizedString - } - phoneNumber: { - /** - * Phone Number - */ - displayName: () => LocalizedString - /** - * Phone number - */ - shortDesc: () => LocalizedString - /** - * The phone number of the profile to unsubscribe - */ - longDesc: () => LocalizedString - } - smsSubscriptionType: { + contactId: { /** - * SMS Subscription Type + * Contact ID */ displayName: () => LocalizedString /** - * Type of SMS subscription to cancel + * The unique identifier for the contact. */ shortDesc: () => LocalizedString /** - * The type of SMS subscription to cancel (marketing, transactional, or both) + * Select the unique identifier of the contact to be deleted. */ longDesc: () => LocalizedString } } } - update_profile: { - groups: { - /** - * Profiles - */ - '0': () => LocalizedString - } + 'create-event': { /** - * Update Profile + * Create Event */ displayName: () => LocalizedString /** - * Updates an existing profile + * Create a new event in your Outlook calendar. */ shortDesc: () => LocalizedString /** - * Updates an existing profile with new information and optionally adds them to a list + * Create a new event or meeting in your Microsoft Outlook calendar with details such as title, start and end times, location, and attendees. */ longDesc: () => LocalizedString options: { - id: { - /** - * Profile ID - */ - displayName: () => LocalizedString - /** - * The ID of the profile to update - */ - shortDesc: () => LocalizedString - /** - * The unique identifier of the profile you want to update - */ - longDesc: () => LocalizedString - } - email: { - /** - * Email - */ - displayName: () => LocalizedString - /** - * Email address - */ - shortDesc: () => LocalizedString - /** - * The new email address for the profile - */ - longDesc: () => LocalizedString - } - phoneNumber: { - /** - * Phone Number - */ - displayName: () => LocalizedString - /** - * Phone number - */ - shortDesc: () => LocalizedString - /** - * The new phone number for the profile - */ - longDesc: () => LocalizedString - } - firstName: { - /** - * First Name - */ - displayName: () => LocalizedString - /** - * First name - */ - shortDesc: () => LocalizedString - /** - * The first name of the profile - */ - longDesc: () => LocalizedString - } - lastName: { + calendarId: { /** - * Last Name + * Calendar ID */ displayName: () => LocalizedString /** - * Last name + * The calendar where the event will be created. */ shortDesc: () => LocalizedString /** - * The last name of the profile + * Select the calendar where you want to create the new event. */ longDesc: () => LocalizedString } @@ -224005,2115 +228516,1959 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Job title + * The title or subject of the event. */ shortDesc: () => LocalizedString /** - * The job title of the profile + * Enter a title or subject for the event that will appear in your calendar. */ longDesc: () => LocalizedString } - organization: { + start: { /** - * Organization + * Start Time */ displayName: () => LocalizedString /** - * Organization name + * When the event begins. */ shortDesc: () => LocalizedString /** - * The organization or company name for the profile + * Enter the date and time when the event will start. */ longDesc: () => LocalizedString } - city: { + timezone: { /** - * City + * Time Zone */ displayName: () => LocalizedString /** - * City + * The time zone for the event times. */ shortDesc: () => LocalizedString /** - * The city where the profile is located + * Select the time zone that applies to the start and end times of the event. */ longDesc: () => LocalizedString } - region: { + end: { /** - * Region + * End Time */ displayName: () => LocalizedString /** - * State or region + * When the event ends. */ shortDesc: () => LocalizedString /** - * The state or region where the profile is located + * Enter the date and time when the event will end. If not specified, defaults to 1 hour after start time. */ longDesc: () => LocalizedString } - country: { + location: { /** - * Country + * Location */ displayName: () => LocalizedString /** - * Country + * Where the event will take place. */ shortDesc: () => LocalizedString /** - * The country where the profile is located + * Enter the physical location or virtual meeting place for the event. */ longDesc: () => LocalizedString } - zip: { + attendees: { /** - * ZIP Code + * Attendees */ displayName: () => LocalizedString /** - * ZIP or postal code + * People invited to the event. */ shortDesc: () => LocalizedString /** - * The ZIP or postal code for the profile location + * Add one or more attendees to invite to the event. */ longDesc: () => LocalizedString + type: { + element_type: { + fields: { + address: { + /** + * Email Address + */ + displayName: () => LocalizedString + /** + * The attendee's email address. + */ + shortDesc: () => LocalizedString + /** + * Enter the email address of the person you want to invite. + */ + longDesc: () => LocalizedString + } + name: { + /** + * Display Name + */ + displayName: () => LocalizedString + /** + * The attendee's display name. + */ + shortDesc: () => LocalizedString + /** + * Optionally enter a display name for the attendee. + */ + longDesc: () => LocalizedString + } + } + } + } } - imageUrl: { + body: { /** - * Image URL + * Body */ displayName: () => LocalizedString /** - * Profile image URL + * The body content of the event. */ shortDesc: () => LocalizedString /** - * URL to the profile image + * Enter the description or details of the event that attendees will see in the invitation. */ longDesc: () => LocalizedString } - externalId: { + bodyContentType: { /** - * External ID + * Body Content Type */ displayName: () => LocalizedString /** - * External identifier + * Format of the body content. */ shortDesc: () => LocalizedString /** - * External identifier for the profile from your system + * Select whether the body content is plain text or HTML formatted. */ longDesc: () => LocalizedString } - customProperties: { + isOnlineMeeting: { /** - * Custom Properties + * Online Meeting */ displayName: () => LocalizedString /** - * Custom profile properties + * Whether this is an online meeting. */ shortDesc: () => LocalizedString /** - * Additional custom properties to set on the profile + * Enable this option to make this event an online meeting and generate a meeting link. */ longDesc: () => LocalizedString } } } - add_tag_to_list: { - groups: { - /** - * Tags - */ - '0': () => LocalizedString - /** - * Lists - */ - '1': () => LocalizedString - } + 'delete-event': { /** - * Add Tag to List + * Delete Event */ displayName: () => LocalizedString /** - * Adds an existing tag to a list + * Delete an event from your Outlook calendar. */ shortDesc: () => LocalizedString /** - * Associates an existing tag with a specified list in Klaviyo + * Permanently remove an event or meeting from your Microsoft Outlook calendar. */ longDesc: () => LocalizedString options: { - tag: { + calendarId: { /** - * Tag + * Calendar ID */ displayName: () => LocalizedString /** - * Tag to add + * The calendar containing the event. */ shortDesc: () => LocalizedString /** - * The tag to add to the list + * Select the calendar that contains the event you want to delete. */ longDesc: () => LocalizedString } - list: { + eventId: { /** - * List + * Event ID */ displayName: () => LocalizedString /** - * Target list + * The unique identifier for the event. */ shortDesc: () => LocalizedString /** - * The list to add the tag to + * Select the unique identifier of the event to be deleted. */ longDesc: () => LocalizedString } } } - add_tag_to_segment: { - groups: { - /** - * Tags - */ - '0': () => LocalizedString - /** - * Segments - */ - '1': () => LocalizedString - } + 'list-contacts': { /** - * Add Tag to Segment + * List Contacts */ displayName: () => LocalizedString /** - * Adds an existing tag to a segment + * Retrieve a list of contacts from your Outlook contacts. */ shortDesc: () => LocalizedString /** - * Associates an existing tag with a specified segment in Klaviyo + * Get a list of contacts from your Microsoft Outlook contacts with optional filtering and limit. */ longDesc: () => LocalizedString options: { - tag: { + limit: { /** - * Tag + * Limit */ displayName: () => LocalizedString /** - * Tag to add + * The maximum number of contacts to retrieve. */ shortDesc: () => LocalizedString /** - * The tag to add to the segment + * Specify the maximum number of contacts to retrieve from the Outlook account. */ longDesc: () => LocalizedString } - segment: { + filter: { /** - * Segment + * Filter */ displayName: () => LocalizedString /** - * Target segment + * Filter contacts by name or email. */ shortDesc: () => LocalizedString /** - * The segment to add the tag to + * Enter text to filter contacts by name or email address. Only contacts matching the filter will be returned. */ longDesc: () => LocalizedString } } } - create_event: { - groups: { - /** - * Events - */ - '0': () => LocalizedString - } + 'list-events': { /** - * Create Event + * List Events */ displayName: () => LocalizedString /** - * Creates a new event + * Retrieve a list of events from your Outlook calendar. */ shortDesc: () => LocalizedString /** - * Creates a new event for a specific metric in Klaviyo + * Get a list of events from your Microsoft Outlook calendar with optional filtering by date range and limit. */ longDesc: () => LocalizedString options: { - email: { - /** - * Email - */ - displayName: () => LocalizedString - /** - * Email address - */ - shortDesc: () => LocalizedString - /** - * The email address of the profile for the event - */ - longDesc: () => LocalizedString - } - metric: { - /** - * Metric - */ - displayName: () => LocalizedString - /** - * Event metric - */ - shortDesc: () => LocalizedString - /** - * The metric or event type to track - */ - longDesc: () => LocalizedString - } - profile: { - /** - * Profile - */ - displayName: () => LocalizedString - /** - * Profile ID - */ - shortDesc: () => LocalizedString - /** - * The profile ID to associate with the event - */ - longDesc: () => LocalizedString - } - time: { - /** - * Time - */ - displayName: () => LocalizedString - /** - * Event timestamp - */ - shortDesc: () => LocalizedString - /** - * The timestamp when the event occurred - */ - longDesc: () => LocalizedString - } - value: { + calendarId: { /** - * Value + * Calendar ID */ displayName: () => LocalizedString /** - * Event value + * The calendar to retrieve events from. */ shortDesc: () => LocalizedString /** - * The monetary value associated with the event + * Select the calendar from which you want to retrieve events. */ longDesc: () => LocalizedString } - customId: { + startDateTime: { /** - * Custom ID + * Start Date and Time */ displayName: () => LocalizedString /** - * Unique event identifier + * The start date and time for filtering events. */ shortDesc: () => LocalizedString /** - * A custom unique identifier for the event + * Enter a date and time to retrieve events that start on or after this time. */ longDesc: () => LocalizedString } - customProperties: { + endDateTime: { /** - * Custom Properties + * End Date and Time */ displayName: () => LocalizedString /** - * Event properties + * The end date and time for filtering events. */ shortDesc: () => LocalizedString /** - * Additional custom properties for the event + * Enter a date and time to retrieve events that end on or before this time. */ longDesc: () => LocalizedString } - } - } - create_list: { - groups: { - /** - * Lists - */ - '0': () => LocalizedString - } - /** - * Create List - */ - displayName: () => LocalizedString - /** - * Creates a new list - */ - shortDesc: () => LocalizedString - /** - * Creates a new list in Klaviyo with the specified configuration - */ - longDesc: () => LocalizedString - options: { - name: { + limit: { /** - * Name + * Limit */ displayName: () => LocalizedString /** - * List name + * The maximum number of events to retrieve. */ shortDesc: () => LocalizedString /** - * The name of the new list + * Specify the maximum number of events to retrieve from the Outlook calendar. */ longDesc: () => LocalizedString } } } - create_or_update_profile: { - groups: { - /** - * Profiles - */ - '0': () => LocalizedString - } + 'send-email': { /** - * Create Or Update Profile + * Send Email */ displayName: () => LocalizedString /** - * Creates a new profile or updates an existing one + * Send an email from your Outlook account. */ shortDesc: () => LocalizedString /** - * Creates a new profile or updates an existing profile and optionally adds it to a list + * Compose and send an email message from your Microsoft Outlook account to one or more recipients. */ longDesc: () => LocalizedString options: { - id: { + toRecipients: { /** - * Profile ID + * To Recipients */ displayName: () => LocalizedString /** - * Profile ID (for update) + * The primary recipients of the email. */ shortDesc: () => LocalizedString /** - * The ID of an existing profile to update (leave empty to create new) + * Enter one or more email addresses for the primary recipients of the email. */ longDesc: () => LocalizedString + type: { + element_type: { + fields: { + address: { + /** + * Email Address + */ + displayName: () => LocalizedString + /** + * Recipient's email address. + */ + shortDesc: () => LocalizedString + /** + * Enter the email address of the recipient. + */ + longDesc: () => LocalizedString + } + name: { + /** + * Display Name + */ + displayName: () => LocalizedString + /** + * Recipient's display name. + */ + shortDesc: () => LocalizedString + /** + * Optionally enter a display name for the recipient. + */ + longDesc: () => LocalizedString + } + } + } + } } - email: { + ccRecipients: { /** - * Email + * CC Recipients */ displayName: () => LocalizedString /** - * Email address + * The carbon copy recipients of the email. */ shortDesc: () => LocalizedString /** - * The email address for the profile + * Optionally enter one or more email addresses for recipients to be copied on the email. */ longDesc: () => LocalizedString + type: { + element_type: { + fields: { + address: { + /** + * Email Address + */ + displayName: () => LocalizedString + /** + * CC recipient's email address. + */ + shortDesc: () => LocalizedString + /** + * Enter the email address of the CC recipient. + */ + longDesc: () => LocalizedString + } + name: { + /** + * Display Name + */ + displayName: () => LocalizedString + /** + * CC recipient's display name. + */ + shortDesc: () => LocalizedString + /** + * Optionally enter a display name for the CC recipient. + */ + longDesc: () => LocalizedString + } + } + } + } } - phoneNumber: { + bccRecipients: { /** - * Phone Number + * BCC Recipients */ displayName: () => LocalizedString /** - * Phone number + * The blind carbon copy recipients of the email. */ shortDesc: () => LocalizedString /** - * The phone number for the profile + * Optionally enter one or more email addresses for recipients to be blind copied on the email. */ longDesc: () => LocalizedString + type: { + element_type: { + fields: { + address: { + /** + * Email Address + */ + displayName: () => LocalizedString + /** + * BCC recipient's email address. + */ + shortDesc: () => LocalizedString + /** + * Enter the email address of the BCC recipient. + */ + longDesc: () => LocalizedString + } + name: { + /** + * Display Name + */ + displayName: () => LocalizedString + /** + * BCC recipient's display name. + */ + shortDesc: () => LocalizedString + /** + * Optionally enter a display name for the BCC recipient. + */ + longDesc: () => LocalizedString + } + } + } + } } - firstName: { + subject: { /** - * First Name + * Subject */ displayName: () => LocalizedString /** - * First name + * The subject line of the email. */ shortDesc: () => LocalizedString /** - * The first name of the profile + * Enter the subject line that will appear in the recipient's inbox. */ longDesc: () => LocalizedString } - lastName: { + body: { /** - * Last Name + * Body */ displayName: () => LocalizedString /** - * Last name + * The content of the email. */ shortDesc: () => LocalizedString /** - * The last name of the profile + * Enter the main message content of the email. */ longDesc: () => LocalizedString } - title: { + bodyContentType: { /** - * Title + * Body Content Type */ displayName: () => LocalizedString /** - * Job title + * Format of the email body. */ shortDesc: () => LocalizedString /** - * The job title of the profile + * Select whether the email body is plain text or HTML formatted. */ longDesc: () => LocalizedString } - organization: { + saveToSentItems: { /** - * Organization + * Save to Sent Items */ displayName: () => LocalizedString /** - * Organization name + * Whether to save a copy in Sent Items. */ shortDesc: () => LocalizedString /** - * The organization or company name for the profile + * Choose whether to save a copy of the email in your Sent Items folder. */ longDesc: () => LocalizedString } - city: { + attachments: { /** - * City + * Attachments */ displayName: () => LocalizedString /** - * City + * Files to attach to the email. */ shortDesc: () => LocalizedString /** - * The city where the profile is located + * Optionally attach files to the email. You can add one or more files to be sent with the email. */ longDesc: () => LocalizedString } - region: { + } + } + } + triggers: { + 'new-email-with-attachment': { + /** + * New Email with Attachment + */ + displayName: () => LocalizedString + /** + * Triggers when an email with attachments is received, processing each matching attachment individually. + */ + shortDesc: () => LocalizedString + /** + * Monitors an Outlook mailbox for new emails with attachments. When an email with attachments is received, each attachment that matches the specified filters will trigger a separate event. This allows for processing individual attachments from emails while maintaining the full email context. + */ + longDesc: () => LocalizedString + options: { + senderFilter: { /** - * Region + * Sender Filter */ displayName: () => LocalizedString /** - * State or region + * Only process emails from this sender */ shortDesc: () => LocalizedString /** - * The state or region where the profile is located + * If specified, only emails from this exact sender email address will be processed. Leave empty to process emails from any sender. */ longDesc: () => LocalizedString } - country: { + subjectFilter: { /** - * Country + * Subject Filter */ displayName: () => LocalizedString /** - * Country + * Only process emails with this text in the subject */ shortDesc: () => LocalizedString /** - * The country where the profile is located + * If specified, only emails containing this text in the subject line will be processed. Leave empty to process emails with any subject. */ longDesc: () => LocalizedString } - zip: { + filenameFilters: { /** - * ZIP Code + * Filename Filters */ displayName: () => LocalizedString /** - * ZIP or postal code + * Only process attachments with matching filenames */ shortDesc: () => LocalizedString /** - * The ZIP or postal code for the profile location + * A list of text strings to match against attachment filenames. If provided, only attachments with filenames containing any of these strings will be processed. Matching is case-insensitive. Leave empty to process all attachments regardless of filename. */ longDesc: () => LocalizedString } - imageUrl: { + mimeTypeFilters: { /** - * Image URL + * MIME Type Filters */ displayName: () => LocalizedString /** - * Profile image URL + * Only process attachments with matching MIME types */ shortDesc: () => LocalizedString /** - * URL to the profile image + * A list of MIME type strings to match against attachment content types. If provided, only attachments with content types containing any of these strings will be processed. For example, use "pdf" to match PDF files, "image/" to match all images, or "spreadsheet" to match Excel files. Matching is case-insensitive. Leave empty to process all attachments regardless of MIME type. */ longDesc: () => LocalizedString } - externalId: { + action: { /** - * External ID + * Email Action */ displayName: () => LocalizedString /** - * External identifier + * Action to perform on the email after processing its attachments */ shortDesc: () => LocalizedString /** - * External identifier for the profile from your system + * Specify what should happen to the email after all matching attachments have been processed. Options include: None (leave the email as is), Delete (permanently remove the email), or Move (relocate the email to another folder). */ longDesc: () => LocalizedString } - customProperties: { + targetFolderId: { /** - * Custom Properties + * Target Folder */ displayName: () => LocalizedString /** - * Custom profile properties + * Destination folder for emails when using Move action */ shortDesc: () => LocalizedString /** - * Additional custom properties to set on the profile + * If the Email Action is set to "Move", specify the folder where the email should be moved after all attachments have been processed. This option is only used when Move is selected. */ longDesc: () => LocalizedString } } - } - create_profile: { - groups: { + event_info: { /** - * Profiles + * Contains the email data along with information about a single matching attachment. */ - '0': () => LocalizedString + desc: () => LocalizedString } + } + 'new-contact': { /** - * Create Profile + * New Contact */ displayName: () => LocalizedString /** - * Creates a new profile + * Triggered when a new contact is created in Outlook. */ shortDesc: () => LocalizedString /** - * Creates a new profile in Klaviyo with the specified information + * This trigger is activated whenever a new contact is added to your Microsoft Outlook contacts. + */ + longDesc: () => LocalizedString + } + 'new-email': { + /** + * New Email Trigger + */ + displayName: () => LocalizedString + /** + * Triggers when a new email is received in your Outlook inbox + */ + shortDesc: () => LocalizedString + /** + * Monitors your Outlook inbox and triggers when new emails arrive. Supports filtering by sender, subject, or attachments, and can optionally delete or move processed emails. */ longDesc: () => LocalizedString options: { - email: { + senderFilter: { /** - * Email + * Sender Filter */ displayName: () => LocalizedString /** - * Email address + * Filter emails by sender address */ shortDesc: () => LocalizedString /** - * The email address for the new profile + * Only trigger for emails from this specific sender email address. Leave empty to trigger for all senders. */ longDesc: () => LocalizedString } - phoneNumber: { + subjectFilter: { /** - * Phone Number + * Subject Filter */ displayName: () => LocalizedString /** - * Phone number + * Filter emails by subject content */ shortDesc: () => LocalizedString /** - * The phone number for the new profile + * Only trigger for emails containing this text in the subject line. Leave empty to match any subject. */ longDesc: () => LocalizedString } - firstName: { + hasAttachments: { /** - * First Name + * Has Attachments */ displayName: () => LocalizedString /** - * First name + * Filter by attachment presence */ shortDesc: () => LocalizedString /** - * The first name of the profile + * Filter emails based on whether they have attachments. Set to true to only trigger for emails with attachments, false for emails without attachments, or leave empty to trigger for both. */ longDesc: () => LocalizedString } - lastName: { + includeAttachmentData: { /** - * Last Name + * Include Attachment Data */ displayName: () => LocalizedString /** - * Last name + * Include attachment content in trigger data */ shortDesc: () => LocalizedString /** - * The last name of the profile + * When enabled, the trigger will fetch and include the actual attachment content in the trigger data. This may increase processing time for large attachments. */ longDesc: () => LocalizedString } - title: { + action: { /** - * Title + * Email Action */ displayName: () => LocalizedString /** - * Job title + * Action to perform after triggering */ shortDesc: () => LocalizedString /** - * The job title of the profile + * Optional action to perform on emails after the trigger runs. Choose "None" to leave emails unchanged, "Delete" to remove the email, or "Move" to relocate the email to another folder. */ longDesc: () => LocalizedString } - organization: { + targetFolderId: { + /** + * Target Folder + */ + displayName: () => LocalizedString + /** + * Destination folder for moved emails + */ + shortDesc: () => LocalizedString + /** + * The folder where emails will be moved if the "Move" action is selected. Only required when action is set to "Move". + */ + longDesc: () => LocalizedString + } + } + event_info: { + /** + * Data from the received email, including metadata and content + */ + desc: () => LocalizedString + } + } + 'new-event': { + /** + * New Event + */ + displayName: () => LocalizedString + /** + * Triggered when a new event is created in an Outlook calendar. + */ + shortDesc: () => LocalizedString + /** + * This trigger is activated whenever a new event or meeting is created in your Microsoft Outlook calendar. + */ + longDesc: () => LocalizedString + options: { + calendarId: { /** - * Organization + * Calendar ID */ displayName: () => LocalizedString /** - * Organization name + * The calendar to monitor for new events. */ shortDesc: () => LocalizedString /** - * The organization or company name for the profile + * Optionally select a specific calendar to monitor. If not specified, all calendars will be monitored. */ longDesc: () => LocalizedString } - city: { + } + } + } + } + Trello: { + groups: { + /** + * Project & Task Management + */ + '0': () => LocalizedString + } + /** + * Trello + */ + displayName: () => LocalizedString + /** + * Trello is a collaboration tool that organizes your projects into boards. + */ + shortDesc: () => LocalizedString + /** + * Trello is a collaboration tool that organizes your projects into boards. It is a web-based Kanban-style list-making application and is a subsidiary of Atlassian. + */ + longDesc: () => LocalizedString + triggers: { + 'card-due': { + /** + * Card Due + */ + displayName: () => LocalizedString + /** + * Triggers when a card becomes overdue. + */ + shortDesc: () => LocalizedString + /** + * This trigger fires when a card has passed its due date and has not been marked as complete. + */ + longDesc: () => LocalizedString + options: { + source: { /** - * City + * Source */ displayName: () => LocalizedString /** - * City + * Choose whether to monitor an entire board or a specific list. */ shortDesc: () => LocalizedString /** - * The city where the profile is located + * Select "board" to monitor all lists on a board, or "list" to monitor a specific list only. */ longDesc: () => LocalizedString } - region: { + boardId: { /** - * Region + * Board */ displayName: () => LocalizedString /** - * State or region + * The board containing the cards to monitor. */ shortDesc: () => LocalizedString /** - * The state or region where the profile is located + * Select the Trello board that contains the cards you want to monitor for due dates. */ longDesc: () => LocalizedString } - country: { + listId: { /** - * Country + * List */ displayName: () => LocalizedString /** - * Country + * The specific list containing the cards to monitor. */ shortDesc: () => LocalizedString /** - * The country where the profile is located + * Select a specific list to monitor for overdue cards. Only required if Source is set to "list". */ longDesc: () => LocalizedString } - zip: { + includeDueComplete: { /** - * ZIP Code + * Include Completed Cards */ displayName: () => LocalizedString /** - * ZIP or postal code + * Include cards marked as complete. */ shortDesc: () => LocalizedString /** - * The ZIP or postal code for the profile location + * When enabled, the trigger will include overdue cards that have been marked as complete. By default, only incomplete overdue cards are included. */ longDesc: () => LocalizedString } - imageUrl: { + } + } + 'new-board': { + /** + * New Board + */ + displayName: () => LocalizedString + /** + * Triggers when a new board is created. + */ + shortDesc: () => LocalizedString + /** + * This trigger fires when a new Trello board is created or shared with the authenticated user. + */ + longDesc: () => LocalizedString + } + 'new-card': { + /** + * New Card + */ + displayName: () => LocalizedString + /** + * Triggers when a new card is created. + */ + shortDesc: () => LocalizedString + /** + * This trigger fires when a new card is added to a specified board or list in Trello. + */ + longDesc: () => LocalizedString + options: { + source: { /** - * Image URL + * Source */ displayName: () => LocalizedString /** - * Profile image URL + * Choose whether to monitor an entire board or a specific list. */ shortDesc: () => LocalizedString /** - * URL to the profile image + * Select "board" to monitor all lists on a board, or "list" to monitor a specific list only. */ longDesc: () => LocalizedString } - externalId: { + boardId: { /** - * External ID + * Board */ displayName: () => LocalizedString /** - * External identifier + * The board to monitor for new cards. */ shortDesc: () => LocalizedString /** - * External identifier for the profile from your system + * Select the Trello board where you want to monitor for new cards being created. */ longDesc: () => LocalizedString } - customProperties: { + listId: { /** - * Custom Properties + * List */ displayName: () => LocalizedString /** - * Custom profile properties + * The specific list to monitor for new cards. */ shortDesc: () => LocalizedString /** - * Additional custom properties to set on the profile + * Select a specific list to monitor for new cards. Only required if Source is set to "list". */ longDesc: () => LocalizedString } } } - get_campaign: { - groups: { - /** - * Campaigns - */ - '0': () => LocalizedString - } + 'new-label': { /** - * Get Campaign + * New Label */ displayName: () => LocalizedString /** - * Retrieves a specific campaign + * Triggers when a new label is created. */ shortDesc: () => LocalizedString /** - * Retrieves detailed information about a specific campaign by its ID + * This trigger fires when a new label is created on a specified Trello board. */ longDesc: () => LocalizedString options: { - id: { + boardId: { /** - * Campaign ID + * Board */ displayName: () => LocalizedString /** - * The ID of the campaign to retrieve + * The board to monitor for new labels. */ shortDesc: () => LocalizedString /** - * The unique identifier of the campaign you want to retrieve + * Select the Trello board where you want to monitor for new labels being created. */ longDesc: () => LocalizedString } } } - add_profile_to_list: { - groups: { - /** - * Lists - */ - '0': () => LocalizedString - } + 'new-list': { /** - * Add Profile to List + * New List */ displayName: () => LocalizedString /** - * Adds an existing profile to a list + * Triggers when a new list is created. */ shortDesc: () => LocalizedString /** - * Adds an existing profile to a specified list in Klaviyo + * This trigger fires when a new list is added to a specified Trello board. */ longDesc: () => LocalizedString options: { - profile: { + boardId: { /** - * Profile + * Board */ displayName: () => LocalizedString /** - * Profile to add + * The board to monitor for new lists. */ shortDesc: () => LocalizedString /** - * The profile to add to the list + * Select the Trello board where you want to monitor for new lists being created. */ longDesc: () => LocalizedString } - list: { + includeArchivedLists: { /** - * List + * Include Archived Lists */ displayName: () => LocalizedString /** - * Target list + * Include lists that are archived. */ shortDesc: () => LocalizedString /** - * The list to add the profile to + * When enabled, the trigger will include new lists that are archived. By default, only open lists are included. */ longDesc: () => LocalizedString } } } - } - triggers: { - new_event: { + 'new-member': { /** - * New Event + * New Member */ displayName: () => LocalizedString /** - * Triggers when a new event occurs + * Triggers when a new member is added to a board. */ shortDesc: () => LocalizedString /** - * Triggers when a new event occurs for a specific metric in Klaviyo + * This trigger fires when a new member is added to a specified Trello board. */ longDesc: () => LocalizedString options: { - metric: { + boardId: { /** - * Metric + * Board */ displayName: () => LocalizedString /** - * Event metric to monitor + * The board to monitor for new members. */ shortDesc: () => LocalizedString /** - * The specific metric or event type to monitor for new events + * Select the Trello board where you want to monitor for new members being added. */ longDesc: () => LocalizedString } } } - new_profile: { + } + expressions: { + '&&': { /** - * New Profile + * And */ displayName: () => LocalizedString /** - * Triggers when a new profile is created + * Logical AND operator */ shortDesc: () => LocalizedString /** - * Triggers when a new profile is created in Klaviyo + * Combines multiple conditions where all must be true */ longDesc: () => LocalizedString } - new_list_profile: { + '||': { /** - * Profile Added to List + * Or */ displayName: () => LocalizedString /** - * Triggers when a profile is added to a list + * Logical OR operator */ shortDesc: () => LocalizedString /** - * Triggers when a profile is added to a specific list in Klaviyo + * Combines multiple conditions where at least one must be true */ longDesc: () => LocalizedString - options: { - list: { - /** - * List - */ - displayName: () => LocalizedString - /** - * List to monitor - */ - shortDesc: () => LocalizedString - /** - * The specific list to monitor for new profile additions - */ - longDesc: () => LocalizedString - } - } } - new_segment_profile: { + '==': { /** - * Profile Added to Segment + * Equals */ displayName: () => LocalizedString /** - * Triggers when a profile is added to a segment + * Field equals value */ shortDesc: () => LocalizedString /** - * Triggers when a profile is added to a specific segment in Klaviyo + * Matches records where the field equals the specified value */ longDesc: () => LocalizedString - options: { - segment: { - /** - * Segment - */ - displayName: () => LocalizedString - /** - * Segment to monitor - */ - shortDesc: () => LocalizedString - /** - * The specific segment to monitor for new profile additions - */ - longDesc: () => LocalizedString + } + '!=': { + /** + * Not Equals + */ + displayName: () => LocalizedString + /** + * Field does not equal value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field does not equal the specified value + */ + longDesc: () => LocalizedString + } + '>': { + /** + * Greater Than + */ + displayName: () => LocalizedString + /** + * Field is greater than value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field value is greater than the specified value + */ + longDesc: () => LocalizedString + } + '>=': { + /** + * Greater Than or Equal + */ + displayName: () => LocalizedString + /** + * Field is greater than or equal to value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field value is greater than or equal to the specified value + */ + longDesc: () => LocalizedString + } + '<': { + /** + * Less Than + */ + displayName: () => LocalizedString + /** + * Field is less than value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field value is less than the specified value + */ + longDesc: () => LocalizedString + } + '<=': { + /** + * Less Than or Equal + */ + displayName: () => LocalizedString + /** + * Field is less than or equal to value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field value is less than or equal to the specified value + */ + longDesc: () => LocalizedString + } + 'is-set': { + /** + * Is Set + */ + displayName: () => LocalizedString + /** + * Field has a value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field has a value (is not empty) + */ + longDesc: () => LocalizedString + } + 'is-not-set': { + /** + * Is Not Set + */ + displayName: () => LocalizedString + /** + * Field has no value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field has no value (is empty) + */ + longDesc: () => LocalizedString + } + contains: { + /** + * Contains + */ + displayName: () => LocalizedString + /** + * Field contains value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field contains the specified substring + */ + longDesc: () => LocalizedString + } + } + searchOptions: { + orderBy: { + /** + * Order By + */ + displayName: () => LocalizedString + /** + * Sort results by a specific field + */ + shortDesc: () => LocalizedString + /** + * Define the field and direction to sort search results + */ + longDesc: () => LocalizedString + type: { + fields: { + field: { + /** + * Field + */ + displayName: () => LocalizedString + /** + * The field to sort by + */ + shortDesc: () => LocalizedString + /** + * The name of the field to use for sorting results + */ + longDesc: () => LocalizedString + } + direction: { + /** + * Direction + */ + displayName: () => LocalizedString + /** + * Sort direction + */ + shortDesc: () => LocalizedString + /** + * The direction to sort results (ascending or descending) + */ + longDesc: () => LocalizedString + } } } } } } - Outlook: { + Teams: { /** - * Microsoft Outlook + * Microsoft Teams */ displayName: () => LocalizedString groups: { /** - * Email & Email Marketing + * Messaging & Real-time Communication */ '0': () => LocalizedString } /** - * Get access to your calendar events, contacts, and emails in Microsoft Outlook. + * Collaborate with your team using channels, meetings, and messages */ shortDesc: () => LocalizedString /** - * Microsoft Outlook is a personal information manager software system from Microsoft, available as a part of the Microsoft Office suite. Primarily an email application, it also includes a calendar, task manager, contact manager, note taking, journal, and web browsing. Connect your Outlook account to create and manage contacts, calendar events, and send emails. + * Microsoft Teams is a collaboration platform that enables messaging, file sharing, video meetings, and app integration within your organization. */ longDesc: () => LocalizedString actions: { - 'manage-email': { + 'create-channel': { /** - * Manage Email + * Create Channel */ displayName: () => LocalizedString /** - * Delete or move an email message to another folder. + * Create a new channel in a team */ shortDesc: () => LocalizedString /** - * Performs operations on an existing email message, allowing you to either delete it permanently or move it to another folder in your Outlook mailbox. + * Create a new channel within a specified team where members can collaborate through conversations, files, and integrated apps. */ longDesc: () => LocalizedString options: { - messageId: { + teamId: { /** - * Message ID + * Team ID */ displayName: () => LocalizedString /** - * ID of the email message + * Unique identifier for the team */ shortDesc: () => LocalizedString /** - * The unique identifier of the email message to be moved or deleted. + * The unique identifier (GUID) for the team where the new channel will be created. */ longDesc: () => LocalizedString } - action: { + displayName: { /** - * Action + * Channel Name */ displayName: () => LocalizedString /** - * Action to perform on the email + * Name of the new channel */ shortDesc: () => LocalizedString /** - * Specify whether to delete the email permanently or move it to another folder. + * The display name for the new channel. Must be unique within the team and between 1-50 characters. */ longDesc: () => LocalizedString } - targetFolderId: { + description: { /** - * Target Folder ID + * Description */ displayName: () => LocalizedString /** - * ID of the target folder + * Description of the channel purpose */ shortDesc: () => LocalizedString /** - * The ID of the folder where you want to move the email. This field is required only when the action is set to "move". + * Optional description explaining the purpose or topic of the channel. Limited to 1024 characters. + */ + longDesc: () => LocalizedString + } + membershipType: { + /** + * Membership Type + */ + displayName: () => LocalizedString + /** + * Channel privacy setting + */ + shortDesc: () => LocalizedString + /** + * Defines the privacy level of the channel. Options include "standard" (visible to all team members) or "private" (visible only to specific members). */ longDesc: () => LocalizedString } } } - 'search-emails': { + 'create-meeting': { /** - * Search Emails + * Create Meeting */ displayName: () => LocalizedString /** - * Search for emails using various filter criteria including advanced attachment filters. + * Schedule a new Teams meeting */ shortDesc: () => LocalizedString /** - * Search and retrieve emails from Outlook based on dates, senders, recipients, subject, body content, and detailed attachment properties like names, patterns, MIME types, and sizes. + * Schedule a new meeting in Microsoft Teams with specified participants, time, location, and other meeting details. */ longDesc: () => LocalizedString options: { - sort: { - /** - * Sort - */ - displayName: () => LocalizedString - /** - * Sort emails by a specific field - */ - shortDesc: () => LocalizedString - /** - * Sort the email results by a specific field. The default is to sort by received date in descending order. - */ - longDesc: () => LocalizedString - type: { - fields: { - field: { - /** - * Sort Field - */ - displayName: () => LocalizedString - /** - * Field to sort by - */ - shortDesc: () => LocalizedString - /** - * Select the field by which to sort the email results. - */ - longDesc: () => LocalizedString - } - order: { - /** - * Sort Order - */ - displayName: () => LocalizedString - /** - * Order of sorting - */ - shortDesc: () => LocalizedString - /** - * Choose the order in which to sort the results. Options include Ascending and Descending. - */ - longDesc: () => LocalizedString - } - } - } - } - limit: { - /** - * Limit - */ - displayName: () => LocalizedString - /** - * Maximum number of emails to return - */ - shortDesc: () => LocalizedString - /** - * Sets the maximum number of email results to return. Default is 50. - */ - longDesc: () => LocalizedString - } - startDateTime: { - /** - * Start Date - */ - displayName: () => LocalizedString - /** - * Filter emails received on or after this date - */ - shortDesc: () => LocalizedString - /** - * Only include emails that were received on or after this date and time. - */ - longDesc: () => LocalizedString - } - endDateTime: { - /** - * End Date - */ - displayName: () => LocalizedString - /** - * Filter emails received on or before this date - */ - shortDesc: () => LocalizedString - /** - * Only include emails that were received on or before this date and time. - */ - longDesc: () => LocalizedString - } - fromSender: { - /** - * From Sender - */ - displayName: () => LocalizedString - /** - * Filter emails from a specific sender - */ - shortDesc: () => LocalizedString - /** - * Only include emails from this specific sender email address. - */ - longDesc: () => LocalizedString - } - toRecipient: { - /** - * To Recipient - */ - displayName: () => LocalizedString - /** - * Filter emails sent to a specific recipient - */ - shortDesc: () => LocalizedString - /** - * Only include emails sent to this specific recipient email address. - */ - longDesc: () => LocalizedString - } subject: { /** * Subject */ displayName: () => LocalizedString /** - * Filter emails by subject line text - */ - shortDesc: () => LocalizedString - /** - * Only include emails with this text in the subject line. - */ - longDesc: () => LocalizedString - } - hasAttachments: { - /** - * Has Attachments - */ - displayName: () => LocalizedString - /** - * Filter emails with or without attachments + * Meeting title */ shortDesc: () => LocalizedString /** - * When set to true, only include emails that have attachments. When false, only include emails without attachments. + * The title or subject of the meeting that will appear in calendar invitations and the meeting list. */ longDesc: () => LocalizedString } - isRead: { + startDateTime: { /** - * Is Read + * Start Time */ displayName: () => LocalizedString /** - * Filter read or unread emails + * Meeting start date and time */ shortDesc: () => LocalizedString /** - * When set to true, only include emails that have been read. When false, only include unread emails. + * The date and time when the meeting begins in ISO 8601 format (YYYY-MM-DDTHH:MM:SS). */ longDesc: () => LocalizedString } - attachmentNames: { + endDateTime: { /** - * Attachment Names + * End Time */ displayName: () => LocalizedString /** - * Filter emails by specific attachment names + * Meeting end date and time */ shortDesc: () => LocalizedString /** - * Only include emails that have attachments with these filenames. + * The date and time when the meeting ends in ISO 8601 format (YYYY-MM-DDTHH:MM:SS). */ longDesc: () => LocalizedString } - bodyContains: { + teamId: { /** - * Body Contains + * Team ID */ displayName: () => LocalizedString /** - * Filter emails by body content + * Associated team identifier */ shortDesc: () => LocalizedString /** - * Only include emails that contain this text in the body content. + * Optional team identifier if the meeting is associated with a specific team. */ longDesc: () => LocalizedString } - includeAttachments: { + channelId: { /** - * Include Attachments + * Channel ID */ displayName: () => LocalizedString /** - * Include attachment content in results + * Associated channel identifier */ shortDesc: () => LocalizedString /** - * When set to true, the content of email attachments will be included in the results. This may increase response size significantly. + * Optional channel identifier if the meeting is associated with a specific channel within a team. */ longDesc: () => LocalizedString } - folder: { + content: { /** - * Folder + * Meeting Content */ displayName: () => LocalizedString /** - * Email folder to search in + * Meeting agenda or notes */ shortDesc: () => LocalizedString /** - * The email folder to search in. Defaults to Inbox if not specified. + * Optional text describing the meeting agenda, preparation materials, or other relevant information. */ longDesc: () => LocalizedString } - attachmentFilenamePattern: { + location: { /** - * Attachment Filename Pattern + * Location */ displayName: () => LocalizedString /** - * Filter by attachment filename pattern (regex) + * Physical or virtual meeting location */ shortDesc: () => LocalizedString /** - * Filter emails by a regular expression pattern that matches attachment filenames. Example: ".*\.pdf$" would match all PDF files. + * The physical location where the meeting will take place, or a custom virtual location description. */ longDesc: () => LocalizedString } - attachmentMimeTypes: { + attendees: { /** - * Attachment MIME Types + * Attendees */ displayName: () => LocalizedString /** - * Filter by attachment MIME types + * Meeting participants */ shortDesc: () => LocalizedString /** - * Only include emails with attachments matching these MIME types (e.g., "application/pdf", "image/jpeg"). + * List of email addresses or user IDs for people who should be invited to the meeting. */ longDesc: () => LocalizedString } - attachmentMinSize: { + isOnlineMeeting: { /** - * Attachment Minimum Size + * Online Meeting */ displayName: () => LocalizedString /** - * Filter by attachment minimum size in bytes + * Enable Teams online meeting features */ shortDesc: () => LocalizedString /** - * Only include emails with attachments larger than or equal to this size in bytes. + * When set to true, creates a Teams online meeting with video conferencing capabilities and a join link. */ longDesc: () => LocalizedString } - attachmentMaxSize: { + timeZone: { /** - * Attachment Maximum Size + * Time Zone */ displayName: () => LocalizedString /** - * Filter by attachment maximum size in bytes + * Meeting time zone */ shortDesc: () => LocalizedString /** - * Only include emails with attachments smaller than or equal to this size in bytes. + * The time zone for the meeting start and end times, such as "Pacific Standard Time" or "UTC". */ longDesc: () => LocalizedString } } } - 'create-contact': { + 'delete-meeting': { /** - * Create Contact + * Delete Meeting */ displayName: () => LocalizedString /** - * Create a new contact in your Outlook contacts. + * Cancel an existing meeting */ shortDesc: () => LocalizedString /** - * Create a new contact with details such as name, email, phone numbers, and job information in your Microsoft Outlook contacts. + * Permanently cancels and removes a scheduled meeting from all participants' calendars. */ longDesc: () => LocalizedString options: { - givenName: { - /** - * First Name - */ - displayName: () => LocalizedString - /** - * The contact's first name. - */ - shortDesc: () => LocalizedString - /** - * Enter the first name or given name of the contact. - */ - longDesc: () => LocalizedString - } - surname: { - /** - * Last Name - */ - displayName: () => LocalizedString - /** - * The contact's last name. - */ - shortDesc: () => LocalizedString - /** - * Enter the last name or surname of the contact. - */ - longDesc: () => LocalizedString - } - emailAddresses: { - /** - * Email Addresses - */ - displayName: () => LocalizedString - /** - * Email addresses for the contact. - */ - shortDesc: () => LocalizedString - /** - * Enter one or more email addresses for the contact. - */ - longDesc: () => LocalizedString - type: { - element_type: { - fields: { - address: { - /** - * Email Address - */ - displayName: () => LocalizedString - /** - * The email address of the contact. - */ - shortDesc: () => LocalizedString - /** - * Enter a valid email address for the contact. - */ - longDesc: () => LocalizedString - } - name: { - /** - * Display Name - */ - displayName: () => LocalizedString - /** - * The display name for this email address. - */ - shortDesc: () => LocalizedString - /** - * Enter how you want the name to appear for this email address. - */ - longDesc: () => LocalizedString - } - } - } - } - } - businessPhones: { - /** - * Business Phones - */ - displayName: () => LocalizedString - /** - * Business phone numbers for the contact. - */ - shortDesc: () => LocalizedString - /** - * Enter one or more business phone numbers for the contact. - */ - longDesc: () => LocalizedString - } - mobilePhone: { - /** - * Mobile Phone - */ - displayName: () => LocalizedString - /** - * The contact's mobile phone number. - */ - shortDesc: () => LocalizedString - /** - * Enter the mobile or cell phone number for the contact. - */ - longDesc: () => LocalizedString - } - jobTitle: { - /** - * Job Title - */ - displayName: () => LocalizedString - /** - * The contact's job title. - */ - shortDesc: () => LocalizedString - /** - * Enter the professional title or role of the contact. - */ - longDesc: () => LocalizedString - } - companyName: { - /** - * Company Name - */ - displayName: () => LocalizedString - /** - * The name of the contact's company. - */ - shortDesc: () => LocalizedString - /** - * Enter the organization or company where the contact works. - */ - longDesc: () => LocalizedString - } - department: { + meetingId: { /** - * Department + * Meeting ID */ displayName: () => LocalizedString /** - * The contact's department. + * Unique meeting identifier */ shortDesc: () => LocalizedString /** - * Enter the department or division within the company where the contact works. + * The unique identifier (GUID) of the meeting to be canceled. */ longDesc: () => LocalizedString } - officeLocation: { + meetingSource: { /** - * Office Location + * Meeting Source */ displayName: () => LocalizedString /** - * The contact's office location. + * Origin of the meeting */ shortDesc: () => LocalizedString /** - * Enter the physical location or office where the contact works. + * Specifies where the meeting was created, such as "private" or "team". */ longDesc: () => LocalizedString } - businessAddress: { + teamId: { /** - * Business Address + * Team ID */ displayName: () => LocalizedString /** - * The contact's business address. + * Associated team identifier */ shortDesc: () => LocalizedString /** - * Enter the full business address details for the contact. + * The team identifier if the meeting is associated with a specific team. */ longDesc: () => LocalizedString - type: { - fields: { - street: { - /** - * Street - */ - displayName: () => LocalizedString - /** - * Street address. - */ - shortDesc: () => LocalizedString - /** - * Enter the street address including building number and street name. - */ - longDesc: () => LocalizedString - } - city: { - /** - * City - */ - displayName: () => LocalizedString - /** - * City name. - */ - shortDesc: () => LocalizedString - /** - * Enter the city or town for the business address. - */ - longDesc: () => LocalizedString - } - state: { - /** - * State/Province - */ - displayName: () => LocalizedString - /** - * State or province. - */ - shortDesc: () => LocalizedString - /** - * Enter the state, province, or region for the business address. - */ - longDesc: () => LocalizedString - } - countryOrRegion: { - /** - * Country/Region - */ - displayName: () => LocalizedString - /** - * Country or region. - */ - shortDesc: () => LocalizedString - /** - * Enter the country or region for the business address. - */ - longDesc: () => LocalizedString - } - postalCode: { - /** - * Postal Code - */ - displayName: () => LocalizedString - /** - * Postal or zip code. - */ - shortDesc: () => LocalizedString - /** - * Enter the postal code or zip code for the business address. - */ - longDesc: () => LocalizedString - } - } - } } } } - 'update-contact': { + 'send-channel-message': { /** - * Update Contact + * Send Channel Message */ displayName: () => LocalizedString /** - * Update an existing contact in your Outlook contacts. + * Post a message to a team channel */ shortDesc: () => LocalizedString /** - * Modify details of an existing contact in your Microsoft Outlook contacts, such as name, email, phone numbers, or job information. + * Send a new message to a specific channel within a team that all channel members can view and respond to. */ longDesc: () => LocalizedString options: { - contactId: { + channelId: { /** - * Contact ID + * Channel ID */ displayName: () => LocalizedString /** - * The unique identifier for the contact. + * Target channel identifier */ shortDesc: () => LocalizedString /** - * Select the unique identifier of the contact you want to update. + * The unique identifier of the channel where the message will be posted. */ longDesc: () => LocalizedString } - givenName: { + teamId: { /** - * First Name + * Team ID */ displayName: () => LocalizedString /** - * The contact's first name. + * Team identifier */ shortDesc: () => LocalizedString /** - * Update the first name or given name of the contact. + * The unique identifier of the team containing the target channel. */ longDesc: () => LocalizedString } - surname: { + message: { /** - * Last Name + * Message */ displayName: () => LocalizedString /** - * The contact's last name. + * Message content */ shortDesc: () => LocalizedString /** - * Update the last name or surname of the contact. + * The text content of the message to be posted in the channel. */ longDesc: () => LocalizedString } - emailAddresses: { + contentType: { /** - * Email Addresses + * Content Type */ displayName: () => LocalizedString /** - * Email addresses for the contact. + * Format of the message content */ shortDesc: () => LocalizedString /** - * Update one or more email addresses for the contact. + * Specifies the format of the message content, such as "text" for plain text or "html" for formatted content. + */ + longDesc: () => LocalizedString + } + } + } + 'send-chat-message': { + /** + * Send Chat Message + */ + displayName: () => LocalizedString + /** + * Send a message to a chat conversation + */ + shortDesc: () => LocalizedString + /** + * Send a new message to a direct chat or group chat conversation outside of a team channel. + */ + longDesc: () => LocalizedString + options: { + chatId: { + /** + * Chat ID + */ + displayName: () => LocalizedString + /** + * Target chat identifier + */ + shortDesc: () => LocalizedString + /** + * The unique identifier of the direct chat or group chat where the message will be sent. */ longDesc: () => LocalizedString - type: { - element_type: { - fields: { - address: { - /** - * Email Address - */ - displayName: () => LocalizedString - /** - * The email address of the contact. - */ - shortDesc: () => LocalizedString - /** - * Enter a valid email address for the contact. - */ - longDesc: () => LocalizedString - } - name: { - /** - * Display Name - */ - displayName: () => LocalizedString - /** - * The display name for this email address. - */ - shortDesc: () => LocalizedString - /** - * Enter how you want the name to appear for this email address. - */ - longDesc: () => LocalizedString - } - } - } - } } - businessPhones: { + message: { /** - * Business Phones + * Message */ displayName: () => LocalizedString /** - * Business phone numbers for the contact. + * Message content */ shortDesc: () => LocalizedString /** - * Update one or more business phone numbers for the contact. + * The text content of the message to be sent in the chat. */ longDesc: () => LocalizedString } - mobilePhone: { + contentType: { /** - * Mobile Phone + * Content Type */ displayName: () => LocalizedString /** - * The contact's mobile phone number. + * Format of the message content */ shortDesc: () => LocalizedString /** - * Update the mobile or cell phone number for the contact. + * Specifies the format of the message content, such as "text" for plain text or "html" for formatted content. */ longDesc: () => LocalizedString } - jobTitle: { + } + } + 'update-channel': { + /** + * Update Channel + */ + displayName: () => LocalizedString + /** + * Modify an existing channel + */ + shortDesc: () => LocalizedString + /** + * Update the properties or membership of an existing channel within a team. + */ + longDesc: () => LocalizedString + options: { + channelId: { /** - * Job Title + * Channel ID */ displayName: () => LocalizedString /** - * The contact's job title. + * Target channel identifier */ shortDesc: () => LocalizedString /** - * Update the professional title or role of the contact. + * The unique identifier of the channel to be updated. */ longDesc: () => LocalizedString } - companyName: { + teamId: { /** - * Company Name + * Team ID */ displayName: () => LocalizedString /** - * The name of the contact's company. + * Team identifier */ shortDesc: () => LocalizedString /** - * Update the organization or company where the contact works. + * The unique identifier of the team containing the channel to be updated. */ longDesc: () => LocalizedString } - department: { + displayName: { /** - * Department + * Channel Name */ displayName: () => LocalizedString /** - * The contact's department. + * New channel name */ shortDesc: () => LocalizedString /** - * Update the department or division within the company where the contact works. + * The new display name for the channel. Must be unique within the team and between 1-50 characters. */ longDesc: () => LocalizedString } - officeLocation: { + description: { /** - * Office Location + * Description */ displayName: () => LocalizedString /** - * The contact's office location. + * New channel description */ shortDesc: () => LocalizedString /** - * Update the physical location or office where the contact works. + * Updated description explaining the purpose or topic of the channel. Limited to 1024 characters. */ longDesc: () => LocalizedString } - businessAddress: { + addMembers: { /** - * Business Address + * Add Members */ displayName: () => LocalizedString /** - * The contact's business address. + * Users to add to the channel */ shortDesc: () => LocalizedString /** - * Update the full business address details for the contact. + * List of user IDs to add as members to the channel. Only applicable for private channels. */ longDesc: () => LocalizedString - type: { - fields: { - street: { - /** - * Street - */ - displayName: () => LocalizedString - /** - * Street address. - */ - shortDesc: () => LocalizedString - /** - * Update the street address including building number and street name. - */ - longDesc: () => LocalizedString - } - city: { - /** - * City - */ - displayName: () => LocalizedString - /** - * City name. - */ - shortDesc: () => LocalizedString - /** - * Update the city or town for the business address. - */ - longDesc: () => LocalizedString - } - state: { - /** - * State/Province - */ - displayName: () => LocalizedString - /** - * State or province. - */ - shortDesc: () => LocalizedString - /** - * Update the state, province, or region for the business address. - */ - longDesc: () => LocalizedString - } - countryOrRegion: { - /** - * Country/Region - */ - displayName: () => LocalizedString - /** - * Country or region. - */ - shortDesc: () => LocalizedString - /** - * Update the country or region for the business address. - */ - longDesc: () => LocalizedString - } - postalCode: { - /** - * Postal Code - */ - displayName: () => LocalizedString - /** - * Postal or zip code. - */ - shortDesc: () => LocalizedString - /** - * Update the postal code or zip code for the business address. - */ - longDesc: () => LocalizedString - } - } - } } - } - } - 'delete-contact': { - /** - * Delete Contact - */ - displayName: () => LocalizedString - /** - * Delete a contact from your Outlook contacts. - */ - shortDesc: () => LocalizedString - /** - * Permanently remove a contact from your Microsoft Outlook contacts. - */ - longDesc: () => LocalizedString - options: { - contactId: { + removeMembers: { /** - * Contact ID + * Remove Members */ displayName: () => LocalizedString /** - * The unique identifier for the contact. + * Users to remove from the channel */ shortDesc: () => LocalizedString /** - * Select the unique identifier of the contact to be deleted. + * List of user IDs to remove from the channel membership. Only applicable for private channels. */ longDesc: () => LocalizedString } } } - 'create-event': { + 'update-meeting': { /** - * Create Event + * Update Meeting */ displayName: () => LocalizedString /** - * Create a new event in your Outlook calendar. + * Modify an existing meeting */ shortDesc: () => LocalizedString /** - * Create a new event or meeting in your Microsoft Outlook calendar with details such as title, start and end times, location, and attendees. + * Update the details of a scheduled meeting, such as time, location, attendees, or other properties. */ longDesc: () => LocalizedString options: { - calendarId: { + meetingId: { /** - * Calendar ID + * Meeting ID */ displayName: () => LocalizedString /** - * The calendar where the event will be created. + * Target meeting identifier */ shortDesc: () => LocalizedString /** - * Select the calendar where you want to create the new event. + * The unique identifier of the meeting to be updated. */ longDesc: () => LocalizedString } - title: { + subject: { /** - * Title + * Subject */ displayName: () => LocalizedString /** - * The title or subject of the event. + * Updated meeting title */ shortDesc: () => LocalizedString /** - * Enter a title or subject for the event that will appear in your calendar. + * The new title or subject of the meeting that will appear in calendar invitations and the meeting list. */ longDesc: () => LocalizedString } - start: { + startDateTime: { /** * Start Time */ displayName: () => LocalizedString /** - * When the event begins. + * Updated meeting start time */ shortDesc: () => LocalizedString /** - * Enter the date and time when the event will start. + * The new date and time when the meeting begins in ISO 8601 format (YYYY-MM-DDTHH:MM:SS). */ longDesc: () => LocalizedString } - timezone: { + endDateTime: { /** - * Time Zone + * End Time */ displayName: () => LocalizedString /** - * The time zone for the event times. + * Updated meeting end time */ shortDesc: () => LocalizedString /** - * Select the time zone that applies to the start and end times of the event. + * The new date and time when the meeting ends in ISO 8601 format (YYYY-MM-DDTHH:MM:SS). */ longDesc: () => LocalizedString } - end: { + teamId: { /** - * End Time + * Team ID */ displayName: () => LocalizedString /** - * When the event ends. + * Associated team identifier */ shortDesc: () => LocalizedString /** - * Enter the date and time when the event will end. If not specified, defaults to 1 hour after start time. + * Updated team identifier if the meeting is associated with a specific team. */ longDesc: () => LocalizedString } - location: { + channelId: { /** - * Location + * Channel ID */ displayName: () => LocalizedString /** - * Where the event will take place. + * Associated channel identifier */ shortDesc: () => LocalizedString /** - * Enter the physical location or virtual meeting place for the event. + * Updated channel identifier if the meeting is associated with a specific channel within a team. */ longDesc: () => LocalizedString } - attendees: { + content: { /** - * Attendees + * Meeting Content */ displayName: () => LocalizedString /** - * People invited to the event. + * Updated meeting agenda or notes */ shortDesc: () => LocalizedString /** - * Add one or more attendees to invite to the event. + * Updated text describing the meeting agenda, preparation materials, or other relevant information. */ longDesc: () => LocalizedString - type: { - element_type: { - fields: { - address: { - /** - * Email Address - */ - displayName: () => LocalizedString - /** - * The attendee's email address. - */ - shortDesc: () => LocalizedString - /** - * Enter the email address of the person you want to invite. - */ - longDesc: () => LocalizedString - } - name: { - /** - * Display Name - */ - displayName: () => LocalizedString - /** - * The attendee's display name. - */ - shortDesc: () => LocalizedString - /** - * Optionally enter a display name for the attendee. - */ - longDesc: () => LocalizedString - } - } - } - } } - body: { + location: { /** - * Body + * Location */ displayName: () => LocalizedString /** - * The body content of the event. + * Updated meeting location */ shortDesc: () => LocalizedString /** - * Enter the description or details of the event that attendees will see in the invitation. + * The new physical location where the meeting will take place, or a custom virtual location description. */ longDesc: () => LocalizedString } - bodyContentType: { + attendees: { /** - * Body Content Type + * Attendees */ displayName: () => LocalizedString /** - * Format of the body content. + * Updated meeting participants */ shortDesc: () => LocalizedString /** - * Select whether the body content is plain text or HTML formatted. + * Updated list of email addresses or user IDs for people who should be invited to the meeting. */ longDesc: () => LocalizedString } @@ -226123,327 +230478,279 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Whether this is an online meeting. + * Enable/disable Teams online meeting features */ shortDesc: () => LocalizedString /** - * Enable this option to make this event an online meeting and generate a meeting link. + * When set to true, ensures the meeting has Teams online meeting capabilities with video conferencing and a join link. + */ + longDesc: () => LocalizedString + } + timeZone: { + /** + * Time Zone + */ + displayName: () => LocalizedString + /** + * Updated meeting time zone + */ + shortDesc: () => LocalizedString + /** + * The new time zone for the meeting start and end times, such as "Pacific Standard Time" or "UTC". */ longDesc: () => LocalizedString } } } - 'delete-event': { + } + triggers: { + 'new-channel-message': { /** - * Delete Event + * New Channel Message */ displayName: () => LocalizedString /** - * Delete an event from your Outlook calendar. + * Trigger when a message is posted in a channel */ shortDesc: () => LocalizedString /** - * Permanently remove an event or meeting from your Microsoft Outlook calendar. + * This trigger fires when a new message is posted in a specified channel within a team. */ longDesc: () => LocalizedString options: { - calendarId: { + channelId: { /** - * Calendar ID + * Channel ID */ displayName: () => LocalizedString /** - * The calendar containing the event. + * Channel to monitor for messages */ shortDesc: () => LocalizedString /** - * Select the calendar that contains the event you want to delete. + * The unique identifier of the channel to monitor for new messages. */ longDesc: () => LocalizedString } - eventId: { + teamId: { /** - * Event ID + * Team ID */ displayName: () => LocalizedString /** - * The unique identifier for the event. + * Team identifier */ shortDesc: () => LocalizedString /** - * Select the unique identifier of the event to be deleted. + * The unique identifier of the team containing the channel to monitor. */ longDesc: () => LocalizedString } } } - 'list-contacts': { + 'new-chat-message': { /** - * List Contacts + * New Chat Message */ displayName: () => LocalizedString /** - * Retrieve a list of contacts from your Outlook contacts. + * Trigger when a message is sent in a chat */ shortDesc: () => LocalizedString /** - * Get a list of contacts from your Microsoft Outlook contacts with optional filtering and limit. + * This trigger fires when a new message is sent in a direct chat or group chat conversation. */ longDesc: () => LocalizedString options: { - limit: { - /** - * Limit - */ - displayName: () => LocalizedString - /** - * The maximum number of contacts to retrieve. - */ - shortDesc: () => LocalizedString - /** - * Specify the maximum number of contacts to retrieve from the Outlook account. - */ - longDesc: () => LocalizedString - } - filter: { + chatId: { /** - * Filter + * Chat ID */ displayName: () => LocalizedString /** - * Filter contacts by name or email. + * Chat to monitor for messages */ shortDesc: () => LocalizedString /** - * Enter text to filter contacts by name or email address. Only contacts matching the filter will be returned. + * The unique identifier of the direct chat or group chat to monitor for new messages. */ longDesc: () => LocalizedString } } } - 'list-events': { + 'new-meeting': { /** - * List Events + * New Meeting */ displayName: () => LocalizedString /** - * Retrieve a list of events from your Outlook calendar. + * Trigger when a meeting is created */ shortDesc: () => LocalizedString /** - * Get a list of events from your Microsoft Outlook calendar with optional filtering by date range and limit. + * This trigger fires when a new meeting is scheduled that matches the specified criteria. */ longDesc: () => LocalizedString options: { - calendarId: { - /** - * Calendar ID - */ - displayName: () => LocalizedString - /** - * The calendar to retrieve events from. - */ - shortDesc: () => LocalizedString - /** - * Select the calendar from which you want to retrieve events. - */ - longDesc: () => LocalizedString - } - startDateTime: { - /** - * Start Date and Time - */ - displayName: () => LocalizedString - /** - * The start date and time for filtering events. - */ - shortDesc: () => LocalizedString - /** - * Enter a date and time to retrieve events that start on or after this time. - */ - longDesc: () => LocalizedString - } - endDateTime: { + meetingSource: { /** - * End Date and Time + * Meeting Source */ displayName: () => LocalizedString /** - * The end date and time for filtering events. + * Origin of the meeting */ shortDesc: () => LocalizedString /** - * Enter a date and time to retrieve events that end on or before this time. + * Specifies which type of meetings to monitor, such as "private" or "team" meetings. */ longDesc: () => LocalizedString } - limit: { + teamId: { /** - * Limit + * Team ID */ displayName: () => LocalizedString /** - * The maximum number of events to retrieve. + * Associated team identifier */ shortDesc: () => LocalizedString /** - * Specify the maximum number of events to retrieve from the Outlook calendar. + * Optional filter to only trigger for meetings associated with a specific team. */ longDesc: () => LocalizedString } } } - 'send-email': { + } + } + Serenity: { + /** + * Serenity + */ + displayName: () => LocalizedString + groups: { + /** + * AI & Language Models + */ + '0': () => LocalizedString + } + /** + * Create conversations, execute agents and manage interactions with Serenity AI Hub. + */ + shortDesc: () => LocalizedString + /** + * Enterprise AI ecosystem that enables businesses to create, manage, and scale AI agents effortlessly, enhancing productivity and innovation across various processes. + */ + longDesc: () => LocalizedString + connectionMessage: { + /** + * Connect to Serenity AI Hub + */ + title: () => LocalizedString + /** + * To connect to Serenity AI Hub, you will need your **API Key**. + + ## Getting Your API Key + + 1. Sign in to your [Serenity AI Hub](https://serenity.qore.ai/) account + 2. Navigate to **Developer Tools** or **API Settings** + 3. Generate a new API key or copy your existing key + 4. Give your API key a descriptive name for identification + + ## Connection Details + + ### API Key + Your Serenity API key that authenticates requests to execute agents, manage conversations, and interact with the Serenity AI Hub platform. + + **Note:** Keep your API key secure and never share it publicly. Your API key grants access to your organization's AI agents and conversations. + */ + content: () => LocalizedString + } + actions: { + 'create-conversation': { /** - * Send Email + * Create Conversation */ displayName: () => LocalizedString /** - * Send an email from your Outlook account. + * Create a conversation with a conversation agent */ shortDesc: () => LocalizedString /** - * Compose and send an email message from your Microsoft Outlook account to one or more recipients. + * Creates a conversation with the given agent code. This is required before executing an agent. */ longDesc: () => LocalizedString options: { - toRecipients: { + agentCode: { /** - * To Recipients + * Agent Code */ displayName: () => LocalizedString /** - * The primary recipients of the email. + * The code of the agent to create a conversation with */ shortDesc: () => LocalizedString /** - * Enter one or more email addresses for the primary recipients of the email. + * The code of the agent to create a conversation with */ longDesc: () => LocalizedString - type: { - element_type: { - fields: { - address: { - /** - * Email Address - */ - displayName: () => LocalizedString - /** - * Recipient's email address. - */ - shortDesc: () => LocalizedString - /** - * Enter the email address of the recipient. - */ - longDesc: () => LocalizedString - } - name: { - /** - * Display Name - */ - displayName: () => LocalizedString - /** - * Recipient's display name. - */ - shortDesc: () => LocalizedString - /** - * Optionally enter a display name for the recipient. - */ - longDesc: () => LocalizedString - } - } - } - } } - ccRecipients: { + userIdentifier: { /** - * CC Recipients + * User Identifier */ displayName: () => LocalizedString /** - * The carbon copy recipients of the email. + * Used to uniquely identify a user in a conversation. */ shortDesc: () => LocalizedString /** - * Optionally enter one or more email addresses for recipients to be copied on the email. + * It helps maintain context across interactions. For example, you might use `"userIdentifier": "landing-page-user"` to track a specific user session. */ longDesc: () => LocalizedString - type: { - element_type: { - fields: { - address: { - /** - * Email Address - */ - displayName: () => LocalizedString - /** - * CC recipient's email address. - */ - shortDesc: () => LocalizedString - /** - * Enter the email address of the CC recipient. - */ - longDesc: () => LocalizedString - } - name: { - /** - * Display Name - */ - displayName: () => LocalizedString - /** - * CC recipient's display name. - */ - shortDesc: () => LocalizedString - /** - * Optionally enter a display name for the CC recipient. - */ - longDesc: () => LocalizedString - } - } - } - } } - bccRecipients: { + inputParameters: { /** - * BCC Recipients + * Input Parameters */ displayName: () => LocalizedString /** - * The blind carbon copy recipients of the email. + * An array of key-value pairs for additional context. */ shortDesc: () => LocalizedString /** - * Optionally enter one or more email addresses for recipients to be blind copied on the email. + * An array of key-value pairs for additional context. */ longDesc: () => LocalizedString type: { element_type: { fields: { - address: { + key: { /** - * Email Address + * Key */ displayName: () => LocalizedString /** - * BCC recipient's email address. + * The key of the parameter */ shortDesc: () => LocalizedString /** - * Enter the email address of the BCC recipient. + * The key of the parameter */ longDesc: () => LocalizedString } - name: { + value: { /** - * Display Name + * Value */ displayName: () => LocalizedString /** - * BCC recipient's display name. + * The value of the parameter */ shortDesc: () => LocalizedString /** - * Optionally enter a display name for the BCC recipient. + * The value of the parameter */ longDesc: () => LocalizedString } @@ -226451,331 +230758,269 @@ export type TranslationFunctions = { } } } - subject: { + } + } + 'execute-agent': { + /** + * Execute Agent + */ + displayName: () => LocalizedString + /** + * Executes an agent with the given code. + */ + shortDesc: () => LocalizedString + /** + * Executes an agent with the given code. + */ + longDesc: () => LocalizedString + options: { + agentCode: { /** - * Subject + * Agent Code */ displayName: () => LocalizedString /** - * The subject line of the email. + * Used to identify and execute a specific agent within the Serenity* AI Hub */ shortDesc: () => LocalizedString /** - * Enter the subject line that will appear in the recipient's inbox. + * Used to identify and execute a specific agent within the Serenity* AI Hub */ longDesc: () => LocalizedString } - body: { + culture: { /** - * Body + * Culture */ displayName: () => LocalizedString /** - * The content of the email. + * Use this param to override the culture of the response. */ shortDesc: () => LocalizedString /** - * Enter the main message content of the email. + * Use this param to override the culture of the response. */ longDesc: () => LocalizedString } - bodyContentType: { + userLanguage: { /** - * Body Content Type + * User Language */ displayName: () => LocalizedString /** - * Format of the email body. + * The preferred language of the response */ shortDesc: () => LocalizedString /** - * Select whether the email body is plain text or HTML formatted. + * The preferred language of the response */ longDesc: () => LocalizedString } - saveToSentItems: { + params: { /** - * Save to Sent Items + * Params */ displayName: () => LocalizedString /** - * Whether to save a copy in Sent Items. + * An array of key-value pairs for execution context. */ shortDesc: () => LocalizedString /** - * Choose whether to save a copy of the email in your Sent Items folder. + * An array of key-value pairs for execution context. */ longDesc: () => LocalizedString + type: { + element_type: { + fields: { + Key: { + /** + * Key + */ + displayName: () => LocalizedString + /** + * The key of the parameter + */ + shortDesc: () => LocalizedString + /** + * The key of the parameter + */ + longDesc: () => LocalizedString + } + Value: { + /** + * Value + */ + displayName: () => LocalizedString + /** + * The value of the parameter + */ + shortDesc: () => LocalizedString + /** + * The value of the parameter + */ + longDesc: () => LocalizedString + } + } + } + } } - attachments: { + volatileKnowledgeIds: { /** - * Attachments + * Volatile Knowledge IDs */ displayName: () => LocalizedString /** - * Files to attach to the email. + * Unique identifiers (UUIDs) used to retrieve specific pieces of volatile knowledge in the Serenity* AI Hub */ shortDesc: () => LocalizedString /** - * Optionally attach files to the email. You can add one or more files to be sent with the email. + * Unique identifiers (UUIDs) used to retrieve specific pieces of volatile knowledge in the Serenity* AI Hub */ longDesc: () => LocalizedString } } } - } - triggers: { - 'new-email-with-attachment': { + 'execute-conversation': { /** - * New Email with Attachment + * Execute Conversation */ displayName: () => LocalizedString /** - * Triggers when an email with attachments is received, processing each matching attachment individually. + * Send a message to a chat with agent */ shortDesc: () => LocalizedString /** - * Monitors an Outlook mailbox for new emails with attachments. When an email with attachments is received, each attachment that matches the specified filters will trigger a separate event. This allows for processing individual attachments from emails while maintaining the full email context. + * Send a message to a chat with agent */ longDesc: () => LocalizedString options: { - senderFilter: { - /** - * Sender Filter - */ - displayName: () => LocalizedString - /** - * Only process emails from this sender - */ - shortDesc: () => LocalizedString - /** - * If specified, only emails from this exact sender email address will be processed. Leave empty to process emails from any sender. - */ - longDesc: () => LocalizedString - } - subjectFilter: { + agentCode: { /** - * Subject Filter + * Agent Code */ displayName: () => LocalizedString /** - * Only process emails with this text in the subject + * The agent to check for conversations with */ shortDesc: () => LocalizedString /** - * If specified, only emails containing this text in the subject line will be processed. Leave empty to process emails with any subject. + * The agent to check for conversations with */ longDesc: () => LocalizedString } - filenameFilters: { + conversationId: { /** - * Filename Filters + * Conversation ID */ displayName: () => LocalizedString /** - * Only process attachments with matching filenames + * The conversation to send the message to */ shortDesc: () => LocalizedString /** - * A list of text strings to match against attachment filenames. If provided, only attachments with filenames containing any of these strings will be processed. Matching is case-insensitive. Leave empty to process all attachments regardless of filename. + * The conversation to send the message to */ longDesc: () => LocalizedString } - mimeTypeFilters: { + userLanguage: { /** - * MIME Type Filters + * User Language */ displayName: () => LocalizedString /** - * Only process attachments with matching MIME types + * The preferred language of the response */ shortDesc: () => LocalizedString /** - * A list of MIME type strings to match against attachment content types. If provided, only attachments with content types containing any of these strings will be processed. For example, use "pdf" to match PDF files, "image/" to match all images, or "spreadsheet" to match Excel files. Matching is case-insensitive. Leave empty to process all attachments regardless of MIME type. + * The preferred language of the response */ longDesc: () => LocalizedString } - action: { + message: { /** - * Email Action + * Message */ displayName: () => LocalizedString /** - * Action to perform on the email after processing its attachments + * Message to send to the agent */ shortDesc: () => LocalizedString /** - * Specify what should happen to the email after all matching attachments have been processed. Options include: None (leave the email as is), Delete (permanently remove the email), or Move (relocate the email to another folder). + * Message to send to the agent */ longDesc: () => LocalizedString } - targetFolderId: { + culture: { /** - * Target Folder + * Culture */ displayName: () => LocalizedString /** - * Destination folder for emails when using Move action + * Use this param to override the culture of the response. */ shortDesc: () => LocalizedString /** - * If the Email Action is set to "Move", specify the folder where the email should be moved after all attachments have been processed. This option is only used when Move is selected. + * Use this param to override the culture of the response. */ longDesc: () => LocalizedString } } - event_info: { - /** - * Contains the email data along with information about a single matching attachment. - */ - desc: () => LocalizedString - } } - 'new-contact': { - /** - * New Contact - */ - displayName: () => LocalizedString - /** - * Triggered when a new contact is created in Outlook. - */ - shortDesc: () => LocalizedString - /** - * This trigger is activated whenever a new contact is added to your Microsoft Outlook contacts. - */ - longDesc: () => LocalizedString - } - 'new-email': { + } + triggers: { + 'new-conversation-message': { /** - * New Email Trigger + * New Conversation Message */ displayName: () => LocalizedString /** - * Triggers when a new email is received in your Outlook inbox + * Triggered when a new message is posted in a conversation. */ shortDesc: () => LocalizedString /** - * Monitors your Outlook inbox and triggers when new emails arrive. Supports filtering by sender, subject, or attachments, and can optionally delete or move processed emails. + * This trigger activates when a new message is posted in a conversation. */ longDesc: () => LocalizedString options: { - senderFilter: { - /** - * Sender Filter - */ - displayName: () => LocalizedString - /** - * Filter emails by sender address - */ - shortDesc: () => LocalizedString - /** - * Only trigger for emails from this specific sender email address. Leave empty to trigger for all senders. - */ - longDesc: () => LocalizedString - } - subjectFilter: { - /** - * Subject Filter - */ - displayName: () => LocalizedString - /** - * Filter emails by subject content - */ - shortDesc: () => LocalizedString - /** - * Only trigger for emails containing this text in the subject line. Leave empty to match any subject. - */ - longDesc: () => LocalizedString - } - hasAttachments: { - /** - * Has Attachments - */ - displayName: () => LocalizedString - /** - * Filter by attachment presence - */ - shortDesc: () => LocalizedString - /** - * Filter emails based on whether they have attachments. Set to true to only trigger for emails with attachments, false for emails without attachments, or leave empty to trigger for both. - */ - longDesc: () => LocalizedString - } - includeAttachmentData: { - /** - * Include Attachment Data - */ - displayName: () => LocalizedString - /** - * Include attachment content in trigger data - */ - shortDesc: () => LocalizedString - /** - * When enabled, the trigger will fetch and include the actual attachment content in the trigger data. This may increase processing time for large attachments. - */ - longDesc: () => LocalizedString - } - action: { + conversationId: { /** - * Email Action + * Conversation ID */ displayName: () => LocalizedString /** - * Action to perform after triggering + * The unique identifier for the conversation. */ shortDesc: () => LocalizedString /** - * Optional action to perform on emails after the trigger runs. Choose "None" to leave emails unchanged, "Delete" to remove the email, or "Move" to relocate the email to another folder. + * Enter the Conversation ID to specify the conversation where you want to monitor new messages. */ longDesc: () => LocalizedString } - targetFolderId: { + agentCode: { /** - * Target Folder + * Agent ID */ displayName: () => LocalizedString /** - * Destination folder for moved emails + * The unique identifier for the agent. */ shortDesc: () => LocalizedString /** - * The folder where emails will be moved if the "Move" action is selected. Only required when action is set to "Move". + * Agent ID to check for available conversations from */ longDesc: () => LocalizedString } - } - event_info: { - /** - * Data from the received email, including metadata and content - */ - desc: () => LocalizedString - } - } - 'new-event': { - /** - * New Event - */ - displayName: () => LocalizedString - /** - * Triggered when a new event is created in an Outlook calendar. - */ - shortDesc: () => LocalizedString - /** - * This trigger is activated whenever a new event or meeting is created in your Microsoft Outlook calendar. - */ - longDesc: () => LocalizedString - options: { - calendarId: { + sender: { /** - * Calendar ID + * Sender */ displayName: () => LocalizedString /** - * The calendar to monitor for new events. + * Filter the messages by the sender. */ shortDesc: () => LocalizedString /** - * Optionally select a specific calendar to monitor. If not specified, all calendars will be monitored. + * Choose the sender the messages should be filtered by. */ longDesc: () => LocalizedString } @@ -226783,269 +231028,231 @@ export type TranslationFunctions = { } } } - Trello: { + Pipedrive: { + /** + * Pipedrive + */ + displayName: () => LocalizedString groups: { /** - * Project & Task Management + * CRM & Sales Management */ '0': () => LocalizedString } /** - * Trello - */ - displayName: () => LocalizedString - /** - * Trello is a collaboration tool that organizes your projects into boards. + * Manage your sales pipeline and customer relationships with Pipedrive. */ shortDesc: () => LocalizedString /** - * Trello is a collaboration tool that organizes your projects into boards. It is a web-based Kanban-style list-making application and is a subsidiary of Atlassian. + * Pipedrive is a sales management tool designed to help small sales teams manage intricate or lengthy sales processes. */ longDesc: () => LocalizedString triggers: { - 'card-due': { + pipedrive_activity_trigger: { /** - * Card Due + * Activity Action */ displayName: () => LocalizedString /** - * Triggers when a card becomes overdue. + * Triggers when an action is performed on an activity */ shortDesc: () => LocalizedString /** - * This trigger fires when a card has passed its due date and has not been marked as complete. + * This trigger activates when a selected action is performed on an activity in Pipedrive. Actions include creating, updating, deleting an activity or any change. */ longDesc: () => LocalizedString options: { - source: { - /** - * Source - */ - displayName: () => LocalizedString - /** - * Choose whether to monitor an entire board or a specific list. - */ - shortDesc: () => LocalizedString - /** - * Select "board" to monitor all lists on a board, or "list" to monitor a specific list only. - */ - longDesc: () => LocalizedString - } - boardId: { - /** - * Board - */ - displayName: () => LocalizedString - /** - * The board containing the cards to monitor. - */ - shortDesc: () => LocalizedString - /** - * Select the Trello board that contains the cards you want to monitor for due dates. - */ - longDesc: () => LocalizedString - } - listId: { - /** - * List - */ - displayName: () => LocalizedString - /** - * The specific list containing the cards to monitor. - */ - shortDesc: () => LocalizedString - /** - * Select a specific list to monitor for overdue cards. Only required if Source is set to "list". - */ - longDesc: () => LocalizedString - } - includeDueComplete: { + action: { /** - * Include Completed Cards + * Action */ displayName: () => LocalizedString /** - * Include cards marked as complete. + * Select the action that triggers the flow */ shortDesc: () => LocalizedString /** - * When enabled, the trigger will include overdue cards that have been marked as complete. By default, only incomplete overdue cards are included. + * Select the action that triggers the flow. Choose from: create, update, delete, or any change. */ longDesc: () => LocalizedString } } } - 'new-board': { - /** - * New Board - */ - displayName: () => LocalizedString - /** - * Triggers when a new board is created. - */ - shortDesc: () => LocalizedString - /** - * This trigger fires when a new Trello board is created or shared with the authenticated user. - */ - longDesc: () => LocalizedString - } - 'new-card': { + pipedrive_deal_trigger: { /** - * New Card + * Deal Action */ displayName: () => LocalizedString /** - * Triggers when a new card is created. + * Triggers when an action is performed on a deal */ shortDesc: () => LocalizedString /** - * This trigger fires when a new card is added to a specified board or list in Trello. + * This trigger activates when a selected action is performed on a deal in Pipedrive. Actions include creating, updating, deleting a deal or any change. */ longDesc: () => LocalizedString options: { - source: { + action: { /** - * Source + * Action */ displayName: () => LocalizedString /** - * Choose whether to monitor an entire board or a specific list. + * Select the action that triggers the flow */ shortDesc: () => LocalizedString /** - * Select "board" to monitor all lists on a board, or "list" to monitor a specific list only. + * Select the action that triggers the flow. Choose from: create, update, delete, or any change. */ longDesc: () => LocalizedString } - boardId: { + } + } + pipedrive_lead_trigger: { + /** + * Lead Action + */ + displayName: () => LocalizedString + /** + * Triggers when an action is performed on a lead + */ + shortDesc: () => LocalizedString + /** + * This trigger activates when a selected action is performed on a lead in Pipedrive. Actions include creating, updating, deleting a lead or any change. + */ + longDesc: () => LocalizedString + options: { + action: { /** - * Board + * Action */ displayName: () => LocalizedString /** - * The board to monitor for new cards. + * Select the action that triggers the flow */ shortDesc: () => LocalizedString /** - * Select the Trello board where you want to monitor for new cards being created. + * Select the action that triggers the flow. Choose from: create, update, delete, or any change. */ longDesc: () => LocalizedString } - listId: { + } + } + pipedrive_note_trigger: { + /** + * Note Action + */ + displayName: () => LocalizedString + /** + * Triggers when an action is performed on a note + */ + shortDesc: () => LocalizedString + /** + * This trigger activates when a selected action is performed on a note in Pipedrive. Actions include creating, updating, deleting a note or any change. + */ + longDesc: () => LocalizedString + options: { + action: { /** - * List + * Action */ displayName: () => LocalizedString /** - * The specific list to monitor for new cards. + * Select the action that triggers the flow */ shortDesc: () => LocalizedString /** - * Select a specific list to monitor for new cards. Only required if Source is set to "list". + * Select the action that triggers the flow. Choose from: create, update, delete, or any change. */ longDesc: () => LocalizedString } } } - 'new-label': { + pipedrive_organization_trigger: { /** - * New Label + * Organization Action */ displayName: () => LocalizedString /** - * Triggers when a new label is created. + * Triggers when an action is performed on an organization */ shortDesc: () => LocalizedString /** - * This trigger fires when a new label is created on a specified Trello board. + * This trigger activates when a selected action is performed on an organization in Pipedrive. Actions include creating, updating, deleting an organization or any change. */ longDesc: () => LocalizedString options: { - boardId: { + action: { /** - * Board + * Action */ displayName: () => LocalizedString /** - * The board to monitor for new labels. + * Select the action that triggers the flow */ shortDesc: () => LocalizedString /** - * Select the Trello board where you want to monitor for new labels being created. + * Select the action that triggers the flow. Choose from: create, update, delete, or any change. */ longDesc: () => LocalizedString } } } - 'new-list': { + pipedrive_person_trigger: { /** - * New List + * Person Action */ displayName: () => LocalizedString /** - * Triggers when a new list is created. + * Triggers when an action is performed on a person */ shortDesc: () => LocalizedString /** - * This trigger fires when a new list is added to a specified Trello board. + * This trigger activates when a selected action is performed on a person in Pipedrive. Actions include creating, updating, deleting a person or any change. */ longDesc: () => LocalizedString options: { - boardId: { - /** - * Board - */ - displayName: () => LocalizedString - /** - * The board to monitor for new lists. - */ - shortDesc: () => LocalizedString - /** - * Select the Trello board where you want to monitor for new lists being created. - */ - longDesc: () => LocalizedString - } - includeArchivedLists: { + action: { /** - * Include Archived Lists + * Action */ displayName: () => LocalizedString /** - * Include lists that are archived. + * Select the action that triggers the flow */ shortDesc: () => LocalizedString /** - * When enabled, the trigger will include new lists that are archived. By default, only open lists are included. + * Select the action that triggers the flow. Choose from: create, update, delete, or any change. */ longDesc: () => LocalizedString } } } - 'new-member': { + pipedrive_user_trigger: { /** - * New Member + * User Action */ displayName: () => LocalizedString /** - * Triggers when a new member is added to a board. + * Triggers when an action is performed on a user */ shortDesc: () => LocalizedString /** - * This trigger fires when a new member is added to a specified Trello board. + * This trigger activates when a selected action is performed on a user in Pipedrive. Actions include creating, updating, deleting a user or any change. */ longDesc: () => LocalizedString options: { - boardId: { + action: { /** - * Board + * Action */ displayName: () => LocalizedString /** - * The board to monitor for new members. + * Select the action that triggers the flow */ shortDesc: () => LocalizedString /** - * Select the Trello board where you want to monitor for new members being added. + * Select the action that triggers the flow. Choose from: create, update, delete, or any change. */ longDesc: () => LocalizedString } @@ -227055,157 +231262,431 @@ export type TranslationFunctions = { expressions: { '&&': { /** - * And + * and (&&) */ displayName: () => LocalizedString /** - * Logical AND operator + * Returns True if all arguments are True */ shortDesc: () => LocalizedString /** - * Combines multiple conditions where all must be true + * Returns `True` if all arguments are `True` with logic short-circuiting */ longDesc: () => LocalizedString + args: { + '0': { + /** + * Condition + */ + displayName: () => LocalizedString + /** + * Boolean condition to evaluate + */ + shortDesc: () => LocalizedString + /** + * A boolean expression or condition that evaluates to True or False + */ + longDesc: () => LocalizedString + } + } } '||': { /** - * Or + * or (||) */ displayName: () => LocalizedString /** - * Logical OR operator + * Returns True if any argument is True */ shortDesc: () => LocalizedString /** - * Combines multiple conditions where at least one must be true + * Returns `True` if any argument is `True` with logic short-circuiting */ longDesc: () => LocalizedString + args: { + '0': { + /** + * Condition + */ + displayName: () => LocalizedString + /** + * Boolean condition to evaluate + */ + shortDesc: () => LocalizedString + /** + * A boolean expression or condition that evaluates to True or False + */ + longDesc: () => LocalizedString + } + } } '==': { /** - * Equals + * equal (==) */ displayName: () => LocalizedString /** - * Field equals value + * Equality comparison */ shortDesc: () => LocalizedString /** - * Matches records where the field equals the specified value + * Returns `True` if the field value equals the specified value */ longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Field to compare + */ + shortDesc: () => LocalizedString + /** + * The field whose value will be compared + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Value + */ + displayName: () => LocalizedString + /** + * Value to compare against + */ + shortDesc: () => LocalizedString + /** + * The value to compare the field against + */ + longDesc: () => LocalizedString + } + } } '!=': { /** - * Not Equals + * not equal (!=) */ displayName: () => LocalizedString /** - * Field does not equal value + * Inequality comparison */ shortDesc: () => LocalizedString /** - * Matches records where the field does not equal the specified value + * Returns `True` if the field value does not equal the specified value */ longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Field to compare + */ + shortDesc: () => LocalizedString + /** + * The field whose value will be compared + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Value + */ + displayName: () => LocalizedString + /** + * Value to compare against + */ + shortDesc: () => LocalizedString + /** + * The value to compare the field against + */ + longDesc: () => LocalizedString + } + } } '>': { /** - * Greater Than + * greater than (>) */ displayName: () => LocalizedString /** - * Field is greater than value + * Greater than comparison */ shortDesc: () => LocalizedString /** - * Matches records where the field value is greater than the specified value + * Returns `True` if the field value is greater than the specified value */ longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Field to compare + */ + shortDesc: () => LocalizedString + /** + * The field whose value will be compared + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Value + */ + displayName: () => LocalizedString + /** + * Value to compare against + */ + shortDesc: () => LocalizedString + /** + * The value to compare the field against + */ + longDesc: () => LocalizedString + } + } } '>=': { /** - * Greater Than or Equal + * greater than or equal (>=) */ displayName: () => LocalizedString /** - * Field is greater than or equal to value + * Greater than or equal comparison */ shortDesc: () => LocalizedString /** - * Matches records where the field value is greater than or equal to the specified value + * Returns `True` if the field value is greater than or equal to the specified value */ longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Field to compare + */ + shortDesc: () => LocalizedString + /** + * The field whose value will be compared + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Value + */ + displayName: () => LocalizedString + /** + * Value to compare against + */ + shortDesc: () => LocalizedString + /** + * The value to compare the field against + */ + longDesc: () => LocalizedString + } + } } '<': { /** - * Less Than + * less than (<) */ displayName: () => LocalizedString /** - * Field is less than value + * Less than comparison */ shortDesc: () => LocalizedString /** - * Matches records where the field value is less than the specified value + * Returns `True` if the field value is less than the specified value */ longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Field to compare + */ + shortDesc: () => LocalizedString + /** + * The field whose value will be compared + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Value + */ + displayName: () => LocalizedString + /** + * Value to compare against + */ + shortDesc: () => LocalizedString + /** + * The value to compare the field against + */ + longDesc: () => LocalizedString + } + } } '<=': { /** - * Less Than or Equal + * less than or equal (<=) */ displayName: () => LocalizedString /** - * Field is less than or equal to value + * Less than or equal comparison */ shortDesc: () => LocalizedString /** - * Matches records where the field value is less than or equal to the specified value + * Returns `True` if the field value is less than or equal to the specified value */ longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Field to compare + */ + shortDesc: () => LocalizedString + /** + * The field whose value will be compared + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Value + */ + displayName: () => LocalizedString + /** + * Value to compare against + */ + shortDesc: () => LocalizedString + /** + * The value to compare the field against + */ + longDesc: () => LocalizedString + } + } } - 'is-set': { + like: { /** - * Is Set + * like */ displayName: () => LocalizedString /** - * Field has a value + * Pattern matching */ shortDesc: () => LocalizedString /** - * Matches records where the field has a value (is not empty) + * Returns `True` if the field value matches the specified pattern */ longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Text field to search + */ + shortDesc: () => LocalizedString + /** + * The text field to perform pattern matching on + */ + longDesc: () => LocalizedString + } + '1': { + /** + * Pattern + */ + displayName: () => LocalizedString + /** + * Pattern to match + */ + shortDesc: () => LocalizedString + /** + * The pattern to match against the field value + */ + longDesc: () => LocalizedString + } + } } - 'is-not-set': { + 'is-null': { /** - * Is Not Set + * is null */ displayName: () => LocalizedString /** - * Field has no value + * Field is null */ shortDesc: () => LocalizedString /** - * Matches records where the field has no value (is empty) + * Returns `True` if the field is null or has no value */ longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Field to check + */ + shortDesc: () => LocalizedString + /** + * The field to check for null value + */ + longDesc: () => LocalizedString + } + } } - contains: { + 'is-not-null': { /** - * Contains + * is not null */ displayName: () => LocalizedString /** - * Field contains value + * Field is not null */ shortDesc: () => LocalizedString /** - * Matches records where the field contains the specified substring + * Returns `True` if the field has a value and is not null */ longDesc: () => LocalizedString + args: { + '0': { + /** + * Field + */ + displayName: () => LocalizedString + /** + * Field to check + */ + shortDesc: () => LocalizedString + /** + * The field to check for a non-null value + */ + longDesc: () => LocalizedString + } + } } } searchOptions: { @@ -227224,31 +231705,31 @@ export type TranslationFunctions = { longDesc: () => LocalizedString type: { fields: { - field: { + column: { /** - * Field + * Column */ displayName: () => LocalizedString /** - * The field to sort by + * The column to sort by */ shortDesc: () => LocalizedString /** - * The name of the field to use for sorting results + * The name of the column to use for sorting results */ longDesc: () => LocalizedString } - direction: { + ascending: { /** - * Direction + * Ascending */ displayName: () => LocalizedString /** - * Sort direction + * Sort in ascending order */ shortDesc: () => LocalizedString /** - * The direction to sort results (ascending or descending) + * When enabled, results are sorted in ascending order (A-Z, 0-9) */ longDesc: () => LocalizedString } @@ -227257,3623 +231738,3069 @@ export type TranslationFunctions = { } } } - Teams: { + Magento: { /** - * Microsoft Teams + * Magento */ displayName: () => LocalizedString groups: { /** - * Messaging & Real-time Communication + * E-commerce Platforms */ '0': () => LocalizedString } /** - * Collaborate with your team using channels, meetings, and messages + * E-commerce platform for building online stores and managing customers, products, and orders */ shortDesc: () => LocalizedString /** - * Microsoft Teams is a collaboration platform that enables messaging, file sharing, video meetings, and app integration within your organization. + * Magento is a flexible e-commerce platform that provides businesses with a complete solution for building and managing online stores. This integration allows you to automate workflows when customer, product, order, invoice, or shipment events occur in your Magento store. */ longDesc: () => LocalizedString + connectionMessage: { + /** + * Connect to Magento + */ + title: () => LocalizedString + /** + * To connect to Magento, you will need your **Store URL** and an **Integration Access Token**. + + ## Creating an Integration Token + + 1. Log in to your Magento Admin Panel + 2. Navigate to **System** → **Integrations** + 3. Click **Add New Integration** + 4. Fill in the integration details: + - **Name**: Give it a descriptive name (e.g., "Qore Integration") + - **Email**: Your admin email + - **Callback URL** and **Identity Link URL**: Can be left empty for token-based access + 5. Go to the **API** tab + 6. Select the **Resource Access** level: + - Choose **All** for full access, or + - Choose **Custom** and select specific resources needed + 7. Click **Save** + 8. Click **Activate** on the integration + 9. Click **Allow** in the confirmation popup + 10. Copy the **Access Token** from the displayed credentials + + ## Connection Details + + ### Store URL + Your Magento store's base URL (e.g., `https://your-store.com`). Include the protocol (https://) but do not include trailing slashes. + + ### Access Token + The integration access token generated when you activated the integration. This token authenticates all API requests. + + ## For Magento 2.4.4 and Later + + If you're using Magento 2.4.4+, you may need to enable bearer token authentication: + + ```bash + bin/magento config:set oauth/consumer/enable_integration_as_bearer 1 + ``` + + **Note:** Integration tokens do not expire unless manually revoked. Store your access token securely and limit the integration's API access to only the resources needed for your use case. + */ + content: () => LocalizedString + } actions: { - 'create-channel': { + customerCustomerRepositoryV1GetByIdGet: { + groups: { + /** + * Customers + */ + '0': () => LocalizedString + } /** - * Create Channel + * Get Customer by ID */ displayName: () => LocalizedString /** - * Create a new channel in a team + * Retrieve a specific customer account by ID */ shortDesc: () => LocalizedString /** - * Create a new channel within a specified team where members can collaborate through conversations, files, and integrated apps. + * Retrieves detailed information about a customer account using the customer ID. Returns all customer attributes including address information, account status, and custom attributes. + */ + longDesc: () => LocalizedString + } + customerCustomerRepositoryV1SavePut: { + groups: { + /** + * Customers + */ + '0': () => LocalizedString + } + /** + * Update Customer + */ + displayName: () => LocalizedString + /** + * Update an existing customer account + */ + shortDesc: () => LocalizedString + /** + * Updates customer information for an existing account. This endpoint allows modification of personal information, addresses, custom attributes, and other account details. The customer ID must be included in the request. + */ + longDesc: () => LocalizedString + } + customerCustomerRepositoryV1DeleteByIdDelete: { + groups: { + /** + * Customers + */ + '0': () => LocalizedString + } + /** + * Delete Customer + */ + displayName: () => LocalizedString + /** + * Remove a customer account by ID + */ + shortDesc: () => LocalizedString + /** + * Permanently deletes a customer account from the system. This operation cannot be undone and will remove all customer data associated with the specified ID, including addresses and order history references. + */ + longDesc: () => LocalizedString + } + customerCustomerRepositoryV1GetListGet: { + groups: { + /** + * Customers + */ + '0': () => LocalizedString + } + /** + * List Customers + */ + displayName: () => LocalizedString + /** + * Retrieve a list of customer accounts + */ + shortDesc: () => LocalizedString + /** + * Returns a list of customer accounts that match specified search criteria. Results can be filtered, sorted, and paginated. Use search criteria parameters to narrow results by email, name, creation date, or other customer attributes. */ longDesc: () => LocalizedString options: { - teamId: { + 'searchCriteria[filterGroups][0][filters][0][field]': { /** - * Team ID + * Filter Field */ displayName: () => LocalizedString /** - * Unique identifier for the team + * Field to filter by */ shortDesc: () => LocalizedString /** - * The unique identifier (GUID) for the team where the new channel will be created. + * Specifies which product field to apply the filter condition to */ longDesc: () => LocalizedString } - displayName: { + 'searchCriteria[filterGroups][0][filters][0][value]': { /** - * Channel Name + * Filter Value */ displayName: () => LocalizedString /** - * Name of the new channel + * Value to filter with */ shortDesc: () => LocalizedString /** - * The display name for the new channel. Must be unique within the team and between 1-50 characters. + * The value to match against the specified field */ longDesc: () => LocalizedString } - description: { + 'searchCriteria[filterGroups][0][filters][0][conditionType]': { /** - * Description + * Filter Condition */ displayName: () => LocalizedString /** - * Description of the channel purpose + * Type of comparison to use */ shortDesc: () => LocalizedString /** - * Optional description explaining the purpose or topic of the channel. Limited to 1024 characters. + * Condition type for the filter (eq, neq, like, gt, lt, etc.) */ longDesc: () => LocalizedString } - membershipType: { + 'searchCriteria[sortOrders][0][field]': { /** - * Membership Type + * Sort Field */ displayName: () => LocalizedString /** - * Channel privacy setting + * Field to sort by */ shortDesc: () => LocalizedString /** - * Defines the privacy level of the channel. Options include "standard" (visible to all team members) or "private" (visible only to specific members). + * Specifies which product field to use for sorting the results */ longDesc: () => LocalizedString } - } - } - 'create-meeting': { - /** - * Create Meeting - */ - displayName: () => LocalizedString - /** - * Schedule a new Teams meeting - */ - shortDesc: () => LocalizedString - /** - * Schedule a new meeting in Microsoft Teams with specified participants, time, location, and other meeting details. - */ - longDesc: () => LocalizedString - options: { - subject: { + 'searchCriteria[sortOrders][0][direction]': { /** - * Subject + * Sort Direction */ displayName: () => LocalizedString /** - * Meeting title + * Direction to sort in */ shortDesc: () => LocalizedString /** - * The title or subject of the meeting that will appear in calendar invitations and the meeting list. + * Determines whether to sort in ascending or descending order */ longDesc: () => LocalizedString } - startDateTime: { + 'searchCriteria[pageSize]': { /** - * Start Time + * Page Size */ displayName: () => LocalizedString /** - * Meeting start date and time + * Number of results per page */ shortDesc: () => LocalizedString /** - * The date and time when the meeting begins in ISO 8601 format (YYYY-MM-DDTHH:MM:SS). + * Specifies how many items to return in a single result set */ longDesc: () => LocalizedString } - endDateTime: { + 'searchCriteria[currentPage]': { /** - * End Time + * Current Page */ displayName: () => LocalizedString /** - * Meeting end date and time + * Page number to return */ shortDesc: () => LocalizedString /** - * The date and time when the meeting ends in ISO 8601 format (YYYY-MM-DDTHH:MM:SS). + * Specifies which page of results to return */ longDesc: () => LocalizedString } - teamId: { + } + } + customerAccountManagementV1CreateAccountPost: { + groups: { + /** + * Customers + */ + '0': () => LocalizedString + } + /** + * Create Customer Account + */ + displayName: () => LocalizedString + /** + * Register a new customer account + */ + shortDesc: () => LocalizedString + /** + * Creates a new customer account with the provided information. Required fields include email, password, and first/last name. Optional details include addresses, date of birth, and custom attributes. Returns the newly created customer ID upon success. + */ + longDesc: () => LocalizedString + } + catalogProductRepositoryV1SavePost: { + groups: { + /** + * Products + */ + '0': () => LocalizedString + } + /** + * Create Product + */ + displayName: () => LocalizedString + /** + * Add a new product to the catalog + */ + shortDesc: () => LocalizedString + /** + * Creates a new product in the catalog with specified attributes, pricing, and inventory information. Products can be simple, configurable, bundled, grouped, virtual, or downloadable. Media gallery entries, tier prices, and custom options can also be defined. + */ + longDesc: () => LocalizedString + } + catalogProductRepositoryV1GetListGet: { + groups: { + /** + * Products + */ + '0': () => LocalizedString + } + /** + * List Products + */ + displayName: () => LocalizedString + /** + * Retrieve a list of products from the catalog + */ + shortDesc: () => LocalizedString + /** + * Returns a collection of products that match the specified search criteria. Results can be filtered by attributes like name, SKU, price, and status. Supports pagination, sorting, and inclusion of custom attributes in the response. + */ + longDesc: () => LocalizedString + options: { + 'searchCriteria[filterGroups][0][filters][0][field]': { /** - * Team ID + * Filter Field */ displayName: () => LocalizedString /** - * Associated team identifier + * Field to filter by */ shortDesc: () => LocalizedString /** - * Optional team identifier if the meeting is associated with a specific team. + * Specifies which product field to apply the filter condition to */ longDesc: () => LocalizedString } - channelId: { + 'searchCriteria[filterGroups][0][filters][0][value]': { /** - * Channel ID + * Filter Value */ displayName: () => LocalizedString /** - * Associated channel identifier + * Value to filter with */ shortDesc: () => LocalizedString /** - * Optional channel identifier if the meeting is associated with a specific channel within a team. + * The value to match against the specified field */ longDesc: () => LocalizedString } - content: { + 'searchCriteria[filterGroups][0][filters][0][conditionType]': { /** - * Meeting Content + * Filter Condition */ displayName: () => LocalizedString /** - * Meeting agenda or notes + * Type of comparison to use */ shortDesc: () => LocalizedString /** - * Optional text describing the meeting agenda, preparation materials, or other relevant information. + * Condition type for the filter (eq, neq, like, gt, lt, etc.) */ longDesc: () => LocalizedString } - location: { + 'searchCriteria[sortOrders][0][field]': { /** - * Location + * Sort Field */ displayName: () => LocalizedString /** - * Physical or virtual meeting location + * Field to sort by */ shortDesc: () => LocalizedString /** - * The physical location where the meeting will take place, or a custom virtual location description. + * Specifies which product field to use for sorting the results */ longDesc: () => LocalizedString } - attendees: { + 'searchCriteria[sortOrders][0][direction]': { /** - * Attendees + * Sort Direction */ displayName: () => LocalizedString /** - * Meeting participants + * Direction to sort in */ shortDesc: () => LocalizedString /** - * List of email addresses or user IDs for people who should be invited to the meeting. + * Determines whether to sort in ascending or descending order */ longDesc: () => LocalizedString } - isOnlineMeeting: { + 'searchCriteria[pageSize]': { /** - * Online Meeting + * Page Size */ displayName: () => LocalizedString /** - * Enable Teams online meeting features + * Number of results per page */ shortDesc: () => LocalizedString /** - * When set to true, creates a Teams online meeting with video conferencing capabilities and a join link. + * Specifies how many items to return in a single result set */ longDesc: () => LocalizedString } - timeZone: { + 'searchCriteria[currentPage]': { /** - * Time Zone + * Current Page */ displayName: () => LocalizedString /** - * Meeting time zone + * Page number to return */ shortDesc: () => LocalizedString /** - * The time zone for the meeting start and end times, such as "Pacific Standard Time" or "UTC". + * Specifies which page of results to return */ longDesc: () => LocalizedString } } } - 'delete-meeting': { + catalogProductRepositoryV1SavePut: { + groups: { + /** + * Products + */ + '0': () => LocalizedString + } /** - * Delete Meeting + * Update Product */ displayName: () => LocalizedString /** - * Cancel an existing meeting + * Modify an existing product */ shortDesc: () => LocalizedString /** - * Permanently cancels and removes a scheduled meeting from all participants' calendars. + * Updates an existing product in the catalog. Can modify any product attribute including name, price, description, images, inventory, and category assignments. The product SKU or ID must be specified in the request. */ longDesc: () => LocalizedString options: { - meetingId: { - /** - * Meeting ID - */ - displayName: () => LocalizedString - /** - * Unique meeting identifier - */ - shortDesc: () => LocalizedString - /** - * The unique identifier (GUID) of the meeting to be canceled. - */ - longDesc: () => LocalizedString - } - meetingSource: { - /** - * Meeting Source - */ - displayName: () => LocalizedString - /** - * Origin of the meeting - */ - shortDesc: () => LocalizedString - /** - * Specifies where the meeting was created, such as "private" or "team". - */ - longDesc: () => LocalizedString - } - teamId: { + sku: { /** - * Team ID + * Product SKU */ displayName: () => LocalizedString /** - * Associated team identifier + * Stock Keeping Unit identifier for the product */ shortDesc: () => LocalizedString /** - * The team identifier if the meeting is associated with a specific team. + * A unique alphanumeric identifier assigned to a product for inventory tracking and management purposes. The SKU helps in identifying specific product variations including size, color, and other attributes. */ longDesc: () => LocalizedString } } } - 'send-channel-message': { + catalogProductRepositoryV1DeleteByIdDelete: { + groups: { + /** + * Products + */ + '0': () => LocalizedString + } /** - * Send Channel Message + * Delete Product */ displayName: () => LocalizedString /** - * Post a message to a team channel + * Remove a product from the catalog */ shortDesc: () => LocalizedString /** - * Send a new message to a specific channel within a team that all channel members can view and respond to. + * Permanently removes a product from the catalog by ID or SKU. This operation cannot be undone and may affect existing orders and carts that reference the deleted product. */ longDesc: () => LocalizedString options: { - channelId: { - /** - * Channel ID - */ - displayName: () => LocalizedString - /** - * Target channel identifier - */ - shortDesc: () => LocalizedString - /** - * The unique identifier of the channel where the message will be posted. - */ - longDesc: () => LocalizedString - } - teamId: { - /** - * Team ID - */ - displayName: () => LocalizedString - /** - * Team identifier - */ - shortDesc: () => LocalizedString - /** - * The unique identifier of the team containing the target channel. - */ - longDesc: () => LocalizedString - } - message: { - /** - * Message - */ - displayName: () => LocalizedString - /** - * Message content - */ - shortDesc: () => LocalizedString - /** - * The text content of the message to be posted in the channel. - */ - longDesc: () => LocalizedString - } - contentType: { + sku: { /** - * Content Type + * Product SKU */ displayName: () => LocalizedString /** - * Format of the message content + * Stock Keeping Unit identifier for the product */ shortDesc: () => LocalizedString /** - * Specifies the format of the message content, such as "text" for plain text or "html" for formatted content. + * A unique alphanumeric identifier assigned to a product for inventory tracking and management purposes. The SKU helps in identifying specific product variations including size, color, and other attributes. */ longDesc: () => LocalizedString } } } - 'send-chat-message': { + catalogProductRepositoryV1GetGet: { + groups: { + /** + * Products + */ + '0': () => LocalizedString + } /** - * Send Chat Message + * Get Product Details */ displayName: () => LocalizedString /** - * Send a message to a chat conversation + * Retrieve detailed information about a specific product */ shortDesc: () => LocalizedString /** - * Send a new message to a direct chat or group chat conversation outside of a team channel. + * Retrieves comprehensive information about a specific product by SKU or ID. The response includes all product attributes, images, pricing information, inventory status, and category assignments. Additional parameters can control which data is included. */ longDesc: () => LocalizedString options: { - chatId: { - /** - * Chat ID - */ - displayName: () => LocalizedString - /** - * Target chat identifier - */ - shortDesc: () => LocalizedString - /** - * The unique identifier of the direct chat or group chat where the message will be sent. - */ - longDesc: () => LocalizedString - } - message: { - /** - * Message - */ - displayName: () => LocalizedString - /** - * Message content - */ - shortDesc: () => LocalizedString - /** - * The text content of the message to be sent in the chat. - */ - longDesc: () => LocalizedString - } - contentType: { + sku: { /** - * Content Type + * Product SKU */ displayName: () => LocalizedString /** - * Format of the message content + * Stock Keeping Unit identifier for the product */ shortDesc: () => LocalizedString /** - * Specifies the format of the message content, such as "text" for plain text or "html" for formatted content. + * A unique alphanumeric identifier assigned to a product for inventory tracking and management purposes. The SKU helps in identifying specific product variations including size, color, and other attributes. */ longDesc: () => LocalizedString } } } - 'update-channel': { + quoteCartRepositoryV1GetListGet: { + groups: { + /** + * Shopping Carts + */ + '0': () => LocalizedString + } /** - * Update Channel + * List Shopping Carts */ displayName: () => LocalizedString /** - * Modify an existing channel + * Retrieve a list of active shopping carts */ shortDesc: () => LocalizedString /** - * Update the properties or membership of an existing channel within a team. + * Returns a collection of active shopping carts that match the specified search criteria. Results can be filtered by customer ID, creation date, and cart status. Each cart includes items, applied coupons, and shipping/billing information if available. */ longDesc: () => LocalizedString options: { - channelId: { - /** - * Channel ID - */ - displayName: () => LocalizedString - /** - * Target channel identifier - */ - shortDesc: () => LocalizedString - /** - * The unique identifier of the channel to be updated. - */ - longDesc: () => LocalizedString - } - teamId: { - /** - * Team ID - */ - displayName: () => LocalizedString - /** - * Team identifier - */ - shortDesc: () => LocalizedString - /** - * The unique identifier of the team containing the channel to be updated. - */ - longDesc: () => LocalizedString - } - displayName: { - /** - * Channel Name - */ - displayName: () => LocalizedString - /** - * New channel name - */ - shortDesc: () => LocalizedString - /** - * The new display name for the channel. Must be unique within the team and between 1-50 characters. - */ - longDesc: () => LocalizedString - } - description: { + 'searchCriteria[filterGroups][0][filters][0][field]': { /** - * Description + * Filter Field */ displayName: () => LocalizedString /** - * New channel description + * Field to filter by */ shortDesc: () => LocalizedString /** - * Updated description explaining the purpose or topic of the channel. Limited to 1024 characters. + * Specifies which product field to apply the filter condition to */ longDesc: () => LocalizedString } - addMembers: { + 'searchCriteria[filterGroups][0][filters][0][value]': { /** - * Add Members + * Filter Value */ displayName: () => LocalizedString /** - * Users to add to the channel + * Value to filter with */ shortDesc: () => LocalizedString /** - * List of user IDs to add as members to the channel. Only applicable for private channels. + * The value to match against the specified field */ longDesc: () => LocalizedString } - removeMembers: { + 'searchCriteria[filterGroups][0][filters][0][conditionType]': { /** - * Remove Members + * Filter Condition */ displayName: () => LocalizedString /** - * Users to remove from the channel + * Type of comparison to use */ shortDesc: () => LocalizedString /** - * List of user IDs to remove from the channel membership. Only applicable for private channels. + * Condition type for the filter (eq, neq, like, gt, lt, etc.) */ longDesc: () => LocalizedString } - } - } - 'update-meeting': { - /** - * Update Meeting - */ - displayName: () => LocalizedString - /** - * Modify an existing meeting - */ - shortDesc: () => LocalizedString - /** - * Update the details of a scheduled meeting, such as time, location, attendees, or other properties. - */ - longDesc: () => LocalizedString - options: { - meetingId: { + 'searchCriteria[sortOrders][0][field]': { /** - * Meeting ID + * Sort Field */ displayName: () => LocalizedString /** - * Target meeting identifier + * Field to sort by */ shortDesc: () => LocalizedString /** - * The unique identifier of the meeting to be updated. + * Specifies which product field to use for sorting the results */ longDesc: () => LocalizedString } - subject: { + 'searchCriteria[sortOrders][0][direction]': { /** - * Subject + * Sort Direction */ displayName: () => LocalizedString /** - * Updated meeting title + * Direction to sort in */ shortDesc: () => LocalizedString /** - * The new title or subject of the meeting that will appear in calendar invitations and the meeting list. + * Determines whether to sort in ascending or descending order */ longDesc: () => LocalizedString } - startDateTime: { + 'searchCriteria[pageSize]': { /** - * Start Time + * Page Size */ displayName: () => LocalizedString /** - * Updated meeting start time + * Number of results per page */ shortDesc: () => LocalizedString /** - * The new date and time when the meeting begins in ISO 8601 format (YYYY-MM-DDTHH:MM:SS). + * Specifies how many items to return in a single result set */ longDesc: () => LocalizedString } - endDateTime: { + 'searchCriteria[currentPage]': { /** - * End Time + * Current Page */ displayName: () => LocalizedString /** - * Updated meeting end time + * Page number to return */ shortDesc: () => LocalizedString /** - * The new date and time when the meeting ends in ISO 8601 format (YYYY-MM-DDTHH:MM:SS). + * Specifies which page of results to return */ longDesc: () => LocalizedString } - teamId: { + } + } + salesOrderRepositoryV1GetGet: { + groups: { + /** + * Orders + */ + '0': () => LocalizedString + } + /** + * Get Order Details + */ + displayName: () => LocalizedString + /** + * Retrieve detailed information about a specific order + */ + shortDesc: () => LocalizedString + /** + * Retrieves comprehensive information about a specific order by ID. Includes order items, billing and shipping addresses, payment information, applied discounts, and order status history. Useful for order processing and customer service inquiries. + */ + longDesc: () => LocalizedString + } + salesOrderRepositoryV1GetListGet: { + groups: { + /** + * Orders + */ + '0': () => LocalizedString + } + /** + * List Orders + */ + displayName: () => LocalizedString + /** + * Retrieve a list of orders based on search criteria + */ + shortDesc: () => LocalizedString + /** + * Returns a collection of orders that match the specified search criteria. Results can be filtered by customer, status, date range, and total amount. Supports pagination and sorting to efficiently browse large order volumes. + */ + longDesc: () => LocalizedString + options: { + 'searchCriteria[filterGroups][0][filters][0][field]': { /** - * Team ID + * Filter Field */ displayName: () => LocalizedString /** - * Associated team identifier + * Field to filter by */ shortDesc: () => LocalizedString /** - * Updated team identifier if the meeting is associated with a specific team. + * Specifies which product field to apply the filter condition to */ longDesc: () => LocalizedString } - channelId: { + 'searchCriteria[filterGroups][0][filters][0][value]': { /** - * Channel ID + * Filter Value */ displayName: () => LocalizedString /** - * Associated channel identifier + * Value to filter with */ shortDesc: () => LocalizedString /** - * Updated channel identifier if the meeting is associated with a specific channel within a team. + * The value to match against the specified field */ longDesc: () => LocalizedString } - content: { + 'searchCriteria[filterGroups][0][filters][0][conditionType]': { /** - * Meeting Content + * Filter Condition */ displayName: () => LocalizedString /** - * Updated meeting agenda or notes + * Type of comparison to use */ shortDesc: () => LocalizedString /** - * Updated text describing the meeting agenda, preparation materials, or other relevant information. + * Condition type for the filter (eq, neq, like, gt, lt, etc.) */ longDesc: () => LocalizedString } - location: { + 'searchCriteria[sortOrders][0][field]': { /** - * Location + * Sort Field */ displayName: () => LocalizedString /** - * Updated meeting location + * Field to sort by */ shortDesc: () => LocalizedString /** - * The new physical location where the meeting will take place, or a custom virtual location description. + * Specifies which product field to use for sorting the results */ longDesc: () => LocalizedString } - attendees: { + 'searchCriteria[sortOrders][0][direction]': { /** - * Attendees + * Sort Direction */ displayName: () => LocalizedString /** - * Updated meeting participants + * Direction to sort in */ shortDesc: () => LocalizedString /** - * Updated list of email addresses or user IDs for people who should be invited to the meeting. + * Determines whether to sort in ascending or descending order */ longDesc: () => LocalizedString } - isOnlineMeeting: { + 'searchCriteria[pageSize]': { /** - * Online Meeting + * Page Size */ displayName: () => LocalizedString /** - * Enable/disable Teams online meeting features + * Number of results per page */ shortDesc: () => LocalizedString /** - * When set to true, ensures the meeting has Teams online meeting capabilities with video conferencing and a join link. + * Specifies how many items to return in a single result set */ longDesc: () => LocalizedString } - timeZone: { + 'searchCriteria[currentPage]': { /** - * Time Zone + * Current Page */ displayName: () => LocalizedString /** - * Updated meeting time zone + * Page number to return */ shortDesc: () => LocalizedString /** - * The new time zone for the meeting start and end times, such as "Pacific Standard Time" or "UTC". + * Specifies which page of results to return */ longDesc: () => LocalizedString } } } - } - triggers: { - 'new-channel-message': { + salesShipmentRepositoryV1SavePost: { + groups: { + /** + * Shipments + */ + '0': () => LocalizedString + } /** - * New Channel Message + * Create Shipment */ displayName: () => LocalizedString /** - * Trigger when a message is posted in a channel + * Creates a new shipment for an order */ shortDesc: () => LocalizedString /** - * This trigger fires when a new message is posted in a specified channel within a team. + * Creates a new shipment record for an existing order, allowing you to document and track the physical sending of order items to the customer. Includes options for specifying tracking numbers, shipping carriers, and shipped items with their quantities. */ longDesc: () => LocalizedString - options: { - channelId: { - /** - * Channel ID - */ - displayName: () => LocalizedString - /** - * Channel to monitor for messages - */ - shortDesc: () => LocalizedString - /** - * The unique identifier of the channel to monitor for new messages. - */ - longDesc: () => LocalizedString - } - teamId: { - /** - * Team ID - */ - displayName: () => LocalizedString - /** - * Team identifier - */ - shortDesc: () => LocalizedString - /** - * The unique identifier of the team containing the channel to monitor. - */ - longDesc: () => LocalizedString - } + } + salesInvoiceRepositoryV1SavePost: { + groups: { + /** + * Invoices + */ + '0': () => LocalizedString } + /** + * Create Invoice + */ + displayName: () => LocalizedString + /** + * Creates a new invoice for an order + */ + shortDesc: () => LocalizedString + /** + * Creates a new invoice record for an existing order, documenting the financial transaction and payment request. Allows for specifying line items to be invoiced, payment details, and comments that will appear on the customer's invoice. + */ + longDesc: () => LocalizedString } - 'new-chat-message': { + salesOrderRepositoryV1SavePut: { + groups: { + /** + * Orders + */ + '0': () => LocalizedString + } /** - * New Chat Message + * Create Order */ displayName: () => LocalizedString /** - * Trigger when a message is sent in a chat + * Persists order information to the system */ shortDesc: () => LocalizedString /** - * This trigger fires when a new message is sent in a direct chat or group chat conversation. + * Performs persist operations for a specified order. Saves the order data to the database, including customer information, line items, payment details, shipping information, and other relevant order metadata. + */ + longDesc: () => LocalizedString + } + salesOrderManagementV1AddCommentPost: { + groups: { + /** + * Orders + */ + '0': () => LocalizedString + } + /** + * Add Order Comment + */ + displayName: () => LocalizedString + /** + * Append a comment to an existing order + */ + shortDesc: () => LocalizedString + /** + * Adds a comment to the order history. Comments can be internal (visible only to administrators) or customer-visible. Each comment is timestamped and attributed to the author. Useful for documenting order processing steps and customer communications. */ longDesc: () => LocalizedString options: { - chatId: { + id: { /** - * Chat ID + * Order ID */ displayName: () => LocalizedString /** - * Chat to monitor for messages + * The ID of the order to which the comment will be added */ shortDesc: () => LocalizedString /** - * The unique identifier of the direct chat or group chat to monitor for new messages. + * The ID of the order to which the comment will be added */ longDesc: () => LocalizedString } } } - 'new-meeting': { + salesOrderManagementV1GetCommentsListGet: { + groups: { + /** + * Orders + */ + '0': () => LocalizedString + } /** - * New Meeting + * Get Order Comments */ displayName: () => LocalizedString /** - * Trigger when a meeting is created + * Retrieve the comment history for an order */ shortDesc: () => LocalizedString /** - * This trigger fires when a new meeting is scheduled that matches the specified criteria. + * Returns the complete comment history for a specific order. Results include comment text, timestamp, author information, and visibility status (customer-visible or admin-only). Comments are returned in chronological order. + */ + longDesc: () => LocalizedString + } + salesInvoiceRepositoryV1GetListGet: { + groups: { + /** + * Invoices + */ + '0': () => LocalizedString + } + /** + * List Invoices + */ + displayName: () => LocalizedString + /** + * Retrieve a collection of invoices + */ + shortDesc: () => LocalizedString + /** + * Returns a list of invoices based on specified search criteria. Results can be filtered by order ID, customer, date, and amount. Each invoice includes line items, payment information, and related order details. Supports pagination and sorting. */ longDesc: () => LocalizedString options: { - meetingSource: { + 'searchCriteria[filterGroups][0][filters][0][field]': { /** - * Meeting Source + * Filter Field */ displayName: () => LocalizedString /** - * Origin of the meeting + * Field to filter by */ shortDesc: () => LocalizedString /** - * Specifies which type of meetings to monitor, such as "private" or "team" meetings. + * Specifies which product field to apply the filter condition to */ longDesc: () => LocalizedString } - teamId: { + 'searchCriteria[filterGroups][0][filters][0][value]': { /** - * Team ID + * Filter Value */ displayName: () => LocalizedString /** - * Associated team identifier + * Value to filter with */ shortDesc: () => LocalizedString /** - * Optional filter to only trigger for meetings associated with a specific team. + * The value to match against the specified field */ longDesc: () => LocalizedString } - } - } - } - } - Serenity: { - /** - * Serenity - */ - displayName: () => LocalizedString - groups: { - /** - * AI & Language Models - */ - '0': () => LocalizedString - } - /** - * Create conversations, execute agents and manage interactions with Serenity AI Hub. - */ - shortDesc: () => LocalizedString - /** - * Enterprise AI ecosystem that enables businesses to create, manage, and scale AI agents effortlessly, enhancing productivity and innovation across various processes. - */ - longDesc: () => LocalizedString - connectionMessage: { - /** - * Connect to Serenity AI Hub - */ - title: () => LocalizedString - /** - * To connect to Serenity AI Hub, you will need your **API Key**. - - ## Getting Your API Key - - 1. Sign in to your [Serenity AI Hub](https://serenity.qore.ai/) account - 2. Navigate to **Developer Tools** or **API Settings** - 3. Generate a new API key or copy your existing key - 4. Give your API key a descriptive name for identification - - ## Connection Details - - ### API Key - Your Serenity API key that authenticates requests to execute agents, manage conversations, and interact with the Serenity AI Hub platform. - - **Note:** Keep your API key secure and never share it publicly. Your API key grants access to your organization's AI agents and conversations. - */ - content: () => LocalizedString - } - actions: { - 'create-conversation': { - /** - * Create Conversation - */ - displayName: () => LocalizedString - /** - * Create a conversation with a conversation agent - */ - shortDesc: () => LocalizedString - /** - * Creates a conversation with the given agent code. This is required before executing an agent. - */ - longDesc: () => LocalizedString - options: { - agentCode: { + 'searchCriteria[filterGroups][0][filters][0][conditionType]': { /** - * Agent Code + * Filter Condition */ displayName: () => LocalizedString /** - * The code of the agent to create a conversation with + * Type of comparison to use */ shortDesc: () => LocalizedString /** - * The code of the agent to create a conversation with + * Condition type for the filter (eq, neq, like, gt, lt, etc.) */ longDesc: () => LocalizedString } - userIdentifier: { + 'searchCriteria[sortOrders][0][field]': { /** - * User Identifier + * Sort Field */ displayName: () => LocalizedString /** - * Used to uniquely identify a user in a conversation. + * Field to sort by */ shortDesc: () => LocalizedString /** - * It helps maintain context across interactions. For example, you might use `"userIdentifier": "landing-page-user"` to track a specific user session. + * Specifies which product field to use for sorting the results */ longDesc: () => LocalizedString } - inputParameters: { + 'searchCriteria[sortOrders][0][direction]': { /** - * Input Parameters + * Sort Direction */ displayName: () => LocalizedString /** - * An array of key-value pairs for additional context. + * Direction to sort in */ shortDesc: () => LocalizedString /** - * An array of key-value pairs for additional context. + * Determines whether to sort in ascending or descending order + */ + longDesc: () => LocalizedString + } + 'searchCriteria[pageSize]': { + /** + * Page Size + */ + displayName: () => LocalizedString + /** + * Number of results per page + */ + shortDesc: () => LocalizedString + /** + * Specifies how many items to return in a single result set + */ + longDesc: () => LocalizedString + } + 'searchCriteria[currentPage]': { + /** + * Current Page + */ + displayName: () => LocalizedString + /** + * Page number to return + */ + shortDesc: () => LocalizedString + /** + * Specifies which page of results to return */ longDesc: () => LocalizedString - type: { - element_type: { - fields: { - key: { - /** - * Key - */ - displayName: () => LocalizedString - /** - * The key of the parameter - */ - shortDesc: () => LocalizedString - /** - * The key of the parameter - */ - longDesc: () => LocalizedString - } - value: { - /** - * Value - */ - displayName: () => LocalizedString - /** - * The value of the parameter - */ - shortDesc: () => LocalizedString - /** - * The value of the parameter - */ - longDesc: () => LocalizedString - } - } - } - } } } } - 'execute-agent': { + salesShipmentRepositoryV1GetListGet: { + groups: { + /** + * Shipments + */ + '0': () => LocalizedString + } /** - * Execute Agent + * List Shipments */ displayName: () => LocalizedString /** - * Executes an agent with the given code. + * Retrieve a collection of order shipments */ shortDesc: () => LocalizedString /** - * Executes an agent with the given code. + * Returns a list of shipments based on specified search criteria. Results can be filtered by order ID, customer, creation date, and tracking information. Each shipment includes items shipped, quantities, tracking numbers, and carrier information. */ longDesc: () => LocalizedString options: { - agentCode: { + 'searchCriteria[filterGroups][0][filters][0][field]': { /** - * Agent Code + * Filter Field */ displayName: () => LocalizedString /** - * Used to identify and execute a specific agent within the Serenity* AI Hub + * Field to filter by */ shortDesc: () => LocalizedString /** - * Used to identify and execute a specific agent within the Serenity* AI Hub + * Specifies which product field to apply the filter condition to */ longDesc: () => LocalizedString } - culture: { + 'searchCriteria[filterGroups][0][filters][0][value]': { /** - * Culture + * Filter Value */ displayName: () => LocalizedString /** - * Use this param to override the culture of the response. + * Value to filter with */ shortDesc: () => LocalizedString /** - * Use this param to override the culture of the response. + * The value to match against the specified field */ longDesc: () => LocalizedString } - userLanguage: { + 'searchCriteria[filterGroups][0][filters][0][conditionType]': { /** - * User Language + * Filter Condition */ displayName: () => LocalizedString /** - * The preferred language of the response + * Type of comparison to use */ shortDesc: () => LocalizedString /** - * The preferred language of the response + * Condition type for the filter (eq, neq, like, gt, lt, etc.) */ longDesc: () => LocalizedString } - params: { + 'searchCriteria[sortOrders][0][field]': { /** - * Params + * Sort Field */ displayName: () => LocalizedString /** - * An array of key-value pairs for execution context. + * Field to sort by */ shortDesc: () => LocalizedString /** - * An array of key-value pairs for execution context. + * Specifies which product field to use for sorting the results */ longDesc: () => LocalizedString - type: { - element_type: { - fields: { - Key: { - /** - * Key - */ - displayName: () => LocalizedString - /** - * The key of the parameter - */ - shortDesc: () => LocalizedString - /** - * The key of the parameter - */ - longDesc: () => LocalizedString - } - Value: { - /** - * Value - */ - displayName: () => LocalizedString - /** - * The value of the parameter - */ - shortDesc: () => LocalizedString - /** - * The value of the parameter - */ - longDesc: () => LocalizedString - } - } - } - } } - volatileKnowledgeIds: { + 'searchCriteria[sortOrders][0][direction]': { /** - * Volatile Knowledge IDs + * Sort Direction */ displayName: () => LocalizedString /** - * Unique identifiers (UUIDs) used to retrieve specific pieces of volatile knowledge in the Serenity* AI Hub + * Direction to sort in */ shortDesc: () => LocalizedString /** - * Unique identifiers (UUIDs) used to retrieve specific pieces of volatile knowledge in the Serenity* AI Hub + * Determines whether to sort in ascending or descending order + */ + longDesc: () => LocalizedString + } + 'searchCriteria[pageSize]': { + /** + * Page Size + */ + displayName: () => LocalizedString + /** + * Number of results per page + */ + shortDesc: () => LocalizedString + /** + * Specifies how many items to return in a single result set + */ + longDesc: () => LocalizedString + } + 'searchCriteria[currentPage]': { + /** + * Current Page + */ + displayName: () => LocalizedString + /** + * Page number to return + */ + shortDesc: () => LocalizedString + /** + * Specifies which page of results to return */ longDesc: () => LocalizedString } } } - 'execute-conversation': { + salesTransactionRepositoryV1GetListGet: { + groups: { + /** + * Payments + */ + '0': () => LocalizedString + } /** - * Execute Conversation + * List Payment Transactions */ displayName: () => LocalizedString /** - * Send a message to a chat with agent + * Retrieve a collection of payment transactions */ shortDesc: () => LocalizedString /** - * Send a message to a chat with agent + * Returns a list of payment transactions based on specified search criteria. Results can be filtered by order ID, payment method, transaction type, and status. Each transaction includes amount, status, and related payment gateway information. */ longDesc: () => LocalizedString options: { - agentCode: { - /** - * Agent Code - */ - displayName: () => LocalizedString - /** - * The agent to check for conversations with - */ - shortDesc: () => LocalizedString - /** - * The agent to check for conversations with - */ - longDesc: () => LocalizedString - } - conversationId: { + 'searchCriteria[filterGroups][0][filters][0][field]': { /** - * Conversation ID + * Filter Field */ displayName: () => LocalizedString /** - * The conversation to send the message to + * Field to filter by */ shortDesc: () => LocalizedString /** - * The conversation to send the message to + * Specifies which product field to apply the filter condition to */ longDesc: () => LocalizedString } - userLanguage: { + 'searchCriteria[filterGroups][0][filters][0][value]': { /** - * User Language + * Filter Value */ displayName: () => LocalizedString /** - * The preferred language of the response + * Value to filter with */ shortDesc: () => LocalizedString /** - * The preferred language of the response + * The value to match against the specified field */ longDesc: () => LocalizedString } - message: { + 'searchCriteria[filterGroups][0][filters][0][conditionType]': { /** - * Message + * Filter Condition */ displayName: () => LocalizedString /** - * Message to send to the agent + * Type of comparison to use */ shortDesc: () => LocalizedString /** - * Message to send to the agent + * Condition type for the filter (eq, neq, like, gt, lt, etc.) */ longDesc: () => LocalizedString } - culture: { + 'searchCriteria[sortOrders][0][field]': { /** - * Culture + * Sort Field */ displayName: () => LocalizedString /** - * Use this param to override the culture of the response. + * Field to sort by */ shortDesc: () => LocalizedString /** - * Use this param to override the culture of the response. + * Specifies which product field to use for sorting the results */ longDesc: () => LocalizedString } - } - } - } - triggers: { - 'new-conversation-message': { - /** - * New Conversation Message - */ - displayName: () => LocalizedString - /** - * Triggered when a new message is posted in a conversation. - */ - shortDesc: () => LocalizedString - /** - * This trigger activates when a new message is posted in a conversation. - */ - longDesc: () => LocalizedString - options: { - conversationId: { + 'searchCriteria[sortOrders][0][direction]': { /** - * Conversation ID + * Sort Direction */ displayName: () => LocalizedString /** - * The unique identifier for the conversation. + * Direction to sort in */ shortDesc: () => LocalizedString /** - * Enter the Conversation ID to specify the conversation where you want to monitor new messages. + * Determines whether to sort in ascending or descending order */ longDesc: () => LocalizedString } - agentCode: { + 'searchCriteria[pageSize]': { /** - * Agent ID + * Page Size */ displayName: () => LocalizedString /** - * The unique identifier for the agent. + * Number of results per page */ shortDesc: () => LocalizedString /** - * Agent ID to check for available conversations from + * Specifies how many items to return in a single result set */ longDesc: () => LocalizedString } - sender: { + 'searchCriteria[currentPage]': { /** - * Sender + * Current Page */ displayName: () => LocalizedString /** - * Filter the messages by the sender. + * Page number to return */ shortDesc: () => LocalizedString /** - * Choose the sender the messages should be filtered by. + * Specifies which page of results to return */ longDesc: () => LocalizedString } } } - } - } - Pipedrive: { - /** - * Pipedrive - */ - displayName: () => LocalizedString - groups: { - /** - * CRM & Sales Management - */ - '0': () => LocalizedString - } - /** - * Manage your sales pipeline and customer relationships with Pipedrive. - */ - shortDesc: () => LocalizedString - /** - * Pipedrive is a sales management tool designed to help small sales teams manage intricate or lengthy sales processes. - */ - longDesc: () => LocalizedString - triggers: { - pipedrive_activity_trigger: { + rmaRmaRepositoryV1DeleteDelete: { + groups: { + /** + * Returns & RMAs + */ + '0': () => LocalizedString + } /** - * Activity Action + * Delete Return Request */ displayName: () => LocalizedString /** - * Triggers when an action is performed on an activity + * Remove a Return Merchandise Authorization (RMA) */ shortDesc: () => LocalizedString /** - * This trigger activates when a selected action is performed on an activity in Pipedrive. Actions include creating, updating, deleting an activity or any change. + * Permanently deletes a Return Merchandise Authorization (RMA) request from the system. This operation cannot be undone and removes all associated return information including submitted items, reason codes, and processing history. */ longDesc: () => LocalizedString - options: { - action: { - /** - * Action - */ - displayName: () => LocalizedString - /** - * Select the action that triggers the flow - */ - shortDesc: () => LocalizedString - /** - * Select the action that triggers the flow. Choose from: create, update, delete, or any change. - */ - longDesc: () => LocalizedString - } - } } - pipedrive_deal_trigger: { + rmaRmaManagementV1SaveRmaPost: { + groups: { + /** + * Returns & RMAs + */ + '0': () => LocalizedString + } /** - * Deal Action + * Create Return Request */ displayName: () => LocalizedString /** - * Triggers when an action is performed on a deal + * Submit a new Return Merchandise Authorization (RMA) */ shortDesc: () => LocalizedString /** - * This trigger activates when a selected action is performed on a deal in Pipedrive. Actions include creating, updating, deleting a deal or any change. + * Creates a new Return Merchandise Authorization (RMA) request for an existing order. The request includes items to be returned, quantities, reason codes, and customer comments. Additional documentation such as images can be attached to support the return request. */ longDesc: () => LocalizedString - options: { - action: { - /** - * Action - */ - displayName: () => LocalizedString - /** - * Select the action that triggers the flow - */ - shortDesc: () => LocalizedString - /** - * Select the action that triggers the flow. Choose from: create, update, delete, or any change. - */ - longDesc: () => LocalizedString - } + } + rmaRmaManagementV1SearchGet: { + groups: { + /** + * Returns & RMAs + */ + '0': () => LocalizedString } + /** + * Search Return Requests + */ + displayName: () => LocalizedString + /** + * Find Return Merchandise Authorizations (RMAs) + */ + shortDesc: () => LocalizedString + /** + * Searches for Return Merchandise Authorization (RMA) requests based on specified criteria. Results can be filtered by order ID, customer, status, and date range. Each RMA includes return items, processing status, and communication history. + */ + longDesc: () => LocalizedString } - pipedrive_lead_trigger: { + } + triggers: { + 'customer-created-or-updated': { /** - * Lead Action + * Customer Created or Updated */ displayName: () => LocalizedString /** - * Triggers when an action is performed on a lead + * Triggers when a customer is created or updated in Magento */ shortDesc: () => LocalizedString /** - * This trigger activates when a selected action is performed on a lead in Pipedrive. Actions include creating, updating, deleting a lead or any change. + * This trigger activates when a new customer is created in your Magento store or when an existing customer's information is updated. */ longDesc: () => LocalizedString options: { - action: { + activationCriteria: { /** - * Action + * Activation Criteria */ displayName: () => LocalizedString /** - * Select the action that triggers the flow + * Specify when this trigger should activate */ shortDesc: () => LocalizedString /** - * Select the action that triggers the flow. Choose from: create, update, delete, or any change. + * Select whether this trigger should activate on customer creation or on customer updates. */ longDesc: () => LocalizedString } } } - pipedrive_note_trigger: { + 'invoice-created-or-updated': { /** - * Note Action + * Invoice Created or Updated */ displayName: () => LocalizedString /** - * Triggers when an action is performed on a note + * Triggers when an invoice is created or updated in Magento */ shortDesc: () => LocalizedString /** - * This trigger activates when a selected action is performed on a note in Pipedrive. Actions include creating, updating, deleting a note or any change. + * This trigger activates when a new invoice is generated in your Magento store or when an existing invoice is modified. */ longDesc: () => LocalizedString options: { - action: { + activationCriteria: { /** - * Action + * Activation Criteria */ displayName: () => LocalizedString /** - * Select the action that triggers the flow + * Specify when this trigger should activate */ shortDesc: () => LocalizedString /** - * Select the action that triggers the flow. Choose from: create, update, delete, or any change. + * Select whether this trigger should activate on invoice creation or on invoice updates. */ longDesc: () => LocalizedString } } } - pipedrive_organization_trigger: { + 'product-created-or-updated': { /** - * Organization Action + * Product Created or Updated */ displayName: () => LocalizedString /** - * Triggers when an action is performed on an organization + * Triggers when a product is created or updated in Magento */ shortDesc: () => LocalizedString /** - * This trigger activates when a selected action is performed on an organization in Pipedrive. Actions include creating, updating, deleting an organization or any change. + * This trigger activates when a new product is added to your Magento catalog or when an existing product's information is modified. */ longDesc: () => LocalizedString options: { - action: { + activationCriteria: { /** - * Action + * Activation Criteria */ displayName: () => LocalizedString /** - * Select the action that triggers the flow + * Specify when this trigger should activate */ shortDesc: () => LocalizedString /** - * Select the action that triggers the flow. Choose from: create, update, delete, or any change. + * Select whether this trigger should activate on product creation or on product updates. */ longDesc: () => LocalizedString } } } - pipedrive_person_trigger: { + 'order-created': { /** - * Person Action + * Order Created */ displayName: () => LocalizedString /** - * Triggers when an action is performed on a person + * Triggers when a new order is placed in Magento */ shortDesc: () => LocalizedString /** - * This trigger activates when a selected action is performed on a person in Pipedrive. Actions include creating, updating, deleting a person or any change. + * This trigger activates when a customer completes the checkout process and places a new order in your Magento store. */ longDesc: () => LocalizedString - options: { - action: { - /** - * Action - */ - displayName: () => LocalizedString - /** - * Select the action that triggers the flow - */ - shortDesc: () => LocalizedString - /** - * Select the action that triggers the flow. Choose from: create, update, delete, or any change. - */ - longDesc: () => LocalizedString - } - } } - pipedrive_user_trigger: { + 'shipment-created': { /** - * User Action + * Shipment Created */ displayName: () => LocalizedString /** - * Triggers when an action is performed on a user + * Triggers when a new shipment is created in Magento */ shortDesc: () => LocalizedString /** - * This trigger activates when a selected action is performed on a user in Pipedrive. Actions include creating, updating, deleting a user or any change. + * This trigger activates when a new shipment is created for an order in your Magento store, indicating that products have been shipped to the customer. */ longDesc: () => LocalizedString - options: { - action: { - /** - * Action - */ - displayName: () => LocalizedString - /** - * Select the action that triggers the flow - */ - shortDesc: () => LocalizedString - /** - * Select the action that triggers the flow. Choose from: create, update, delete, or any change. - */ - longDesc: () => LocalizedString - } - } } } - expressions: { - '&&': { + } + Shopify: { + /** + * Shopify + */ + displayName: () => LocalizedString + groups: { + /** + * E-commerce Platforms + */ + '0': () => LocalizedString + } + /** + * E-commerce platform for online stores and retail point of sale + */ + shortDesc: () => LocalizedString + /** + * Shopify is a comprehensive commerce platform that allows businesses to start, grow, and manage an online store, sell in multiple places, and synchronize online and in-person sales. + */ + longDesc: () => LocalizedString + actions: { + 'find-product': { /** - * and (&&) + * Find Products */ displayName: () => LocalizedString /** - * Returns True if all arguments are True + * Search for products in your store */ shortDesc: () => LocalizedString /** - * Returns `True` if all arguments are `True` with logic short-circuiting + * Search and filter products in your Shopify store based on various criteria including title, vendor, product type, and more. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + titleQuery: { /** - * Condition + * Title */ displayName: () => LocalizedString /** - * Boolean condition to evaluate + * Search by product title */ shortDesc: () => LocalizedString /** - * A boolean expression or condition that evaluates to True or False + * Filter products by matching text in their titles. Supports partial matches. */ longDesc: () => LocalizedString } - } - } - '||': { - /** - * or (||) - */ - displayName: () => LocalizedString - /** - * Returns True if any argument is True - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if any argument is `True` with logic short-circuiting - */ - longDesc: () => LocalizedString - args: { - '0': { + vendorQuery: { /** - * Condition + * Vendor */ displayName: () => LocalizedString /** - * Boolean condition to evaluate + * Filter by product vendor */ shortDesc: () => LocalizedString /** - * A boolean expression or condition that evaluates to True or False + * Find products from specific vendors or suppliers in your store. */ longDesc: () => LocalizedString } - } - } - '==': { - /** - * equal (==) - */ - displayName: () => LocalizedString - /** - * Equality comparison - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field value equals the specified value - */ - longDesc: () => LocalizedString - args: { - '0': { + productTypeQuery: { /** - * Field + * Product Type */ displayName: () => LocalizedString /** - * Field to compare + * Filter by product type */ shortDesc: () => LocalizedString /** - * The field whose value will be compared + * Search for products based on their assigned product type category. */ longDesc: () => LocalizedString } - '1': { + tagQuery: { /** - * Value + * Tags */ displayName: () => LocalizedString /** - * Value to compare against + * Search by product tags */ shortDesc: () => LocalizedString /** - * The value to compare the field against + * Find products that have been tagged with specific keywords or labels. */ longDesc: () => LocalizedString } - } - } - '!=': { - /** - * not equal (!=) - */ - displayName: () => LocalizedString - /** - * Inequality comparison - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field value does not equal the specified value - */ - longDesc: () => LocalizedString - args: { - '0': { + skuQuery: { /** - * Field + * SKU */ displayName: () => LocalizedString /** - * Field to compare + * Search by product SKU */ shortDesc: () => LocalizedString /** - * The field whose value will be compared + * Look up products using their Stock Keeping Unit (SKU) identifier. */ longDesc: () => LocalizedString } - '1': { + barcodeQuery: { /** - * Value + * Barcode */ displayName: () => LocalizedString /** - * Value to compare against + * Search by barcode */ shortDesc: () => LocalizedString /** - * The value to compare the field against + * Find products using their UPC, ISBN, or other barcode identifiers. */ longDesc: () => LocalizedString } - } - } - '>': { - /** - * greater than (>) - */ - displayName: () => LocalizedString - /** - * Greater than comparison - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field value is greater than the specified value - */ - longDesc: () => LocalizedString - args: { - '0': { + productIdQuery: { /** - * Field + * Product ID */ displayName: () => LocalizedString /** - * Field to compare + * Search by product ID */ shortDesc: () => LocalizedString /** - * The field whose value will be compared + * Look up a specific product using its unique Shopify product ID. */ longDesc: () => LocalizedString } - '1': { + collectionIdQuery: { /** - * Value + * Collection */ displayName: () => LocalizedString /** - * Value to compare against + * Filter by collection ID */ shortDesc: () => LocalizedString /** - * The value to compare the field against + * Find products that belong to a specific collection in your store. */ longDesc: () => LocalizedString } - } - } - '>=': { - /** - * greater than or equal (>=) - */ - displayName: () => LocalizedString - /** - * Greater than or equal comparison - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field value is greater than or equal to the specified value - */ - longDesc: () => LocalizedString - args: { - '0': { + sortKey: { + /** + * Sort By + */ + displayName: () => LocalizedString + /** + * Sort the results + */ + shortDesc: () => LocalizedString + /** + * Choose how to order the results (e.g., by title, price, created date). + */ + longDesc: () => LocalizedString + } + reverse: { /** - * Field + * Reverse Order */ displayName: () => LocalizedString /** - * Field to compare + * Reverse the sort order */ shortDesc: () => LocalizedString /** - * The field whose value will be compared + * Toggle between ascending and descending sort order for the results. */ longDesc: () => LocalizedString } - '1': { + rawQuery: { /** - * Value + * Advanced Query */ displayName: () => LocalizedString /** - * Value to compare against + * Use custom search syntax */ shortDesc: () => LocalizedString /** - * The value to compare the field against + * Enter a custom search query for advanced filtering using Shopify search syntax. */ longDesc: () => LocalizedString } - } - } - '<': { - /** - * less than (<) - */ - displayName: () => LocalizedString - /** - * Less than comparison - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field value is less than the specified value - */ - longDesc: () => LocalizedString - args: { - '0': { + limit: { /** - * Field + * Results Limit */ displayName: () => LocalizedString /** - * Field to compare + * Maximum number of results */ shortDesc: () => LocalizedString /** - * The field whose value will be compared + * Specify the maximum number of products to return in the search results. */ longDesc: () => LocalizedString } - '1': { + cursor: { /** - * Value + * Pagination Cursor */ displayName: () => LocalizedString /** - * Value to compare against + * Navigate through pages of results */ shortDesc: () => LocalizedString /** - * The value to compare the field against + * Use a cursor to paginate through large sets of search results. */ longDesc: () => LocalizedString } } } - '<=': { + 'find-order': { /** - * less than or equal (<=) + * Find Orders */ displayName: () => LocalizedString /** - * Less than or equal comparison + * Search for customer orders */ shortDesc: () => LocalizedString /** - * Returns `True` if the field value is less than or equal to the specified value + * Search and filter orders in your Shopify store based on various criteria including customer name, email, order number, and more. */ longDesc: () => LocalizedString - args: { - '0': { + options: { + name: { /** - * Field + * Order Number */ displayName: () => LocalizedString /** - * Field to compare + * Search by order number */ shortDesc: () => LocalizedString /** - * The field whose value will be compared + * Look up orders using their confirmation or order number. */ longDesc: () => LocalizedString } - '1': { + email: { /** - * Value + * Email */ displayName: () => LocalizedString /** - * Value to compare against + * Search by customer email */ shortDesc: () => LocalizedString /** - * The value to compare the field against + * Find orders associated with a specific customer email address. */ longDesc: () => LocalizedString } - } - } - like: { - /** - * like - */ - displayName: () => LocalizedString - /** - * Pattern matching - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field value matches the specified pattern - */ - longDesc: () => LocalizedString - args: { - '0': { + customer_id: { /** - * Field + * Customer ID */ displayName: () => LocalizedString /** - * Text field to search + * Filter by customer ID */ shortDesc: () => LocalizedString /** - * The text field to perform pattern matching on + * Find all orders placed by a specific customer using their Shopify customer ID. */ longDesc: () => LocalizedString } - '1': { + confirmation_number: { /** - * Pattern + * Confirmation Number */ displayName: () => LocalizedString /** - * Pattern to match + * Search by confirmation number */ shortDesc: () => LocalizedString /** - * The pattern to match against the field value + * Find orders by their unique confirmation number provided to customers. */ longDesc: () => LocalizedString } - } - } - 'is-null': { - /** - * is null - */ - displayName: () => LocalizedString - /** - * Field is null - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field is null or has no value - */ - longDesc: () => LocalizedString - args: { - '0': { + id: { /** - * Field + * Order ID */ displayName: () => LocalizedString /** - * Field to check + * Search by order ID */ shortDesc: () => LocalizedString /** - * The field to check for null value + * Look up a specific order using its unique Shopify order ID. */ longDesc: () => LocalizedString } - } - } - 'is-not-null': { - /** - * is not null - */ - displayName: () => LocalizedString - /** - * Field is not null - */ - shortDesc: () => LocalizedString - /** - * Returns `True` if the field has a value and is not null - */ - longDesc: () => LocalizedString - args: { - '0': { + financial_status: { /** - * Field + * Payment Status */ displayName: () => LocalizedString /** - * Field to check + * Filter by payment status */ shortDesc: () => LocalizedString /** - * The field to check for a non-null value + * Find orders with a specific payment status (paid, pending, refunded, etc.). */ longDesc: () => LocalizedString } - } - } - } - searchOptions: { - orderBy: { - /** - * Order By - */ - displayName: () => LocalizedString - /** - * Sort results by a specific field - */ - shortDesc: () => LocalizedString - /** - * Define the field and direction to sort search results - */ - longDesc: () => LocalizedString - type: { - fields: { - column: { - /** - * Column - */ - displayName: () => LocalizedString - /** - * The column to sort by - */ - shortDesc: () => LocalizedString - /** - * The name of the column to use for sorting results - */ - longDesc: () => LocalizedString - } - ascending: { - /** - * Ascending - */ - displayName: () => LocalizedString - /** - * Sort in ascending order - */ - shortDesc: () => LocalizedString - /** - * When enabled, results are sorted in ascending order (A-Z, 0-9) - */ - longDesc: () => LocalizedString - } - } - } - } - } - } - Magento: { - /** - * Magento - */ - displayName: () => LocalizedString - groups: { - /** - * E-commerce Platforms - */ - '0': () => LocalizedString - } - /** - * E-commerce platform for building online stores and managing customers, products, and orders - */ - shortDesc: () => LocalizedString - /** - * Magento is a flexible e-commerce platform that provides businesses with a complete solution for building and managing online stores. This integration allows you to automate workflows when customer, product, order, invoice, or shipment events occur in your Magento store. - */ - longDesc: () => LocalizedString - connectionMessage: { - /** - * Connect to Magento - */ - title: () => LocalizedString - /** - * To connect to Magento, you will need your **Store URL** and an **Integration Access Token**. - - ## Creating an Integration Token - - 1. Log in to your Magento Admin Panel - 2. Navigate to **System** → **Integrations** - 3. Click **Add New Integration** - 4. Fill in the integration details: - - **Name**: Give it a descriptive name (e.g., "Qore Integration") - - **Email**: Your admin email - - **Callback URL** and **Identity Link URL**: Can be left empty for token-based access - 5. Go to the **API** tab - 6. Select the **Resource Access** level: - - Choose **All** for full access, or - - Choose **Custom** and select specific resources needed - 7. Click **Save** - 8. Click **Activate** on the integration - 9. Click **Allow** in the confirmation popup - 10. Copy the **Access Token** from the displayed credentials - - ## Connection Details - - ### Store URL - Your Magento store's base URL (e.g., `https://your-store.com`). Include the protocol (https://) but do not include trailing slashes. - - ### Access Token - The integration access token generated when you activated the integration. This token authenticates all API requests. - - ## For Magento 2.4.4 and Later - - If you're using Magento 2.4.4+, you may need to enable bearer token authentication: - - ```bash - bin/magento config:set oauth/consumer/enable_integration_as_bearer 1 - ``` - - **Note:** Integration tokens do not expire unless manually revoked. Store your access token securely and limit the integration's API access to only the resources needed for your use case. - */ - content: () => LocalizedString - } - actions: { - customerCustomerRepositoryV1GetByIdGet: { - groups: { - /** - * Customers - */ - '0': () => LocalizedString - } - /** - * Get Customer by ID - */ - displayName: () => LocalizedString - /** - * Retrieve a specific customer account by ID - */ - shortDesc: () => LocalizedString - /** - * Retrieves detailed information about a customer account using the customer ID. Returns all customer attributes including address information, account status, and custom attributes. - */ - longDesc: () => LocalizedString - } - customerCustomerRepositoryV1SavePut: { - groups: { - /** - * Customers - */ - '0': () => LocalizedString - } - /** - * Update Customer - */ - displayName: () => LocalizedString - /** - * Update an existing customer account - */ - shortDesc: () => LocalizedString - /** - * Updates customer information for an existing account. This endpoint allows modification of personal information, addresses, custom attributes, and other account details. The customer ID must be included in the request. - */ - longDesc: () => LocalizedString - } - customerCustomerRepositoryV1DeleteByIdDelete: { - groups: { - /** - * Customers - */ - '0': () => LocalizedString - } - /** - * Delete Customer - */ - displayName: () => LocalizedString - /** - * Remove a customer account by ID - */ - shortDesc: () => LocalizedString - /** - * Permanently deletes a customer account from the system. This operation cannot be undone and will remove all customer data associated with the specified ID, including addresses and order history references. - */ - longDesc: () => LocalizedString - } - customerCustomerRepositoryV1GetListGet: { - groups: { - /** - * Customers - */ - '0': () => LocalizedString - } - /** - * List Customers - */ - displayName: () => LocalizedString - /** - * Retrieve a list of customer accounts - */ - shortDesc: () => LocalizedString - /** - * Returns a list of customer accounts that match specified search criteria. Results can be filtered, sorted, and paginated. Use search criteria parameters to narrow results by email, name, creation date, or other customer attributes. - */ - longDesc: () => LocalizedString - options: { - 'searchCriteria[filterGroups][0][filters][0][field]': { + fulfillment_status: { /** - * Filter Field + * Fulfillment Status */ displayName: () => LocalizedString /** - * Field to filter by + * Filter by shipping status */ shortDesc: () => LocalizedString /** - * Specifies which product field to apply the filter condition to + * Find orders with a specific fulfillment status (fulfilled, unfulfilled, shipped, etc.). */ longDesc: () => LocalizedString } - 'searchCriteria[filterGroups][0][filters][0][value]': { + status: { /** - * Filter Value + * Order Status */ displayName: () => LocalizedString /** - * Value to filter with + * Filter by order status */ shortDesc: () => LocalizedString /** - * The value to match against the specified field + * Find orders based on their overall status (open, closed, cancelled). */ longDesc: () => LocalizedString } - 'searchCriteria[filterGroups][0][filters][0][conditionType]': { + source_name: { /** - * Filter Condition + * Source */ displayName: () => LocalizedString /** - * Type of comparison to use + * Filter by order source */ shortDesc: () => LocalizedString /** - * Condition type for the filter (eq, neq, like, gt, lt, etc.) + * Find orders from specific sources (e.g., web, draft orders, POS). */ longDesc: () => LocalizedString } - 'searchCriteria[sortOrders][0][field]': { + sales_channel: { /** - * Sort Field + * Sales Channel */ displayName: () => LocalizedString /** - * Field to sort by + * Filter by sales channel */ shortDesc: () => LocalizedString /** - * Specifies which product field to use for sorting the results + * Find orders from specific sales channels configured in your Shopify store. */ longDesc: () => LocalizedString } - 'searchCriteria[sortOrders][0][direction]': { + sku: { /** - * Sort Direction + * Product SKU */ displayName: () => LocalizedString /** - * Direction to sort in + * Search by product SKU */ shortDesc: () => LocalizedString /** - * Determines whether to sort in ascending or descending order + * Find orders containing products with a specific SKU. */ longDesc: () => LocalizedString } - 'searchCriteria[pageSize]': { + created_at: { /** - * Page Size + * Created Date */ displayName: () => LocalizedString /** - * Number of results per page + * Filter by creation date */ shortDesc: () => LocalizedString /** - * Specifies how many items to return in a single result set + * Find orders created on a specific date or within a date range (e.g., 2021-01-01, LocalizedString } - 'searchCriteria[currentPage]': { + updated_at: { /** - * Current Page + * Updated Date */ displayName: () => LocalizedString /** - * Page number to return + * Filter by last update date */ shortDesc: () => LocalizedString /** - * Specifies which page of results to return + * Find orders last updated on a specific date or within a date range. */ longDesc: () => LocalizedString } - } - } - customerAccountManagementV1CreateAccountPost: { - groups: { - /** - * Customers - */ - '0': () => LocalizedString - } - /** - * Create Customer Account - */ - displayName: () => LocalizedString - /** - * Register a new customer account - */ - shortDesc: () => LocalizedString - /** - * Creates a new customer account with the provided information. Required fields include email, password, and first/last name. Optional details include addresses, date of birth, and custom attributes. Returns the newly created customer ID upon success. - */ - longDesc: () => LocalizedString - } - catalogProductRepositoryV1SavePost: { - groups: { - /** - * Products - */ - '0': () => LocalizedString - } - /** - * Create Product - */ - displayName: () => LocalizedString - /** - * Add a new product to the catalog - */ - shortDesc: () => LocalizedString - /** - * Creates a new product in the catalog with specified attributes, pricing, and inventory information. Products can be simple, configurable, bundled, grouped, virtual, or downloadable. Media gallery entries, tier prices, and custom options can also be defined. - */ - longDesc: () => LocalizedString - } - catalogProductRepositoryV1GetListGet: { - groups: { - /** - * Products - */ - '0': () => LocalizedString - } - /** - * List Products - */ - displayName: () => LocalizedString - /** - * Retrieve a list of products from the catalog - */ - shortDesc: () => LocalizedString - /** - * Returns a collection of products that match the specified search criteria. Results can be filtered by attributes like name, SKU, price, and status. Supports pagination, sorting, and inclusion of custom attributes in the response. - */ - longDesc: () => LocalizedString - options: { - 'searchCriteria[filterGroups][0][filters][0][field]': { + processed_at: { /** - * Filter Field + * Processed Date */ displayName: () => LocalizedString /** - * Field to filter by + * Filter by processed date */ shortDesc: () => LocalizedString /** - * Specifies which product field to apply the filter condition to + * Find orders processed on a specific date or within a date range. */ longDesc: () => LocalizedString } - 'searchCriteria[filterGroups][0][filters][0][value]': { + tag: { /** - * Filter Value + * Tag */ displayName: () => LocalizedString /** - * Value to filter with + * Filter by order tag */ shortDesc: () => LocalizedString /** - * The value to match against the specified field + * Find orders that have been tagged with specific labels in Shopify. */ longDesc: () => LocalizedString } - 'searchCriteria[filterGroups][0][filters][0][conditionType]': { + test: { /** - * Filter Condition + * Test Orders */ displayName: () => LocalizedString /** - * Type of comparison to use + * Include/exclude test orders */ shortDesc: () => LocalizedString /** - * Condition type for the filter (eq, neq, like, gt, lt, etc.) + * Filter to show only test orders (true) or exclude test orders (false). */ longDesc: () => LocalizedString } - 'searchCriteria[sortOrders][0][field]': { + location_id: { /** - * Sort Field + * Location */ displayName: () => LocalizedString /** - * Field to sort by + * Filter by store location */ shortDesc: () => LocalizedString /** - * Specifies which product field to use for sorting the results + * Find orders associated with a specific store location or fulfillment center. */ longDesc: () => LocalizedString } - 'searchCriteria[sortOrders][0][direction]': { + po_number: { /** - * Sort Direction + * Purchase Order Number */ displayName: () => LocalizedString /** - * Direction to sort in + * Search by PO number */ shortDesc: () => LocalizedString /** - * Determines whether to sort in ascending or descending order + * Find orders associated with a specific purchase order number. */ longDesc: () => LocalizedString } - 'searchCriteria[pageSize]': { + rawQuery: { /** - * Page Size + * Advanced Query */ displayName: () => LocalizedString /** - * Number of results per page + * Use custom search syntax */ shortDesc: () => LocalizedString /** - * Specifies how many items to return in a single result set + * Enter a custom search query for advanced filtering using Shopify search syntax. */ longDesc: () => LocalizedString } - 'searchCriteria[currentPage]': { + sortKey: { /** - * Current Page + * Sort By */ displayName: () => LocalizedString /** - * Page number to return + * Sort the results */ shortDesc: () => LocalizedString /** - * Specifies which page of results to return + * Choose how to order the results (e.g., by date, order number, total value). */ longDesc: () => LocalizedString } - } - } - catalogProductRepositoryV1SavePut: { - groups: { - /** - * Products - */ - '0': () => LocalizedString - } - /** - * Update Product - */ - displayName: () => LocalizedString - /** - * Modify an existing product - */ - shortDesc: () => LocalizedString - /** - * Updates an existing product in the catalog. Can modify any product attribute including name, price, description, images, inventory, and category assignments. The product SKU or ID must be specified in the request. - */ - longDesc: () => LocalizedString - options: { - sku: { + reverse: { /** - * Product SKU + * Reverse Order */ displayName: () => LocalizedString /** - * Stock Keeping Unit identifier for the product + * Reverse the sort order */ shortDesc: () => LocalizedString /** - * A unique alphanumeric identifier assigned to a product for inventory tracking and management purposes. The SKU helps in identifying specific product variations including size, color, and other attributes. + * Toggle between ascending and descending sort order for the results. */ longDesc: () => LocalizedString } - } - } - catalogProductRepositoryV1DeleteByIdDelete: { - groups: { - /** - * Products - */ - '0': () => LocalizedString - } - /** - * Delete Product - */ - displayName: () => LocalizedString - /** - * Remove a product from the catalog - */ - shortDesc: () => LocalizedString - /** - * Permanently removes a product from the catalog by ID or SKU. This operation cannot be undone and may affect existing orders and carts that reference the deleted product. - */ - longDesc: () => LocalizedString - options: { - sku: { + limit: { /** - * Product SKU + * Results Limit */ displayName: () => LocalizedString /** - * Stock Keeping Unit identifier for the product + * Maximum number of results */ shortDesc: () => LocalizedString /** - * A unique alphanumeric identifier assigned to a product for inventory tracking and management purposes. The SKU helps in identifying specific product variations including size, color, and other attributes. + * Specify the maximum number of orders to return in the search results (max: 250). */ longDesc: () => LocalizedString } - } - } - catalogProductRepositoryV1GetGet: { - groups: { - /** - * Products - */ - '0': () => LocalizedString - } - /** - * Get Product Details - */ - displayName: () => LocalizedString - /** - * Retrieve detailed information about a specific product - */ - shortDesc: () => LocalizedString - /** - * Retrieves comprehensive information about a specific product by SKU or ID. The response includes all product attributes, images, pricing information, inventory status, and category assignments. Additional parameters can control which data is included. - */ - longDesc: () => LocalizedString - options: { - sku: { + cursor: { /** - * Product SKU + * Pagination Cursor */ displayName: () => LocalizedString /** - * Stock Keeping Unit identifier for the product + * Navigate through pages of results */ shortDesc: () => LocalizedString /** - * A unique alphanumeric identifier assigned to a product for inventory tracking and management purposes. The SKU helps in identifying specific product variations including size, color, and other attributes. + * Use a cursor to paginate through large sets of search results. */ longDesc: () => LocalizedString } } } - quoteCartRepositoryV1GetListGet: { - groups: { - /** - * Shopping Carts - */ - '0': () => LocalizedString - } + 'find-customer': { /** - * List Shopping Carts + * Find Customers */ displayName: () => LocalizedString /** - * Retrieve a list of active shopping carts + * Search for customers */ shortDesc: () => LocalizedString /** - * Returns a collection of active shopping carts that match the specified search criteria. Results can be filtered by customer ID, creation date, and cart status. Each cart includes items, applied coupons, and shipping/billing information if available. + * Search and filter customers in your Shopify store based on names, emails, or other attributes. */ longDesc: () => LocalizedString options: { - 'searchCriteria[filterGroups][0][filters][0][field]': { + query: { /** - * Filter Field + * Search Query */ displayName: () => LocalizedString /** - * Field to filter by + * Search by name or email */ shortDesc: () => LocalizedString /** - * Specifies which product field to apply the filter condition to + * Search for customers by their name, email, or other identifying information. */ longDesc: () => LocalizedString } - 'searchCriteria[filterGroups][0][filters][0][value]': { + limit: { /** - * Filter Value + * Results Limit */ displayName: () => LocalizedString /** - * Value to filter with + * Maximum number of results */ shortDesc: () => LocalizedString /** - * The value to match against the specified field + * Specify the maximum number of customers to return in the search results. */ longDesc: () => LocalizedString } - 'searchCriteria[filterGroups][0][filters][0][conditionType]': { + cursor: { /** - * Filter Condition + * Pagination Cursor */ displayName: () => LocalizedString /** - * Type of comparison to use + * Navigate through pages of results */ shortDesc: () => LocalizedString /** - * Condition type for the filter (eq, neq, like, gt, lt, etc.) + * Use a cursor to paginate through large sets of search results. */ longDesc: () => LocalizedString } - 'searchCriteria[sortOrders][0][field]': { + sortKey: { /** - * Sort Field + * Sort By */ displayName: () => LocalizedString /** - * Field to sort by + * Sort the results */ shortDesc: () => LocalizedString /** - * Specifies which product field to use for sorting the results + * Choose how to order the results (e.g., by name, date created, total spent). */ longDesc: () => LocalizedString } - 'searchCriteria[sortOrders][0][direction]': { + reverse: { /** - * Sort Direction + * Reverse Order */ displayName: () => LocalizedString /** - * Direction to sort in + * Reverse the sort order */ shortDesc: () => LocalizedString /** - * Determines whether to sort in ascending or descending order + * Toggle between ascending and descending sort order for the results. */ longDesc: () => LocalizedString } - 'searchCriteria[pageSize]': { + } + } + 'find-variant': { + /** + * Find Product Variants + */ + displayName: () => LocalizedString + /** + * Search for specific product variants + */ + shortDesc: () => LocalizedString + /** + * Search and filter product variants in your Shopify store based on criteria like SKU, barcode, price, or inventory status. + */ + longDesc: () => LocalizedString + options: { + productId: { /** - * Page Size + * Product ID */ displayName: () => LocalizedString /** - * Number of results per page + * Filter by parent product */ shortDesc: () => LocalizedString /** - * Specifies how many items to return in a single result set + * Find variants that belong to a specific parent product using its Shopify product ID. */ longDesc: () => LocalizedString } - 'searchCriteria[currentPage]': { + title: { /** - * Current Page + * Variant Title */ displayName: () => LocalizedString /** - * Page number to return + * Search by variant title */ shortDesc: () => LocalizedString /** - * Specifies which page of results to return + * Filter variants by matching text in their titles or option values. */ longDesc: () => LocalizedString } - } - } - salesOrderRepositoryV1GetGet: { - groups: { - /** - * Orders - */ - '0': () => LocalizedString - } - /** - * Get Order Details - */ - displayName: () => LocalizedString - /** - * Retrieve detailed information about a specific order - */ - shortDesc: () => LocalizedString - /** - * Retrieves comprehensive information about a specific order by ID. Includes order items, billing and shipping addresses, payment information, applied discounts, and order status history. Useful for order processing and customer service inquiries. - */ - longDesc: () => LocalizedString - } - salesOrderRepositoryV1GetListGet: { - groups: { - /** - * Orders - */ - '0': () => LocalizedString - } - /** - * List Orders - */ - displayName: () => LocalizedString - /** - * Retrieve a list of orders based on search criteria - */ - shortDesc: () => LocalizedString - /** - * Returns a collection of orders that match the specified search criteria. Results can be filtered by customer, status, date range, and total amount. Supports pagination and sorting to efficiently browse large order volumes. - */ - longDesc: () => LocalizedString - options: { - 'searchCriteria[filterGroups][0][filters][0][field]': { + sku: { /** - * Filter Field + * SKU */ displayName: () => LocalizedString /** - * Field to filter by + * Search by variant SKU */ shortDesc: () => LocalizedString /** - * Specifies which product field to apply the filter condition to + * Look up variants using their Stock Keeping Unit (SKU) identifier. */ longDesc: () => LocalizedString } - 'searchCriteria[filterGroups][0][filters][0][value]': { + barcode: { /** - * Filter Value + * Barcode */ displayName: () => LocalizedString /** - * Value to filter with + * Search by barcode */ shortDesc: () => LocalizedString /** - * The value to match against the specified field + * Find variants using their UPC, ISBN, or other barcode identifiers. */ longDesc: () => LocalizedString } - 'searchCriteria[filterGroups][0][filters][0][conditionType]': { + id: { /** - * Filter Condition + * Variant ID */ displayName: () => LocalizedString /** - * Type of comparison to use + * Search by variant ID */ shortDesc: () => LocalizedString /** - * Condition type for the filter (eq, neq, like, gt, lt, etc.) + * Look up a specific variant using its unique Shopify variant ID. */ longDesc: () => LocalizedString } - 'searchCriteria[sortOrders][0][field]': { + inventoryQuantity: { /** - * Sort Field + * Inventory Quantity */ displayName: () => LocalizedString /** - * Field to sort by + * Filter by inventory quantity */ shortDesc: () => LocalizedString /** - * Specifies which product field to use for sorting the results + * Find variants based on their exact inventory quantity or range (e.g., "inventory_quantity:10" or "inventory_quantity:>5"). */ longDesc: () => LocalizedString } - 'searchCriteria[sortOrders][0][direction]': { + productStatus: { /** - * Sort Direction + * Product Status */ displayName: () => LocalizedString /** - * Direction to sort in + * Filter by product status */ shortDesc: () => LocalizedString /** - * Determines whether to sort in ascending or descending order + * Find variants based on whether their parent product is active, draft, or archived. */ longDesc: () => LocalizedString } - 'searchCriteria[pageSize]': { + productType: { /** - * Page Size + * Product Type */ displayName: () => LocalizedString /** - * Number of results per page + * Filter by product type */ shortDesc: () => LocalizedString /** - * Specifies how many items to return in a single result set + * Find variants belonging to products of a specific type or category. */ longDesc: () => LocalizedString } - 'searchCriteria[currentPage]': { + tag: { /** - * Current Page + * Product Tag */ displayName: () => LocalizedString /** - * Page number to return + * Filter by product tag */ shortDesc: () => LocalizedString /** - * Specifies which page of results to return + * Find variants belonging to products that have a specific tag. */ longDesc: () => LocalizedString } - } - } - salesShipmentRepositoryV1SavePost: { - groups: { - /** - * Shipments - */ - '0': () => LocalizedString - } - /** - * Create Shipment - */ - displayName: () => LocalizedString - /** - * Creates a new shipment for an order - */ - shortDesc: () => LocalizedString - /** - * Creates a new shipment record for an existing order, allowing you to document and track the physical sending of order items to the customer. Includes options for specifying tracking numbers, shipping carriers, and shipped items with their quantities. - */ - longDesc: () => LocalizedString - } - salesInvoiceRepositoryV1SavePost: { - groups: { - /** - * Invoices - */ - '0': () => LocalizedString - } - /** - * Create Invoice - */ - displayName: () => LocalizedString - /** - * Creates a new invoice for an order - */ - shortDesc: () => LocalizedString - /** - * Creates a new invoice record for an existing order, documenting the financial transaction and payment request. Allows for specifying line items to be invoiced, payment details, and comments that will appear on the customer's invoice. - */ - longDesc: () => LocalizedString - } - salesOrderRepositoryV1SavePut: { - groups: { - /** - * Orders - */ - '0': () => LocalizedString - } - /** - * Create Order - */ - displayName: () => LocalizedString - /** - * Persists order information to the system - */ - shortDesc: () => LocalizedString - /** - * Performs persist operations for a specified order. Saves the order data to the database, including customer information, line items, payment details, shipping information, and other relevant order metadata. - */ - longDesc: () => LocalizedString - } - salesOrderManagementV1AddCommentPost: { - groups: { - /** - * Orders - */ - '0': () => LocalizedString - } - /** - * Add Order Comment - */ - displayName: () => LocalizedString - /** - * Append a comment to an existing order - */ - shortDesc: () => LocalizedString - /** - * Adds a comment to the order history. Comments can be internal (visible only to administrators) or customer-visible. Each comment is timestamped and attributed to the author. Useful for documenting order processing steps and customer communications. - */ - longDesc: () => LocalizedString - options: { - id: { + tagNot: { /** - * Order ID + * Exclude Tag */ displayName: () => LocalizedString /** - * The ID of the order to which the comment will be added + * Filter out products with tag */ shortDesc: () => LocalizedString /** - * The ID of the order to which the comment will be added + * Find variants belonging to products that do not have a specific tag. */ longDesc: () => LocalizedString } - } - } - salesOrderManagementV1GetCommentsListGet: { - groups: { - /** - * Orders - */ - '0': () => LocalizedString - } - /** - * Get Order Comments - */ - displayName: () => LocalizedString - /** - * Retrieve the comment history for an order - */ - shortDesc: () => LocalizedString - /** - * Returns the complete comment history for a specific order. Results include comment text, timestamp, author information, and visibility status (customer-visible or admin-only). Comments are returned in chronological order. - */ - longDesc: () => LocalizedString - } - salesInvoiceRepositoryV1GetListGet: { - groups: { - /** - * Invoices - */ - '0': () => LocalizedString - } - /** - * List Invoices - */ - displayName: () => LocalizedString - /** - * Retrieve a collection of invoices - */ - shortDesc: () => LocalizedString - /** - * Returns a list of invoices based on specified search criteria. Results can be filtered by order ID, customer, date, and amount. Each invoice includes line items, payment information, and related order details. Supports pagination and sorting. - */ - longDesc: () => LocalizedString - options: { - 'searchCriteria[filterGroups][0][filters][0][field]': { + vendor: { /** - * Filter Field + * Vendor */ displayName: () => LocalizedString /** - * Field to filter by + * Filter by vendor or supplier */ shortDesc: () => LocalizedString /** - * Specifies which product field to apply the filter condition to + * Find variants belonging to products from a specific vendor or supplier. */ longDesc: () => LocalizedString } - 'searchCriteria[filterGroups][0][filters][0][value]': { + collection: { /** - * Filter Value + * Collection */ displayName: () => LocalizedString /** - * Value to filter with + * Filter by collection */ shortDesc: () => LocalizedString /** - * The value to match against the specified field + * Find variants belonging to products in a specific collection using the collection ID. */ longDesc: () => LocalizedString } - 'searchCriteria[filterGroups][0][filters][0][conditionType]': { + option1: { /** - * Filter Condition + * Option 1 */ displayName: () => LocalizedString /** - * Type of comparison to use + * Filter by first option */ shortDesc: () => LocalizedString /** - * Condition type for the filter (eq, neq, like, gt, lt, etc.) + * Find variants with a specific value for their first option (e.g., Size, Color). */ longDesc: () => LocalizedString } - 'searchCriteria[sortOrders][0][field]': { + option2: { /** - * Sort Field + * Option 2 */ displayName: () => LocalizedString /** - * Field to sort by + * Filter by second option */ shortDesc: () => LocalizedString /** - * Specifies which product field to use for sorting the results + * Find variants with a specific value for their second option. */ longDesc: () => LocalizedString } - 'searchCriteria[sortOrders][0][direction]': { + option3: { /** - * Sort Direction + * Option 3 */ displayName: () => LocalizedString /** - * Direction to sort in + * Filter by third option */ shortDesc: () => LocalizedString /** - * Determines whether to sort in ascending or descending order + * Find variants with a specific value for their third option. */ longDesc: () => LocalizedString } - 'searchCriteria[pageSize]': { + taxable: { /** - * Page Size + * Taxable */ displayName: () => LocalizedString /** - * Number of results per page + * Filter by tax status */ shortDesc: () => LocalizedString /** - * Specifies how many items to return in a single result set + * Find variants based on whether they are taxable or non-taxable. */ longDesc: () => LocalizedString } - 'searchCriteria[currentPage]': { + updatedAt: { /** - * Current Page + * Updated At */ displayName: () => LocalizedString /** - * Page number to return + * Filter by update time */ shortDesc: () => LocalizedString /** - * Specifies which page of results to return + * Find variants based on when they were last updated (e.g., "updated_at:>2023-01-01" or "updated_at: LocalizedString } - } - } - salesShipmentRepositoryV1GetListGet: { - groups: { - /** - * Shipments - */ - '0': () => LocalizedString - } - /** - * List Shipments - */ - displayName: () => LocalizedString - /** - * Retrieve a collection of order shipments - */ - shortDesc: () => LocalizedString - /** - * Returns a list of shipments based on specified search criteria. Results can be filtered by order ID, customer, creation date, and tracking information. Each shipment includes items shipped, quantities, tracking numbers, and carrier information. - */ - longDesc: () => LocalizedString - options: { - 'searchCriteria[filterGroups][0][filters][0][field]': { + rawQuery: { + /** + * Advanced Query + */ + displayName: () => LocalizedString + /** + * Use custom search syntax + */ + shortDesc: () => LocalizedString + /** + * Enter a custom search query for advanced filtering using Shopify search syntax. + */ + longDesc: () => LocalizedString + } + sortKey: { /** - * Filter Field + * Sort By */ displayName: () => LocalizedString /** - * Field to filter by + * Order results by field */ shortDesc: () => LocalizedString /** - * Specifies which product field to apply the filter condition to + * Specify which field to use for sorting the results. */ longDesc: () => LocalizedString } - 'searchCriteria[filterGroups][0][filters][0][value]': { + reverse: { /** - * Filter Value + * Reverse Order */ displayName: () => LocalizedString /** - * Value to filter with + * Reverse the sort order */ shortDesc: () => LocalizedString /** - * The value to match against the specified field + * When enabled, reverses the order of the results (e.g., Z-A instead of A-Z). */ longDesc: () => LocalizedString } - 'searchCriteria[filterGroups][0][filters][0][conditionType]': { + limit: { /** - * Filter Condition + * Results Limit */ displayName: () => LocalizedString /** - * Type of comparison to use + * Maximum number of results */ shortDesc: () => LocalizedString /** - * Condition type for the filter (eq, neq, like, gt, lt, etc.) + * Specify the maximum number of variants to return in the search results (max: 250). */ longDesc: () => LocalizedString } - 'searchCriteria[sortOrders][0][field]': { + cursor: { /** - * Sort Field + * Pagination Cursor */ displayName: () => LocalizedString /** - * Field to sort by + * Navigate through pages of results */ shortDesc: () => LocalizedString /** - * Specifies which product field to use for sorting the results + * Use a cursor to paginate through large sets of search results. */ longDesc: () => LocalizedString } - 'searchCriteria[sortOrders][0][direction]': { + } + } + 'add-line-item-to-order': { + /** + * Add Line Item to Order + */ + displayName: () => LocalizedString + /** + * Add a new product line to an existing order + */ + shortDesc: () => LocalizedString + /** + * Allows adding a new line item to an existing order, with options for quantity, pricing, and other product details + */ + longDesc: () => LocalizedString + options: { + orderId: { /** - * Sort Direction + * Order ID */ displayName: () => LocalizedString /** - * Direction to sort in + * Unique identifier of the order */ shortDesc: () => LocalizedString /** - * Determines whether to sort in ascending or descending order + * The specific order to which the line item will be added */ longDesc: () => LocalizedString } - 'searchCriteria[pageSize]': { + type: { /** - * Page Size + * Line Item Type */ displayName: () => LocalizedString /** - * Number of results per page + * Type of line item being added */ shortDesc: () => LocalizedString /** - * Specifies how many items to return in a single result set + * Specifies the nature of the line item (e.g., product, shipping, tax) */ longDesc: () => LocalizedString } - 'searchCriteria[currentPage]': { + quantity: { /** - * Current Page + * Quantity */ displayName: () => LocalizedString /** - * Page number to return + * Number of items to add */ shortDesc: () => LocalizedString /** - * Specifies which page of results to return + * The quantity of the specific product being added to the order */ longDesc: () => LocalizedString } - } - } - salesTransactionRepositoryV1GetListGet: { - groups: { - /** - * Payments - */ - '0': () => LocalizedString - } - /** - * List Payment Transactions - */ - displayName: () => LocalizedString - /** - * Retrieve a collection of payment transactions - */ - shortDesc: () => LocalizedString - /** - * Returns a list of payment transactions based on specified search criteria. Results can be filtered by order ID, payment method, transaction type, and status. Each transaction includes amount, status, and related payment gateway information. - */ - longDesc: () => LocalizedString - options: { - 'searchCriteria[filterGroups][0][filters][0][field]': { + locationId: { /** - * Filter Field + * Location ID */ displayName: () => LocalizedString /** - * Field to filter by + * Inventory location */ shortDesc: () => LocalizedString /** - * Specifies which product field to apply the filter condition to + * The specific warehouse or store location where the item is stocked */ longDesc: () => LocalizedString } - 'searchCriteria[filterGroups][0][filters][0][value]': { + reason: { /** - * Filter Value + * Reason */ displayName: () => LocalizedString /** - * Value to filter with + * Reason for adding line item */ shortDesc: () => LocalizedString /** - * The value to match against the specified field + * Explanation for why the line item is being added to the order */ longDesc: () => LocalizedString } - 'searchCriteria[filterGroups][0][filters][0][conditionType]': { + notifyCustomer: { /** - * Filter Condition + * Notify Customer */ displayName: () => LocalizedString /** - * Type of comparison to use + * Send notification about order change */ shortDesc: () => LocalizedString /** - * Condition type for the filter (eq, neq, like, gt, lt, etc.) + * Determines whether the customer should be notified about the line item addition */ longDesc: () => LocalizedString } - 'searchCriteria[sortOrders][0][field]': { + variantId: { /** - * Sort Field + * Variant ID */ displayName: () => LocalizedString /** - * Field to sort by + * Specific product variant */ shortDesc: () => LocalizedString /** - * Specifies which product field to use for sorting the results + * Unique identifier for the specific product variant being added */ longDesc: () => LocalizedString } - 'searchCriteria[sortOrders][0][direction]': { + allowDuplicates: { /** - * Sort Direction + * Allow Duplicates */ displayName: () => LocalizedString /** - * Direction to sort in + * Permit duplicate line items */ shortDesc: () => LocalizedString /** - * Determines whether to sort in ascending or descending order + * Whether identical line items can be added multiple times to the order */ longDesc: () => LocalizedString } - 'searchCriteria[pageSize]': { + itemName: { /** - * Page Size + * Item Name */ displayName: () => LocalizedString /** - * Number of results per page + * Name of the product */ shortDesc: () => LocalizedString /** - * Specifies how many items to return in a single result set + * The display name or title of the product being added */ longDesc: () => LocalizedString } - 'searchCriteria[currentPage]': { + price: { /** - * Current Page + * Price */ displayName: () => LocalizedString /** - * Page number to return + * Price of the line item */ shortDesc: () => LocalizedString /** - * Specifies which page of results to return + * The unit price of the product being added to the order */ longDesc: () => LocalizedString } - } - } - rmaRmaRepositoryV1DeleteDelete: { - groups: { - /** - * Returns & RMAs - */ - '0': () => LocalizedString - } - /** - * Delete Return Request - */ - displayName: () => LocalizedString - /** - * Remove a Return Merchandise Authorization (RMA) - */ - shortDesc: () => LocalizedString - /** - * Permanently deletes a Return Merchandise Authorization (RMA) request from the system. This operation cannot be undone and removes all associated return information including submitted items, reason codes, and processing history. - */ - longDesc: () => LocalizedString - } - rmaRmaManagementV1SaveRmaPost: { - groups: { - /** - * Returns & RMAs - */ - '0': () => LocalizedString - } - /** - * Create Return Request - */ - displayName: () => LocalizedString - /** - * Submit a new Return Merchandise Authorization (RMA) - */ - shortDesc: () => LocalizedString - /** - * Creates a new Return Merchandise Authorization (RMA) request for an existing order. The request includes items to be returned, quantities, reason codes, and customer comments. Additional documentation such as images can be attached to support the return request. - */ - longDesc: () => LocalizedString - } - rmaRmaManagementV1SearchGet: { - groups: { - /** - * Returns & RMAs - */ - '0': () => LocalizedString - } - /** - * Search Return Requests - */ - displayName: () => LocalizedString - /** - * Find Return Merchandise Authorizations (RMAs) - */ - shortDesc: () => LocalizedString - /** - * Searches for Return Merchandise Authorization (RMA) requests based on specified criteria. Results can be filtered by order ID, customer, status, and date range. Each RMA includes return items, processing status, and communication history. - */ - longDesc: () => LocalizedString - } - } - triggers: { - 'customer-created-or-updated': { - /** - * Customer Created or Updated - */ - displayName: () => LocalizedString - /** - * Triggers when a customer is created or updated in Magento - */ - shortDesc: () => LocalizedString - /** - * This trigger activates when a new customer is created in your Magento store or when an existing customer's information is updated. - */ - longDesc: () => LocalizedString - options: { - activationCriteria: { + currency: { /** - * Activation Criteria + * Currency */ displayName: () => LocalizedString /** - * Specify when this trigger should activate + * Currency of the price */ shortDesc: () => LocalizedString /** - * Select whether this trigger should activate on customer creation or on customer updates. + * The currency in which the price is specified */ longDesc: () => LocalizedString } - } - } - 'invoice-created-or-updated': { - /** - * Invoice Created or Updated - */ - displayName: () => LocalizedString - /** - * Triggers when an invoice is created or updated in Magento - */ - shortDesc: () => LocalizedString - /** - * This trigger activates when a new invoice is generated in your Magento store or when an existing invoice is modified. - */ - longDesc: () => LocalizedString - options: { - activationCriteria: { + isTaxable: { /** - * Activation Criteria + * Is Taxable */ displayName: () => LocalizedString /** - * Specify when this trigger should activate + * Whether item is subject to tax */ shortDesc: () => LocalizedString /** - * Select whether this trigger should activate on invoice creation or on invoice updates. + * Indicates if the line item should have tax applied */ longDesc: () => LocalizedString } - } - } - 'product-created-or-updated': { - /** - * Product Created or Updated - */ - displayName: () => LocalizedString - /** - * Triggers when a product is created or updated in Magento - */ - shortDesc: () => LocalizedString - /** - * This trigger activates when a new product is added to your Magento catalog or when an existing product's information is modified. - */ - longDesc: () => LocalizedString - options: { - activationCriteria: { + isPhysical: { /** - * Activation Criteria + * Is Physical */ displayName: () => LocalizedString /** - * Specify when this trigger should activate + * Physical vs digital product */ shortDesc: () => LocalizedString /** - * Select whether this trigger should activate on product creation or on product updates. + * Specifies whether the item is a physical product requiring shipping */ longDesc: () => LocalizedString } } } - 'order-created': { - /** - * Order Created - */ - displayName: () => LocalizedString - /** - * Triggers when a new order is placed in Magento - */ - shortDesc: () => LocalizedString - /** - * This trigger activates when a customer completes the checkout process and places a new order in your Magento store. - */ - longDesc: () => LocalizedString - } - 'shipment-created': { - /** - * Shipment Created - */ - displayName: () => LocalizedString - /** - * Triggers when a new shipment is created in Magento - */ - shortDesc: () => LocalizedString - /** - * This trigger activates when a new shipment is created for an order in your Magento store, indicating that products have been shipped to the customer. - */ - longDesc: () => LocalizedString - } - } - } - Shopify: { - /** - * Shopify - */ - displayName: () => LocalizedString - groups: { - /** - * E-commerce Platforms - */ - '0': () => LocalizedString - } - /** - * E-commerce platform for online stores and retail point of sale - */ - shortDesc: () => LocalizedString - /** - * Shopify is a comprehensive commerce platform that allows businesses to start, grow, and manage an online store, sell in multiple places, and synchronize online and in-person sales. - */ - longDesc: () => LocalizedString - actions: { - 'find-product': { + 'create-gift-card': { /** - * Find Products + * Create Gift Card */ displayName: () => LocalizedString /** - * Search for products in your store + * Generate a new gift card */ shortDesc: () => LocalizedString /** - * Search and filter products in your Shopify store based on various criteria including title, vendor, product type, and more. + * Create a gift card with customizable parameters like initial value, expiration, and recipient details */ longDesc: () => LocalizedString options: { - titleQuery: { + initialValue: { /** - * Title + * Initial Value */ displayName: () => LocalizedString /** - * Search by product title + * Starting balance of gift card */ shortDesc: () => LocalizedString /** - * Filter products by matching text in their titles. Supports partial matches. + * The initial monetary amount loaded onto the gift card */ longDesc: () => LocalizedString } - vendorQuery: { + customerId: { /** - * Vendor + * Customer ID */ displayName: () => LocalizedString /** - * Filter by product vendor + * ID of gift card recipient */ shortDesc: () => LocalizedString /** - * Find products from specific vendors or suppliers in your store. + * The unique identifier of the customer receiving the gift card */ longDesc: () => LocalizedString } - productTypeQuery: { + note: { /** - * Product Type + * Note */ displayName: () => LocalizedString /** - * Filter by product type + * Additional gift card information */ shortDesc: () => LocalizedString /** - * Search for products based on their assigned product type category. + * A personal message or additional details about the gift card */ longDesc: () => LocalizedString } - tagQuery: { + expiresOn: { /** - * Tags + * Expiration Date */ displayName: () => LocalizedString /** - * Search by product tags + * Date when gift card expires */ shortDesc: () => LocalizedString /** - * Find products that have been tagged with specific keywords or labels. + * The date after which the gift card will no longer be valid */ longDesc: () => LocalizedString } - skuQuery: { + code: { /** - * SKU + * Gift Card Code */ displayName: () => LocalizedString /** - * Search by product SKU + * Unique gift card identifier */ shortDesc: () => LocalizedString /** - * Look up products using their Stock Keeping Unit (SKU) identifier. + * The specific code used to redeem the gift card */ longDesc: () => LocalizedString } - barcodeQuery: { + templateSuffix: { /** - * Barcode + * Template Suffix */ displayName: () => LocalizedString /** - * Search by barcode + * Customization of gift card template */ shortDesc: () => LocalizedString /** - * Find products using their UPC, ISBN, or other barcode identifiers. + * Optional suffix to customize the gift card's appearance or template */ longDesc: () => LocalizedString } - productIdQuery: { + recipientAttributes: { /** - * Product ID + * Recipient Attributes */ displayName: () => LocalizedString /** - * Search by product ID + * Details about gift card recipient */ shortDesc: () => LocalizedString /** - * Look up a specific product using its unique Shopify product ID. + * Additional information about the person receiving the gift card */ longDesc: () => LocalizedString + type: { + fields: { + id: { + /** + * Recipient ID + */ + displayName: () => LocalizedString + /** + * Unique identifier for recipient + */ + shortDesc: () => LocalizedString + /** + * A unique identifier for the gift card recipient + */ + longDesc: () => LocalizedString + } + message: { + /** + * Recipient Message + */ + displayName: () => LocalizedString + /** + * Personal message to recipient + */ + shortDesc: () => LocalizedString + /** + * A personalized message to accompany the gift card + */ + longDesc: () => LocalizedString + } + preferredName: { + /** + * Preferred Name + */ + displayName: () => LocalizedString + /** + * Recipient's preferred name + */ + shortDesc: () => LocalizedString + /** + * The name the recipient prefers to be called + */ + longDesc: () => LocalizedString + } + sendNotificationAt: { + /** + * Notification Timing + */ + displayName: () => LocalizedString + /** + * When to send gift card notification + */ + shortDesc: () => LocalizedString + /** + * The specific time or date to send the gift card notification + */ + longDesc: () => LocalizedString + } + } + } } - collectionIdQuery: { + } + } + 'create-fulfillment': { + /** + * Create Fulfillment + */ + displayName: () => LocalizedString + /** + * Process and ship an order + */ + shortDesc: () => LocalizedString + /** + * Create a fulfillment for an order, handling shipping and tracking information + */ + longDesc: () => LocalizedString + options: { + fulfillmentOrderId: { /** - * Collection + * Fulfillment Order ID */ displayName: () => LocalizedString /** - * Filter by collection ID + * Unique fulfillment order identifier */ shortDesc: () => LocalizedString /** - * Find products that belong to a specific collection in your store. + * The specific fulfillment order being processed */ longDesc: () => LocalizedString } - sortKey: { + fulfillmentOrderLineItems: { /** - * Sort By + * Fulfillment Order Line Items */ displayName: () => LocalizedString /** - * Sort the results + * Items in the fulfillment order */ shortDesc: () => LocalizedString /** - * Choose how to order the results (e.g., by title, price, created date). + * Specific line items within the fulfillment order */ longDesc: () => LocalizedString + type: { + element_type: { + fields: { + id: { + /** + * Line Item ID + */ + displayName: () => LocalizedString + /** + * Unique identifier for line item + */ + shortDesc: () => LocalizedString + /** + * The specific identifier for an individual line item + */ + longDesc: () => LocalizedString + } + quantity: { + /** + * Quantity + */ + displayName: () => LocalizedString + /** + * Number of items to fulfill + */ + shortDesc: () => LocalizedString + /** + * The quantity of the specific item being fulfilled + */ + longDesc: () => LocalizedString + } + } + } + } } - reverse: { + notifyCustomer: { /** - * Reverse Order + * Notify Customer */ displayName: () => LocalizedString /** - * Reverse the sort order + * Send shipping notification */ shortDesc: () => LocalizedString /** - * Toggle between ascending and descending sort order for the results. + * Determines whether to send a notification to the customer about the fulfillment */ longDesc: () => LocalizedString } - rawQuery: { + trackingInfo: { /** - * Advanced Query + * Tracking Information */ displayName: () => LocalizedString /** - * Use custom search syntax + * Shipping tracking details */ shortDesc: () => LocalizedString /** - * Enter a custom search query for advanced filtering using Shopify search syntax. + * Information for tracking the shipment */ longDesc: () => LocalizedString + type: { + fields: { + number: { + /** + * Tracking Number + */ + displayName: () => LocalizedString + /** + * Shipment tracking number + */ + shortDesc: () => LocalizedString + /** + * The unique identifier for tracking the shipment + */ + longDesc: () => LocalizedString + } + url: { + /** + * Tracking URL + */ + displayName: () => LocalizedString + /** + * Link to track shipment + */ + shortDesc: () => LocalizedString + /** + * The web address where the shipment can be tracked + */ + longDesc: () => LocalizedString + } + company: { + /** + * Shipping Company + */ + displayName: () => LocalizedString + /** + * Name of shipping carrier + */ + shortDesc: () => LocalizedString + /** + * The name of the company responsible for shipping + */ + longDesc: () => LocalizedString + } + } + } } - limit: { + message: { /** - * Results Limit + * Message */ displayName: () => LocalizedString /** - * Maximum number of results + * Additional fulfillment notes */ shortDesc: () => LocalizedString /** - * Specify the maximum number of products to return in the search results. + * Any additional information or notes about the fulfillment */ longDesc: () => LocalizedString } - cursor: { + originAddress: { /** - * Pagination Cursor + * Origin Address */ displayName: () => LocalizedString /** - * Navigate through pages of results + * Shipping origin location */ shortDesc: () => LocalizedString /** - * Use a cursor to paginate through large sets of search results. + * The address from which the items are being shipped */ longDesc: () => LocalizedString + type: { + fields: { + address1: { + /** + * Address Line 1 + */ + displayName: () => LocalizedString + /** + * Primary address line + */ + shortDesc: () => LocalizedString + /** + * The first line of the shipping origin address + */ + longDesc: () => LocalizedString + } + address2: { + /** + * Address Line 2 + */ + displayName: () => LocalizedString + /** + * Secondary address line + */ + shortDesc: () => LocalizedString + /** + * Optional additional address information + */ + longDesc: () => LocalizedString + } + city: { + /** + * City + */ + displayName: () => LocalizedString + /** + * City of origin + */ + shortDesc: () => LocalizedString + /** + * The city from which the shipment originates + */ + longDesc: () => LocalizedString + } + countryCode: { + /** + * Country Code + */ + displayName: () => LocalizedString + /** + * Origin country code + */ + shortDesc: () => LocalizedString + /** + * The two-letter country code for the shipping origin + */ + longDesc: () => LocalizedString + } + provinceCode: { + /** + * Province Code + */ + displayName: () => LocalizedString + /** + * State or province code + */ + shortDesc: () => LocalizedString + /** + * The code representing the state or province of origin + */ + longDesc: () => LocalizedString + } + zip: { + /** + * Postal Code + */ + displayName: () => LocalizedString + /** + * Origin postal code + */ + shortDesc: () => LocalizedString + /** + * The postal code of the shipping origin + */ + longDesc: () => LocalizedString + } + } + } } } } - 'find-order': { + 'create-draft-order': { /** - * Find Orders + * Create Draft Order */ displayName: () => LocalizedString /** - * Search for customer orders + * Creates a new draft order in Shopify */ shortDesc: () => LocalizedString /** - * Search and filter orders in your Shopify store based on various criteria including customer name, email, order number, and more. + * Generates a draft order that can be used to create an order manually, send invoices, or process payments later. Draft orders are useful for custom sales, wholesale orders, or pre-orders. */ longDesc: () => LocalizedString options: { - name: { + customerId: { /** - * Order Number + * Customer ID */ displayName: () => LocalizedString /** - * Search by order number + * The ID of the customer for the draft order */ shortDesc: () => LocalizedString /** - * Look up orders using their confirmation or order number. + * Specifies the unique identifier of the customer to associate with this draft order. Required if not using default address. */ longDesc: () => LocalizedString } @@ -230883,957 +234810,2559 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Search by customer email - */ - shortDesc: () => LocalizedString - /** - * Find orders associated with a specific customer email address. - */ - longDesc: () => LocalizedString - } - customer_id: { - /** - * Customer ID - */ - displayName: () => LocalizedString - /** - * Filter by customer ID - */ - shortDesc: () => LocalizedString - /** - * Find all orders placed by a specific customer using their Shopify customer ID. - */ - longDesc: () => LocalizedString - } - confirmation_number: { - /** - * Confirmation Number - */ - displayName: () => LocalizedString - /** - * Search by confirmation number + * Customer email address */ shortDesc: () => LocalizedString /** - * Find orders by their unique confirmation number provided to customers. + * The email address of the customer, used for notifications and order confirmation. */ longDesc: () => LocalizedString } - id: { + phone: { /** - * Order ID + * Phone */ displayName: () => LocalizedString /** - * Search by order ID + * Customer phone number */ shortDesc: () => LocalizedString /** - * Look up a specific order using its unique Shopify order ID. + * The phone number of the customer, useful for shipping updates or contact purposes. */ longDesc: () => LocalizedString } - financial_status: { + note: { /** - * Payment Status + * Note */ displayName: () => LocalizedString /** - * Filter by payment status + * Additional notes for the draft order */ shortDesc: () => LocalizedString /** - * Find orders with a specific payment status (paid, pending, refunded, etc.). + * A field for adding internal notes about the draft order, such as special instructions or context. */ longDesc: () => LocalizedString } - fulfillment_status: { + taxExempt: { /** - * Fulfillment Status + * Tax Exempt */ displayName: () => LocalizedString /** - * Filter by shipping status + * Exempt order from taxes */ shortDesc: () => LocalizedString /** - * Find orders with a specific fulfillment status (fulfilled, unfulfilled, shipped, etc.). + * Indicates whether the entire order is exempt from taxes. Set to true for tax-exempt customers. */ longDesc: () => LocalizedString } - status: { + taxExemptions: { /** - * Order Status + * Tax Exemptions */ displayName: () => LocalizedString /** - * Filter by order status + * Specific tax exemptions */ shortDesc: () => LocalizedString /** - * Find orders based on their overall status (open, closed, cancelled). + * List of specific tax exemptions applied to the draft order, such as regional or product-specific exemptions. */ longDesc: () => LocalizedString + type: { + element_type: { + /** + * Tax Exemption Type + */ + displayName: () => LocalizedString + /** + * Type of tax exemption + */ + shortDesc: () => LocalizedString + /** + * Defines the specific tax exemption applied, e.g., GST, VAT, or sales tax. + */ + longDesc: () => LocalizedString + } + } } - source_name: { + tags: { /** - * Source + * Tags */ displayName: () => LocalizedString /** - * Filter by order source + * Tags for the draft order */ shortDesc: () => LocalizedString /** - * Find orders from specific sources (e.g., web, draft orders, POS). + * A list of tags to categorize or filter the draft order, e.g., "wholesale", "pre-order". */ longDesc: () => LocalizedString + type: { + element_type: { + /** + * Tag + */ + displayName: () => LocalizedString + /** + * Single tag value + */ + shortDesc: () => LocalizedString + /** + * A single string value used to tag the draft order for organization or search purposes. + */ + longDesc: () => LocalizedString + } + } } - sales_channel: { + shippingAddress: { /** - * Sales Channel + * Shipping Address */ displayName: () => LocalizedString /** - * Filter by sales channel + * Customer shipping address */ shortDesc: () => LocalizedString /** - * Find orders from specific sales channels configured in your Shopify store. + * The full shipping address where the order will be delivered, including all relevant fields. */ longDesc: () => LocalizedString + type: { + fields: { + address1: { + /** + * Address Line 1 + */ + displayName: () => LocalizedString + /** + * Primary address line + */ + shortDesc: () => LocalizedString + /** + * The street address or PO Box for shipping. + */ + longDesc: () => LocalizedString + } + address2: { + /** + * Address Line 2 + */ + displayName: () => LocalizedString + /** + * Secondary address line + */ + shortDesc: () => LocalizedString + /** + * Additional address information like apartment or suite number. + */ + longDesc: () => LocalizedString + } + city: { + /** + * City + */ + displayName: () => LocalizedString + /** + * Shipping city + */ + shortDesc: () => LocalizedString + /** + * The city for the shipping address. + */ + longDesc: () => LocalizedString + } + province: { + /** + * Province/State + */ + displayName: () => LocalizedString + /** + * Shipping province or state + */ + shortDesc: () => LocalizedString + /** + * The province, state, or region for the shipping address. + */ + longDesc: () => LocalizedString + } + country: { + /** + * Country + */ + displayName: () => LocalizedString + /** + * Shipping country + */ + shortDesc: () => LocalizedString + /** + * The country for the shipping address. + */ + longDesc: () => LocalizedString + } + zip: { + /** + * ZIP/Postal Code + */ + displayName: () => LocalizedString + /** + * Shipping postal code + */ + shortDesc: () => LocalizedString + /** + * The ZIP or postal code for the shipping address. + */ + longDesc: () => LocalizedString + } + firstName: { + /** + * First Name + */ + displayName: () => LocalizedString + /** + * Recipient first name + */ + shortDesc: () => LocalizedString + /** + * The first name of the shipping recipient. + */ + longDesc: () => LocalizedString + } + lastName: { + /** + * Last Name + */ + displayName: () => LocalizedString + /** + * Recipient last name + */ + shortDesc: () => LocalizedString + /** + * The last name of the shipping recipient. + */ + longDesc: () => LocalizedString + } + company: { + /** + * Company + */ + displayName: () => LocalizedString + /** + * Shipping company name + */ + shortDesc: () => LocalizedString + /** + * The company name associated with the shipping address, if applicable. + */ + longDesc: () => LocalizedString + } + phone: { + /** + * Phone + */ + displayName: () => LocalizedString + /** + * Shipping contact phone + */ + shortDesc: () => LocalizedString + /** + * The phone number for the shipping recipient. + */ + longDesc: () => LocalizedString + } + } + } } - sku: { + billingAddress: { /** - * Product SKU + * Billing Address */ displayName: () => LocalizedString /** - * Search by product SKU + * Customer billing address */ shortDesc: () => LocalizedString /** - * Find orders containing products with a specific SKU. + * The address used for billing purposes, which may differ from the shipping address. */ longDesc: () => LocalizedString + type: { + fields: { + address1: { + /** + * Address Line 1 + */ + displayName: () => LocalizedString + /** + * Primary billing address line + */ + shortDesc: () => LocalizedString + /** + * The street address or PO Box for billing. + */ + longDesc: () => LocalizedString + } + address2: { + /** + * Address Line 2 + */ + displayName: () => LocalizedString + /** + * Secondary billing address line + */ + shortDesc: () => LocalizedString + /** + * Additional billing address information like apartment or suite number. + */ + longDesc: () => LocalizedString + } + city: { + /** + * City + */ + displayName: () => LocalizedString + /** + * Billing city + */ + shortDesc: () => LocalizedString + /** + * The city for the billing address. + */ + longDesc: () => LocalizedString + } + province: { + /** + * Province/State + */ + displayName: () => LocalizedString + /** + * Billing province or state + */ + shortDesc: () => LocalizedString + /** + * The province, state, or region for the billing address. + */ + longDesc: () => LocalizedString + } + country: { + /** + * Country + */ + displayName: () => LocalizedString + /** + * Billing country + */ + shortDesc: () => LocalizedString + /** + * The country for the billing address. + */ + longDesc: () => LocalizedString + } + zip: { + /** + * ZIP/Postal Code + */ + displayName: () => LocalizedString + /** + * Billing postal code + */ + shortDesc: () => LocalizedString + /** + * The ZIP or postal code for the billing address. + */ + longDesc: () => LocalizedString + } + firstName: { + /** + * First Name + */ + displayName: () => LocalizedString + /** + * Billing first name + */ + shortDesc: () => LocalizedString + /** + * The first name of the billing contact. + */ + longDesc: () => LocalizedString + } + lastName: { + /** + * Last Name + */ + displayName: () => LocalizedString + /** + * Billing last name + */ + shortDesc: () => LocalizedString + /** + * The last name of the billing contact. + */ + longDesc: () => LocalizedString + } + company: { + /** + * Company + */ + displayName: () => LocalizedString + /** + * Billing company name + */ + shortDesc: () => LocalizedString + /** + * The company name associated with the billing address, if applicable. + */ + longDesc: () => LocalizedString + } + phone: { + /** + * Phone + */ + displayName: () => LocalizedString + /** + * Billing contact phone + */ + shortDesc: () => LocalizedString + /** + * The phone number for the billing contact. + */ + longDesc: () => LocalizedString + } + } + } } - created_at: { + useCustomerDefaultAddress: { /** - * Created Date + * Use Customer Default Address */ displayName: () => LocalizedString /** - * Filter by creation date + * Use customer’s default address */ shortDesc: () => LocalizedString /** - * Find orders created on a specific date or within a date range (e.g., 2021-01-01, LocalizedString } - updated_at: { + lineItems: { /** - * Updated Date + * Line Items */ displayName: () => LocalizedString /** - * Filter by last update date + * Products in the draft order */ shortDesc: () => LocalizedString /** - * Find orders last updated on a specific date or within a date range. + * A list of products or variants included in the draft order, with details like quantity and price. */ longDesc: () => LocalizedString + type: { + element_type: { + fields: { + variantId: { + /** + * Variant ID + */ + displayName: () => LocalizedString + /** + * Product variant ID + */ + shortDesc: () => LocalizedString + /** + * The unique identifier of the product variant to include in the order. + */ + longDesc: () => LocalizedString + } + quantity: { + /** + * Quantity + */ + displayName: () => LocalizedString + /** + * Number of items + */ + shortDesc: () => LocalizedString + /** + * The number of units of this variant to include in the draft order. + */ + longDesc: () => LocalizedString + } + title: { + /** + * Title + */ + displayName: () => LocalizedString + /** + * Item title + */ + shortDesc: () => LocalizedString + /** + * The display name of the line item, typically the product or variant name. + */ + longDesc: () => LocalizedString + } + originalUnitPrice: { + /** + * Original Unit Price + */ + displayName: () => LocalizedString + /** + * Price per unit + */ + shortDesc: () => LocalizedString + /** + * The original price per unit of the item before discounts. + */ + longDesc: () => LocalizedString + } + originalUnitPriceWithCurrency: { + /** + * Original Unit Price with Currency + */ + displayName: () => LocalizedString + /** + * Price with currency details + */ + shortDesc: () => LocalizedString + /** + * The original unit price including currency specification. + */ + longDesc: () => LocalizedString + type: { + fields: { + amount: { + /** + * Amount + */ + displayName: () => LocalizedString + /** + * Price amount + */ + shortDesc: () => LocalizedString + /** + * The numerical value of the unit price. + */ + longDesc: () => LocalizedString + } + currencyCode: { + /** + * Currency Code + */ + displayName: () => LocalizedString + /** + * Currency code + */ + shortDesc: () => LocalizedString + /** + * The ISO 4217 currency code for the price, e.g., USD, EUR. + */ + longDesc: () => LocalizedString + } + } + } + } + sku: { + /** + * SKU + */ + displayName: () => LocalizedString + /** + * Stock Keeping Unit + */ + shortDesc: () => LocalizedString + /** + * The stock keeping unit identifier for the product variant. + */ + longDesc: () => LocalizedString + } + requiresShipping: { + /** + * Requires Shipping + */ + displayName: () => LocalizedString + /** + * Needs shipping + */ + shortDesc: () => LocalizedString + /** + * Indicates if the item requires physical shipping. + */ + longDesc: () => LocalizedString + } + taxable: { + /** + * Taxable + */ + displayName: () => LocalizedString + /** + * Subject to tax + */ + shortDesc: () => LocalizedString + /** + * Specifies whether the item is taxable. + */ + longDesc: () => LocalizedString + } + weight: { + /** + * Weight + */ + displayName: () => LocalizedString + /** + * Item weight + */ + shortDesc: () => LocalizedString + /** + * The weight of the item, used for shipping calculations. + */ + longDesc: () => LocalizedString + type: { + fields: { + value: { + /** + * Weight Value + */ + displayName: () => LocalizedString + /** + * Numerical weight + */ + shortDesc: () => LocalizedString + /** + * The numerical value of the item’s weight. + */ + longDesc: () => LocalizedString + } + unit: { + /** + * Weight Unit + */ + displayName: () => LocalizedString + /** + * Unit of weight + */ + shortDesc: () => LocalizedString + /** + * The unit of measurement for the weight, e.g., kg, lb. + */ + longDesc: () => LocalizedString + } + } + } + } + customAttributes: { + /** + * Custom Attributes + */ + displayName: () => LocalizedString + /** + * Additional item attributes + */ + shortDesc: () => LocalizedString + /** + * Key-value pairs for adding custom metadata to the line item. + */ + longDesc: () => LocalizedString + type: { + element_type: { + fields: { + key: { + /** + * Key + */ + displayName: () => LocalizedString + /** + * Attribute key + */ + shortDesc: () => LocalizedString + /** + * The identifier for the custom attribute. + */ + longDesc: () => LocalizedString + } + value: { + /** + * Value + */ + displayName: () => LocalizedString + /** + * Attribute value + */ + shortDesc: () => LocalizedString + /** + * The value associated with the custom attribute key. + */ + longDesc: () => LocalizedString + } + } + } + } + } + appliedDiscount: { + /** + * Applied Discount + */ + displayName: () => LocalizedString + /** + * Discount on item + */ + shortDesc: () => LocalizedString + /** + * Details of any discount applied to this specific line item. + */ + longDesc: () => LocalizedString + type: { + fields: { + title: { + /** + * Discount Title + */ + displayName: () => LocalizedString + /** + * Discount name + */ + shortDesc: () => LocalizedString + /** + * The name or title of the discount. + */ + longDesc: () => LocalizedString + } + description: { + /** + * Discount Description + */ + displayName: () => LocalizedString + /** + * Discount details + */ + shortDesc: () => LocalizedString + /** + * A description of the discount applied. + */ + longDesc: () => LocalizedString + } + value: { + /** + * Discount Value + */ + displayName: () => LocalizedString + /** + * Discount amount or percentage + */ + shortDesc: () => LocalizedString + /** + * The numerical value of the discount, either as a fixed amount or percentage. + */ + longDesc: () => LocalizedString + } + valueType: { + /** + * Value Type + */ + displayName: () => LocalizedString + /** + * Type of discount value + */ + shortDesc: () => LocalizedString + /** + * Specifies if the discount is a fixed amount or percentage (e.g., "FIXED_AMOUNT", "PERCENTAGE"). + */ + longDesc: () => LocalizedString + } + amountWithCurrency: { + /** + * Amount with Currency + */ + displayName: () => LocalizedString + /** + * Discount amount with currency + */ + shortDesc: () => LocalizedString + /** + * The discount amount including currency details. + */ + longDesc: () => LocalizedString + type: { + fields: { + amount: { + /** + * Amount + */ + displayName: () => LocalizedString + /** + * Discount amount + */ + shortDesc: () => LocalizedString + /** + * The numerical value of the discount. + */ + longDesc: () => LocalizedString + } + currencyCode: { + /** + * Currency Code + */ + displayName: () => LocalizedString + /** + * Discount currency + */ + shortDesc: () => LocalizedString + /** + * The ISO 4217 currency code for the discount amount. + */ + longDesc: () => LocalizedString + } + } + } + } + } + } + } + generatePriceOverride: { + /** + * Generate Price Override + */ + displayName: () => LocalizedString + /** + * Override item price + */ + shortDesc: () => LocalizedString + /** + * If true, allows setting a custom price for the item instead of the original price. + */ + longDesc: () => LocalizedString + } + priceOverride: { + /** + * Price Override + */ + displayName: () => LocalizedString + /** + * Custom item price + */ + shortDesc: () => LocalizedString + /** + * The custom price to override the original unit price. + */ + longDesc: () => LocalizedString + type: { + fields: { + amount: { + /** + * Amount + */ + displayName: () => LocalizedString + /** + * Override amount + */ + shortDesc: () => LocalizedString + /** + * The numerical value of the custom price. + */ + longDesc: () => LocalizedString + } + currencyCode: { + /** + * Currency Code + */ + displayName: () => LocalizedString + /** + * Override currency + */ + shortDesc: () => LocalizedString + /** + * The ISO 4217 currency code for the custom price. + */ + longDesc: () => LocalizedString + } + } + } + } + components: { + /** + * Components + */ + displayName: () => LocalizedString + /** + * Bundle components + */ + shortDesc: () => LocalizedString + /** + * Details of components if the item is a bundle or composite product. + */ + longDesc: () => LocalizedString + type: { + element_type: { + fields: { + quantity: { + /** + * Quantity + */ + displayName: () => LocalizedString + /** + * Component quantity + */ + shortDesc: () => LocalizedString + /** + * The number of units of this component in the bundle. + */ + longDesc: () => LocalizedString + } + variantId: { + /** + * Variant ID + */ + displayName: () => LocalizedString + /** + * Component variant ID + */ + shortDesc: () => LocalizedString + /** + * The unique identifier of the variant included as a component. + */ + longDesc: () => LocalizedString + } + } + } + } + } + uuid: { + /** + * UUID + */ + displayName: () => LocalizedString + /** + * Unique identifier + */ + shortDesc: () => LocalizedString + /** + * A unique identifier for the line item, often used for tracking or external systems. + */ + longDesc: () => LocalizedString + } + } + } + } } - processed_at: { + appliedDiscount: { /** - * Processed Date + * Applied Discount */ displayName: () => LocalizedString /** - * Filter by processed date + * Order-wide discount */ shortDesc: () => LocalizedString /** - * Find orders processed on a specific date or within a date range. + * Details of a discount applied to the entire draft order. */ longDesc: () => LocalizedString + type: { + fields: { + title: { + /** + * Discount Title + */ + displayName: () => LocalizedString + /** + * Discount name + */ + shortDesc: () => LocalizedString + /** + * The name or title of the order-wide discount. + */ + longDesc: () => LocalizedString + } + description: { + /** + * Discount Description + */ + displayName: () => LocalizedString + /** + * Discount details + */ + shortDesc: () => LocalizedString + /** + * A description of the order-wide discount. + */ + longDesc: () => LocalizedString + } + value: { + /** + * Discount Value + */ + displayName: () => LocalizedString + /** + * Discount amount or percentage + */ + shortDesc: () => LocalizedString + /** + * The numerical value of the discount, either as a fixed amount or percentage. + */ + longDesc: () => LocalizedString + } + valueType: { + /** + * Value Type + */ + displayName: () => LocalizedString + /** + * Type of discount value + */ + shortDesc: () => LocalizedString + /** + * Specifies if the discount is a fixed amount or percentage (e.g., "FIXED_AMOUNT", "PERCENTAGE"). + */ + longDesc: () => LocalizedString + } + amountWithCurrency: { + /** + * Amount with Currency + */ + displayName: () => LocalizedString + /** + * Discount amount with currency + */ + shortDesc: () => LocalizedString + /** + * The discount amount including currency details. + */ + longDesc: () => LocalizedString + type: { + fields: { + amount: { + /** + * Amount + */ + displayName: () => LocalizedString + /** + * Discount amount + */ + shortDesc: () => LocalizedString + /** + * The numerical value of the discount. + */ + longDesc: () => LocalizedString + } + currencyCode: { + /** + * Currency Code + */ + displayName: () => LocalizedString + /** + * Discount currency + */ + shortDesc: () => LocalizedString + /** + * The ISO 4217 currency code for the discount amount. + */ + longDesc: () => LocalizedString + } + } + } + } + } + } } - tag: { + shippingLine: { /** - * Tag + * Shipping Line */ displayName: () => LocalizedString /** - * Filter by order tag + * Shipping details */ shortDesc: () => LocalizedString /** - * Find orders that have been tagged with specific labels in Shopify. + * Details about the shipping method and cost for the draft order. */ longDesc: () => LocalizedString + type: { + fields: { + price: { + /** + * Price + */ + displayName: () => LocalizedString + /** + * Shipping cost + */ + shortDesc: () => LocalizedString + /** + * The cost of shipping as a numerical value. + */ + longDesc: () => LocalizedString + } + priceWithCurrency: { + /** + * Price with Currency + */ + displayName: () => LocalizedString + /** + * Shipping cost with currency + */ + shortDesc: () => LocalizedString + /** + * The shipping cost including currency specification. + */ + longDesc: () => LocalizedString + type: { + fields: { + amount: { + /** + * Amount + */ + displayName: () => LocalizedString + /** + * Shipping amount + */ + shortDesc: () => LocalizedString + /** + * The numerical value of the shipping cost. + */ + longDesc: () => LocalizedString + } + currencyCode: { + /** + * Currency Code + */ + displayName: () => LocalizedString + /** + * Shipping currency + */ + shortDesc: () => LocalizedString + /** + * The ISO 4217 currency code for the shipping cost. + */ + longDesc: () => LocalizedString + } + } + } + } + title: { + /** + * Title + */ + displayName: () => LocalizedString + /** + * Shipping method name + */ + shortDesc: () => LocalizedString + /** + * The name of the shipping method, e.g., "Standard Shipping". + */ + longDesc: () => LocalizedString + } + shippingRateHandle: { + /** + * Shipping Rate Handle + */ + displayName: () => LocalizedString + /** + * Shipping rate identifier + */ + shortDesc: () => LocalizedString + /** + * A unique identifier for the shipping rate, often tied to a predefined rate in Shopify. + */ + longDesc: () => LocalizedString + } + } + } } - test: { + customAttributes: { /** - * Test Orders + * Custom Attributes */ displayName: () => LocalizedString /** - * Include/exclude test orders + * Order custom attributes */ shortDesc: () => LocalizedString /** - * Filter to show only test orders (true) or exclude test orders (false). + * Key-value pairs for adding custom metadata to the draft order. */ longDesc: () => LocalizedString + type: { + element_type: { + fields: { + key: { + /** + * Key + */ + displayName: () => LocalizedString + /** + * Attribute key + */ + shortDesc: () => LocalizedString + /** + * The identifier for the custom attribute. + */ + longDesc: () => LocalizedString + } + value: { + /** + * Value + */ + displayName: () => LocalizedString + /** + * Attribute value + */ + shortDesc: () => LocalizedString + /** + * The value associated with the custom attribute key. + */ + longDesc: () => LocalizedString + } + } + } + } } - location_id: { + allowDiscountCodesInCheckout: { /** - * Location + * Allow Discount Codes in Checkout */ displayName: () => LocalizedString /** - * Filter by store location + * Enable discount codes */ shortDesc: () => LocalizedString /** - * Find orders associated with a specific store location or fulfillment center. + * If true, allows customers to apply discount codes during checkout from this draft order. */ longDesc: () => LocalizedString } - po_number: { + acceptAutomaticDiscounts: { /** - * Purchase Order Number + * Accept Automatic Discounts */ displayName: () => LocalizedString /** - * Search by PO number + * Apply automatic discounts */ shortDesc: () => LocalizedString /** - * Find orders associated with a specific purchase order number. + * If true, automatically applies any eligible store-wide discounts to the draft order. */ longDesc: () => LocalizedString } - rawQuery: { + discountCodes: { /** - * Advanced Query + * Discount Codes */ displayName: () => LocalizedString /** - * Use custom search syntax + * List of discount codes */ shortDesc: () => LocalizedString /** - * Enter a custom search query for advanced filtering using Shopify search syntax. + * A list of discount codes to apply to the draft order. */ longDesc: () => LocalizedString + type: { + element_type: { + /** + * Discount Code + */ + displayName: () => LocalizedString + /** + * Single discount code + */ + shortDesc: () => LocalizedString + /** + * A specific discount code to apply to the order. + */ + longDesc: () => LocalizedString + } + } } - sortKey: { + metafields: { /** - * Sort By + * Metafields */ displayName: () => LocalizedString /** - * Sort the results + * Custom metadata */ shortDesc: () => LocalizedString /** - * Choose how to order the results (e.g., by date, order number, total value). + * Additional metadata fields for the draft order, useful for custom integrations. */ longDesc: () => LocalizedString + type: { + element_type: { + fields: { + namespace: { + /** + * Namespace + */ + displayName: () => LocalizedString + /** + * Metafield namespace + */ + shortDesc: () => LocalizedString + /** + * A grouping identifier for the metafield. + */ + longDesc: () => LocalizedString + } + key: { + /** + * Key + */ + displayName: () => LocalizedString + /** + * Metafield key + */ + shortDesc: () => LocalizedString + /** + * The specific identifier for the metafield. + */ + longDesc: () => LocalizedString + } + value: { + /** + * Value + */ + displayName: () => LocalizedString + /** + * Metafield value + */ + shortDesc: () => LocalizedString + /** + * The value stored in the metafield. + */ + longDesc: () => LocalizedString + } + type: { + /** + * Type + */ + displayName: () => LocalizedString + /** + * Metafield data type + */ + shortDesc: () => LocalizedString + /** + * The data type of the metafield value, e.g., string, integer, JSON. + */ + longDesc: () => LocalizedString + } + } + } + } } - reverse: { + localizedFields: { /** - * Reverse Order + * Localized Fields */ displayName: () => LocalizedString /** - * Reverse the sort order + * Localized content */ shortDesc: () => LocalizedString /** - * Toggle between ascending and descending sort order for the results. + * Fields that support localized content for different regions or languages. */ longDesc: () => LocalizedString + type: { + element_type: { + fields: { + value: { + /** + * Value + */ + displayName: () => LocalizedString + /** + * Localized value + */ + shortDesc: () => LocalizedString + /** + * The localized content value. + */ + longDesc: () => LocalizedString + } + key: { + /** + * Key + */ + displayName: () => LocalizedString + /** + * Localized field key + */ + shortDesc: () => LocalizedString + /** + * The identifier for the localized field. + */ + longDesc: () => LocalizedString + } + locale: { + /** + * Locale + */ + displayName: () => LocalizedString + /** + * Language/region code + */ + shortDesc: () => LocalizedString + /** + * The locale code for the localized content, e.g., "en-US", "fr-CA". + */ + longDesc: () => LocalizedString + } + } + } + } } - limit: { + presentmentCurrencyCode: { /** - * Results Limit + * Presentment Currency Code */ displayName: () => LocalizedString /** - * Maximum number of results + * Display currency */ shortDesc: () => LocalizedString /** - * Specify the maximum number of orders to return in the search results (max: 250). + * The ISO 4217 currency code for displaying prices to the customer, e.g., USD, CAD. */ longDesc: () => LocalizedString } - cursor: { + poNumber: { /** - * Pagination Cursor + * PO Number */ displayName: () => LocalizedString /** - * Navigate through pages of results + * Purchase order number */ shortDesc: () => LocalizedString /** - * Use a cursor to paginate through large sets of search results. + * The purchase order number associated with the draft order, often used for B2B transactions. */ longDesc: () => LocalizedString } - } - } - 'find-customer': { - /** - * Find Customers - */ - displayName: () => LocalizedString - /** - * Search for customers - */ - shortDesc: () => LocalizedString - /** - * Search and filter customers in your Shopify store based on names, emails, or other attributes. - */ - longDesc: () => LocalizedString - options: { - query: { + paymentTerms: { /** - * Search Query + * Payment Terms */ displayName: () => LocalizedString /** - * Search by name or email + * Payment conditions */ shortDesc: () => LocalizedString /** - * Search for customers by their name, email, or other identifying information. + * Defines the payment terms for the draft order, such as due dates or schedules. */ longDesc: () => LocalizedString + type: { + fields: { + paymentTermsTemplateId: { + /** + * Payment Terms Template ID + */ + displayName: () => LocalizedString + /** + * Template identifier + */ + shortDesc: () => LocalizedString + /** + * The ID of a predefined payment terms template in Shopify. + */ + longDesc: () => LocalizedString + } + paymentSchedules: { + /** + * Payment Schedules + */ + displayName: () => LocalizedString + /** + * Payment due dates + */ + shortDesc: () => LocalizedString + /** + * A list of scheduled payments with due dates and amounts. + */ + longDesc: () => LocalizedString + type: { + element_type: { + fields: { + dueAt: { + /** + * Due At + */ + displayName: () => LocalizedString + /** + * Due date + */ + shortDesc: () => LocalizedString + /** + * The date when the payment is due. + */ + longDesc: () => LocalizedString + } + amount: { + /** + * Amount + */ + displayName: () => LocalizedString + /** + * Payment amount + */ + shortDesc: () => LocalizedString + /** + * The numerical value of the payment due. + */ + longDesc: () => LocalizedString + } + currencyCode: { + /** + * Currency Code + */ + displayName: () => LocalizedString + /** + * Payment currency + */ + shortDesc: () => LocalizedString + /** + * The ISO 4217 currency code for the payment amount. + */ + longDesc: () => LocalizedString + } + issuedAt: { + /** + * Issued At + */ + displayName: () => LocalizedString + /** + * Issue date + */ + shortDesc: () => LocalizedString + /** + * The date when the payment schedule was issued. + */ + longDesc: () => LocalizedString + } + } + } + } + } + } + } } - limit: { + purchasingEntity: { /** - * Results Limit + * Purchasing Entity */ displayName: () => LocalizedString /** - * Maximum number of results + * Buyer details */ shortDesc: () => LocalizedString /** - * Specify the maximum number of customers to return in the search results. + * Details about the entity making the purchase, such as a company or individual. */ longDesc: () => LocalizedString + type: { + fields: { + customerId: { + /** + * Customer ID + */ + displayName: () => LocalizedString + /** + * Purchaser customer ID + */ + shortDesc: () => LocalizedString + /** + * The ID of the customer making the purchase. + */ + longDesc: () => LocalizedString + } + companyId: { + /** + * Company ID + */ + displayName: () => LocalizedString + /** + * Purchaser company ID + */ + shortDesc: () => LocalizedString + /** + * The ID of the company making the purchase. + */ + longDesc: () => LocalizedString + } + companyLocationId: { + /** + * Company Location ID + */ + displayName: () => LocalizedString + /** + * Company location ID + */ + shortDesc: () => LocalizedString + /** + * The ID of the specific company location making the purchase. + */ + longDesc: () => LocalizedString + } + companyContactId: { + /** + * Company Contact ID + */ + displayName: () => LocalizedString + /** + * Contact ID + */ + shortDesc: () => LocalizedString + /** + * The ID of the company contact responsible for the purchase. + */ + longDesc: () => LocalizedString + } + } + } } - cursor: { + reserveInventoryUntil: { /** - * Pagination Cursor + * Reserve Inventory Until */ displayName: () => LocalizedString /** - * Navigate through pages of results + * Inventory reservation deadline */ shortDesc: () => LocalizedString /** - * Use a cursor to paginate through large sets of search results. + * The date and time until which the inventory is reserved for this draft order. */ longDesc: () => LocalizedString } - sortKey: { + sourceName: { /** - * Sort By + * Source Name */ displayName: () => LocalizedString /** - * Sort the results + * Order source */ shortDesc: () => LocalizedString /** - * Choose how to order the results (e.g., by name, date created, total spent). + * The source of the draft order, e.g., "web", "manual", or an app name. */ longDesc: () => LocalizedString } - reverse: { + visibleToCustomer: { /** - * Reverse Order + * Visible to Customer */ displayName: () => LocalizedString /** - * Reverse the sort order + * Customer visibility */ shortDesc: () => LocalizedString /** - * Toggle between ascending and descending sort order for the results. + * If true, the draft order is visible to the customer, e.g., in their account. */ longDesc: () => LocalizedString } } } - 'find-variant': { + 'create-customer': { /** - * Find Product Variants + * Create Customer */ displayName: () => LocalizedString /** - * Search for specific product variants + * Creates a new customer in Shopify */ shortDesc: () => LocalizedString /** - * Search and filter product variants in your Shopify store based on criteria like SKU, barcode, price, or inventory status. + * Adds a new customer to the Shopify store, allowing you to store their contact information, addresses, and marketing preferences for future orders and engagement. */ longDesc: () => LocalizedString options: { - productId: { - /** - * Product ID - */ - displayName: () => LocalizedString - /** - * Filter by parent product - */ - shortDesc: () => LocalizedString - /** - * Find variants that belong to a specific parent product using its Shopify product ID. - */ - longDesc: () => LocalizedString - } - title: { + email: { /** - * Variant Title + * Email */ displayName: () => LocalizedString /** - * Search by variant title + * Customer email address */ shortDesc: () => LocalizedString /** - * Filter variants by matching text in their titles or option values. + * The primary email address of the customer, used for account creation, notifications, and marketing. */ longDesc: () => LocalizedString } - sku: { + phone: { /** - * SKU + * Phone */ displayName: () => LocalizedString /** - * Search by variant SKU + * Customer phone number */ shortDesc: () => LocalizedString /** - * Look up variants using their Stock Keeping Unit (SKU) identifier. + * The customer’s phone number, useful for contact purposes and SMS marketing if consented. */ longDesc: () => LocalizedString } - barcode: { + firstName: { /** - * Barcode + * First Name */ displayName: () => LocalizedString /** - * Search by barcode + * Customer first name */ shortDesc: () => LocalizedString /** - * Find variants using their UPC, ISBN, or other barcode identifiers. + * The first name of the customer, used for personalization and address details. */ longDesc: () => LocalizedString } - id: { + lastName: { /** - * Variant ID + * Last Name */ displayName: () => LocalizedString /** - * Search by variant ID + * Customer last name */ shortDesc: () => LocalizedString /** - * Look up a specific variant using its unique Shopify variant ID. + * The last name of the customer, completing their full name for identification and shipping. */ longDesc: () => LocalizedString } - inventoryQuantity: { + locale: { /** - * Inventory Quantity + * Locale */ displayName: () => LocalizedString /** - * Filter by inventory quantity + * Customer language/region */ shortDesc: () => LocalizedString /** - * Find variants based on their exact inventory quantity or range (e.g., "inventory_quantity:10" or "inventory_quantity:>5"). + * The preferred language and region code for the customer, e.g., "en-US" or "fr-CA", affecting communication and formatting. */ longDesc: () => LocalizedString } - productStatus: { + note: { /** - * Product Status + * Note */ displayName: () => LocalizedString /** - * Filter by product status + * Notes about the customer */ shortDesc: () => LocalizedString /** - * Find variants based on whether their parent product is active, draft, or archived. + * Internal notes about the customer, such as preferences, special instructions, or account details. */ longDesc: () => LocalizedString } - productType: { + taxExempt: { /** - * Product Type + * Tax Exempt */ displayName: () => LocalizedString /** - * Filter by product type + * Exempt customer from taxes */ shortDesc: () => LocalizedString /** - * Find variants belonging to products of a specific type or category. + * Indicates whether the customer is exempt from taxes on all purchases. Set to true for tax-exempt entities. */ longDesc: () => LocalizedString } - tag: { + taxExemptions: { /** - * Product Tag + * Tax Exemptions */ displayName: () => LocalizedString /** - * Filter by product tag + * Specific tax exemptions */ shortDesc: () => LocalizedString /** - * Find variants belonging to products that have a specific tag. + * A list of specific tax exemptions applied to the customer, such as regional or category-specific exemptions. */ longDesc: () => LocalizedString + type: { + element_type: { + /** + * Tax Exemption Type + */ + displayName: () => LocalizedString + /** + * Type of tax exemption + */ + shortDesc: () => LocalizedString + /** + * Defines the specific tax exemption applied, e.g., GST, VAT, or sales tax. + */ + longDesc: () => LocalizedString + } + } } - tagNot: { + tags: { /** - * Exclude Tag + * Tags */ displayName: () => LocalizedString /** - * Filter out products with tag + * Customer tags */ shortDesc: () => LocalizedString /** - * Find variants belonging to products that do not have a specific tag. + * A list of tags to categorize or filter the customer, e.g., "VIP", "wholesale", "new". */ longDesc: () => LocalizedString + type: { + element_type: { + /** + * Tag + */ + displayName: () => LocalizedString + /** + * Single tag value + */ + shortDesc: () => LocalizedString + /** + * A single string value used to tag the customer for organization or segmentation. + */ + longDesc: () => LocalizedString + } + } } - vendor: { + addresses: { /** - * Vendor + * Addresses */ displayName: () => LocalizedString /** - * Filter by vendor or supplier + * Customer addresses */ shortDesc: () => LocalizedString /** - * Find variants belonging to products from a specific vendor or supplier. + * A list of addresses associated with the customer, such as shipping or billing addresses. */ longDesc: () => LocalizedString + type: { + element_type: { + fields: { + address1: { + /** + * Address Line 1 + */ + displayName: () => LocalizedString + /** + * Primary address line + */ + shortDesc: () => LocalizedString + /** + * The street address or PO Box for the customer. + */ + longDesc: () => LocalizedString + } + address2: { + /** + * Address Line 2 + */ + displayName: () => LocalizedString + /** + * Secondary address line + */ + shortDesc: () => LocalizedString + /** + * Additional address information like apartment or suite number. + */ + longDesc: () => LocalizedString + } + city: { + /** + * City + */ + displayName: () => LocalizedString + /** + * Customer city + */ + shortDesc: () => LocalizedString + /** + * The city associated with the customer’s address. + */ + longDesc: () => LocalizedString + } + province: { + /** + * Province/State + */ + displayName: () => LocalizedString + /** + * Customer province or state + */ + shortDesc: () => LocalizedString + /** + * The province, state, or region for the customer’s address. + */ + longDesc: () => LocalizedString + } + country: { + /** + * Country + */ + displayName: () => LocalizedString + /** + * Customer country + */ + shortDesc: () => LocalizedString + /** + * The country for the customer’s address. + */ + longDesc: () => LocalizedString + } + zip: { + /** + * ZIP/Postal Code + */ + displayName: () => LocalizedString + /** + * Customer postal code + */ + shortDesc: () => LocalizedString + /** + * The ZIP or postal code for the customer’s address. + */ + longDesc: () => LocalizedString + } + firstName: { + /** + * First Name + */ + displayName: () => LocalizedString + /** + * Address first name + */ + shortDesc: () => LocalizedString + /** + * The first name associated with this specific address. + */ + longDesc: () => LocalizedString + } + lastName: { + /** + * Last Name + */ + displayName: () => LocalizedString + /** + * Address last name + */ + shortDesc: () => LocalizedString + /** + * The last name associated with this specific address. + */ + longDesc: () => LocalizedString + } + company: { + /** + * Company + */ + displayName: () => LocalizedString + /** + * Address company name + */ + shortDesc: () => LocalizedString + /** + * The company name tied to this address, if applicable. + */ + longDesc: () => LocalizedString + } + phone: { + /** + * Phone + */ + displayName: () => LocalizedString + /** + * Address phone number + */ + shortDesc: () => LocalizedString + /** + * The phone number linked to this specific address. + */ + longDesc: () => LocalizedString + } + } + } + } } - collection: { + emailMarketingConsent: { /** - * Collection + * Email Marketing Consent */ displayName: () => LocalizedString /** - * Filter by collection + * Email marketing preferences */ shortDesc: () => LocalizedString /** - * Find variants belonging to products in a specific collection using the collection ID. + * Details about the customer’s consent to receive email marketing communications. */ longDesc: () => LocalizedString + type: { + fields: { + marketingState: { + /** + * Marketing State + */ + displayName: () => LocalizedString + /** + * Consent status + */ + shortDesc: () => LocalizedString + /** + * The current state of email marketing consent, e.g., "SUBSCRIBED", "UNSUBSCRIBED", or "PENDING". + */ + longDesc: () => LocalizedString + } + marketingOptInLevel: { + /** + * Marketing Opt-In Level + */ + displayName: () => LocalizedString + /** + * Opt-in level + */ + shortDesc: () => LocalizedString + /** + * The level of consent provided, e.g., "SINGLE_OPT_IN" or "CONFIRMED_OPT_IN", based on how consent was obtained. + */ + longDesc: () => LocalizedString + } + } + } } - option1: { + smsMarketingConsent: { /** - * Option 1 + * SMS Marketing Consent */ displayName: () => LocalizedString /** - * Filter by first option + * SMS marketing preferences */ shortDesc: () => LocalizedString /** - * Find variants with a specific value for their first option (e.g., Size, Color). + * Details about the customer’s consent to receive SMS marketing messages. */ longDesc: () => LocalizedString + type: { + fields: { + marketingState: { + /** + * Marketing State + */ + displayName: () => LocalizedString + /** + * Consent status + */ + shortDesc: () => LocalizedString + /** + * The current state of SMS marketing consent, e.g., "SUBSCRIBED", "UNSUBSCRIBED", or "PENDING". + */ + longDesc: () => LocalizedString + } + marketingOptInLevel: { + /** + * Marketing Opt-In Level + */ + displayName: () => LocalizedString + /** + * Opt-in level + */ + shortDesc: () => LocalizedString + /** + * The level of consent provided for SMS, e.g., "SINGLE_OPT_IN" or "CONFIRMED_OPT_IN". + */ + longDesc: () => LocalizedString + } + } + } } - option2: { + metafields: { /** - * Option 2 + * Metafields */ displayName: () => LocalizedString /** - * Filter by second option + * Custom metadata */ shortDesc: () => LocalizedString /** - * Find variants with a specific value for their second option. + * Additional metadata fields for the customer, useful for custom integrations or data storage. */ longDesc: () => LocalizedString + type: { + element_type: { + fields: { + namespace: { + /** + * Namespace + */ + displayName: () => LocalizedString + /** + * Metafield namespace + */ + shortDesc: () => LocalizedString + /** + * A grouping identifier for the metafield to organize related data. + */ + longDesc: () => LocalizedString + } + key: { + /** + * Key + */ + displayName: () => LocalizedString + /** + * Metafield key + */ + shortDesc: () => LocalizedString + /** + * The specific identifier for the metafield. + */ + longDesc: () => LocalizedString + } + value: { + /** + * Value + */ + displayName: () => LocalizedString + /** + * Metafield value + */ + shortDesc: () => LocalizedString + /** + * The value stored in the metafield, which can be a string, number, or JSON. + */ + longDesc: () => LocalizedString + } + type: { + /** + * Type + */ + displayName: () => LocalizedString + /** + * Metafield data type + */ + shortDesc: () => LocalizedString + /** + * The data type of the metafield value, e.g., "string", "integer", "json". + */ + longDesc: () => LocalizedString + } + } + } + } } - option3: { + } + } + 'create-blog-entry': { + /** + * Create Blog Entry + */ + displayName: () => LocalizedString + /** + * Creates a new blog post in Shopify + */ + shortDesc: () => LocalizedString + /** + * Adds a new blog post to a specified blog in your Shopify store, allowing you to publish content such as articles, news, or updates for customers. + */ + longDesc: () => LocalizedString + options: { + blogId: { /** - * Option 3 + * Blog ID */ displayName: () => LocalizedString /** - * Filter by third option + * ID of the target blog */ shortDesc: () => LocalizedString /** - * Find variants with a specific value for their third option. + * The unique identifier of the blog where the new entry will be created. Required to associate the post with a specific blog. */ longDesc: () => LocalizedString } - taxable: { + title: { /** - * Taxable + * Title */ displayName: () => LocalizedString /** - * Filter by tax status + * Blog post title */ shortDesc: () => LocalizedString /** - * Find variants based on whether they are taxable or non-taxable. + * The headline or title of the blog post, displayed prominently to readers. */ longDesc: () => LocalizedString } - updatedAt: { + content: { /** - * Updated At + * Content */ displayName: () => LocalizedString /** - * Filter by update time + * Blog post content */ shortDesc: () => LocalizedString /** - * Find variants based on when they were last updated (e.g., "updated_at:>2023-01-01" or "updated_at: LocalizedString } - rawQuery: { + author: { /** - * Advanced Query + * Author */ displayName: () => LocalizedString /** - * Use custom search syntax + * Author of the blog post */ shortDesc: () => LocalizedString /** - * Enter a custom search query for advanced filtering using Shopify search syntax. + * The name of the person or entity credited with writing the blog post, displayed as the author. */ longDesc: () => LocalizedString } - sortKey: { + tags: { /** - * Sort By + * Tags */ displayName: () => LocalizedString /** - * Order results by field + * Tags for the blog post */ shortDesc: () => LocalizedString /** - * Specify which field to use for sorting the results. + * A list of keywords or categories to tag the blog post, aiding in searchability and organization. */ longDesc: () => LocalizedString + type: { + element_type: { + /** + * Tag + */ + displayName: () => LocalizedString + /** + * Single tag value + */ + shortDesc: () => LocalizedString + /** + * A single string value used to tag the blog post, e.g., "news", "tutorial", "promotion". + */ + longDesc: () => LocalizedString + } + } } - reverse: { + summary: { /** - * Reverse Order + * Summary */ displayName: () => LocalizedString /** - * Reverse the sort order + * Blog post summary */ shortDesc: () => LocalizedString /** - * When enabled, reverses the order of the results (e.g., Z-A instead of A-Z). + * A brief overview or excerpt of the blog post, often used as a teaser or preview in blog listings. */ longDesc: () => LocalizedString } - limit: { + published: { /** - * Results Limit + * Published */ displayName: () => LocalizedString /** - * Maximum number of results + * Publication status */ shortDesc: () => LocalizedString /** - * Specify the maximum number of variants to return in the search results (max: 250). + * Indicates whether the blog post is published (true) or saved as a draft (false) upon creation. */ longDesc: () => LocalizedString } - cursor: { + image: { /** - * Pagination Cursor + * Image */ displayName: () => LocalizedString /** - * Navigate through pages of results + * Featured image for the post */ shortDesc: () => LocalizedString /** - * Use a cursor to paginate through large sets of search results. + * The primary image associated with the blog post, used for visual appeal in previews or headers. */ longDesc: () => LocalizedString + type: { + fields: { + altText: { + /** + * Alt Text + */ + displayName: () => LocalizedString + /** + * Image alt text + */ + shortDesc: () => LocalizedString + /** + * Descriptive text for the image, used for accessibility and SEO purposes. + */ + longDesc: () => LocalizedString + } + url: { + /** + * URL + */ + displayName: () => LocalizedString + /** + * Image URL + */ + shortDesc: () => LocalizedString + /** + * The web address or source location of the image file to be used in the blog post. + */ + longDesc: () => LocalizedString + } + } + } } } } - 'add-line-item-to-order': { + 'add-tag-to-customer': { /** - * Add Line Item to Order + * Add Tag to Customer */ displayName: () => LocalizedString /** - * Add a new product line to an existing order + * Adds tags to an existing customer */ shortDesc: () => LocalizedString /** - * Allows adding a new line item to an existing order, with options for quantity, pricing, and other product details + * Appends or replaces tags for a specified customer in Shopify, useful for categorization, segmentation, or tracking purposes. */ longDesc: () => LocalizedString options: { - orderId: { - /** - * Order ID - */ - displayName: () => LocalizedString - /** - * Unique identifier of the order - */ - shortDesc: () => LocalizedString - /** - * The specific order to which the line item will be added - */ - longDesc: () => LocalizedString - } - type: { - /** - * Line Item Type - */ - displayName: () => LocalizedString - /** - * Type of line item being added - */ - shortDesc: () => LocalizedString - /** - * Specifies the nature of the line item (e.g., product, shipping, tax) - */ - longDesc: () => LocalizedString - } - quantity: { - /** - * Quantity - */ - displayName: () => LocalizedString - /** - * Number of items to add - */ - shortDesc: () => LocalizedString - /** - * The quantity of the specific product being added to the order - */ - longDesc: () => LocalizedString - } - locationId: { + customerId: { /** - * Location ID + * Customer ID */ displayName: () => LocalizedString /** - * Inventory location + * ID of the customer */ shortDesc: () => LocalizedString /** - * The specific warehouse or store location where the item is stocked + * The unique identifier of the customer to whom tags will be added. Required to target the correct customer. */ longDesc: () => LocalizedString } - reason: { + tags: { /** - * Reason + * Tags */ displayName: () => LocalizedString /** - * Reason for adding line item + * Tags to add */ shortDesc: () => LocalizedString /** - * Explanation for why the line item is being added to the order + * A list of tags to apply to the customer, such as "VIP", "loyal", or "newsletter". Can be appended or replace existing tags based on the append option. */ longDesc: () => LocalizedString } - notifyCustomer: { + append: { /** - * Notify Customer + * Append */ displayName: () => LocalizedString /** - * Send notification about order change + * Append or replace tags */ shortDesc: () => LocalizedString /** - * Determines whether the customer should be notified about the line item addition + * If true, adds the new tags to the existing ones; if false, replaces all existing tags with the new ones. */ longDesc: () => LocalizedString } - variantId: { + } + } + 'create-transaction': { + /** + * Create Transaction + */ + displayName: () => LocalizedString + /** + * Creates a transaction for an order + */ + shortDesc: () => LocalizedString + /** + * Records a financial transaction (e.g., payment, refund) for a specific order in Shopify, linked to a payment gateway. + */ + longDesc: () => LocalizedString + options: { + orderId: { /** - * Variant ID + * Order ID */ displayName: () => LocalizedString /** - * Specific product variant + * ID of the order */ shortDesc: () => LocalizedString /** - * Unique identifier for the specific product variant being added + * The unique identifier of the order to which this transaction applies. Required to associate the transaction correctly. */ longDesc: () => LocalizedString } - allowDuplicates: { + amount: { /** - * Allow Duplicates + * Amount */ displayName: () => LocalizedString /** - * Permit duplicate line items + * Transaction amount */ shortDesc: () => LocalizedString /** - * Whether identical line items can be added multiple times to the order + * The numerical value of the transaction, such as the amount paid or refunded. */ longDesc: () => LocalizedString } - itemName: { + currency: { /** - * Item Name + * Currency */ displayName: () => LocalizedString /** - * Name of the product + * Transaction currency */ shortDesc: () => LocalizedString /** - * The display name or title of the product being added + * The ISO 4217 currency code for the transaction amount, e.g., "USD", "EUR". */ longDesc: () => LocalizedString } - price: { + type: { /** - * Price + * Type */ displayName: () => LocalizedString /** - * Price of the line item + * Transaction type */ shortDesc: () => LocalizedString /** - * The unit price of the product being added to the order + * The type of transaction, such as "authorization", "capture", "sale", or "refund". Defines the transaction’s purpose. */ longDesc: () => LocalizedString } - currency: { + parentTransactionId: { /** - * Currency + * Parent Transaction ID */ displayName: () => LocalizedString /** - * Currency of the price + * ID of parent transaction */ shortDesc: () => LocalizedString /** - * The currency in which the price is specified + * The ID of a previous transaction this one relates to, e.g., for refunds or captures linked to an authorization. */ longDesc: () => LocalizedString } - isTaxable: { + gateway: { /** - * Is Taxable + * Gateway */ displayName: () => LocalizedString /** - * Whether item is subject to tax + * Payment gateway */ shortDesc: () => LocalizedString /** - * Indicates if the line item should have tax applied + * The payment gateway used for the transaction, e.g., "shopify_payments", "paypal", or a custom gateway name. */ longDesc: () => LocalizedString } - isPhysical: { + finalCapture: { /** - * Is Physical + * Final Capture */ displayName: () => LocalizedString /** - * Physical vs digital product + * Complete capture flag */ shortDesc: () => LocalizedString /** - * Specifies whether the item is a physical product requiring shipping + * If true, indicates this is the final capture of funds for an authorization; if false, partial captures may follow. */ longDesc: () => LocalizedString } } } - 'create-gift-card': { + 'create-company': { /** - * Create Gift Card + * Create Company */ displayName: () => LocalizedString /** - * Generate a new gift card + * Creates a new company in Shopify */ shortDesc: () => LocalizedString /** - * Create a gift card with customizable parameters like initial value, expiration, and recipient details + * Adds a new company entity to Shopify, typically for B2B purposes, including contact and location details for wholesale or enterprise customers. */ longDesc: () => LocalizedString options: { - initialValue: { + companyName: { /** - * Initial Value + * Name */ displayName: () => LocalizedString /** - * Starting balance of gift card + * Company name */ shortDesc: () => LocalizedString /** - * The initial monetary amount loaded onto the gift card + * The official name of the company, used for identification and display purposes. */ longDesc: () => LocalizedString } - customerId: { + externalId: { /** - * Customer ID + * External ID */ displayName: () => LocalizedString /** - * ID of gift card recipient + * External identifier */ shortDesc: () => LocalizedString /** - * The unique identifier of the customer receiving the gift card + * A unique identifier from an external system, useful for syncing or referencing the company outside Shopify. */ longDesc: () => LocalizedString } @@ -231843,1747 +237372,1514 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Additional gift card information - */ - shortDesc: () => LocalizedString - /** - * A personal message or additional details about the gift card - */ - longDesc: () => LocalizedString - } - expiresOn: { - /** - * Expiration Date - */ - displayName: () => LocalizedString - /** - * Date when gift card expires - */ - shortDesc: () => LocalizedString - /** - * The date after which the gift card will no longer be valid - */ - longDesc: () => LocalizedString - } - code: { - /** - * Gift Card Code - */ - displayName: () => LocalizedString - /** - * Unique gift card identifier + * Company notes */ shortDesc: () => LocalizedString /** - * The specific code used to redeem the gift card + * Internal notes about the company, such as account details or special instructions. */ longDesc: () => LocalizedString } - templateSuffix: { + customerSince: { /** - * Template Suffix + * Customer Since */ displayName: () => LocalizedString /** - * Customization of gift card template + * Start date */ shortDesc: () => LocalizedString /** - * Optional suffix to customize the gift card's appearance or template + * The date the company became a customer, formatted as a timestamp, useful for tracking tenure. */ longDesc: () => LocalizedString } - recipientAttributes: { + contactProperties: { /** - * Recipient Attributes + * Contact Properties */ displayName: () => LocalizedString /** - * Details about gift card recipient + * Primary contact details */ shortDesc: () => LocalizedString /** - * Additional information about the person receiving the gift card + * Details about the primary contact person for the company. */ longDesc: () => LocalizedString type: { fields: { - id: { + firstName: { + /** + * First Name + */ + displayName: () => LocalizedString + /** + * Contact first name + */ + shortDesc: () => LocalizedString + /** + * The first name of the company’s primary contact. + */ + longDesc: () => LocalizedString + } + lastName: { + /** + * Last Name + */ + displayName: () => LocalizedString + /** + * Contact last name + */ + shortDesc: () => LocalizedString + /** + * The last name of the company’s primary contact. + */ + longDesc: () => LocalizedString + } + email: { /** - * Recipient ID + * Email */ displayName: () => LocalizedString /** - * Unique identifier for recipient + * Contact email */ shortDesc: () => LocalizedString /** - * A unique identifier for the gift card recipient + * The email address of the primary contact, used for communication. */ longDesc: () => LocalizedString } - message: { + phone: { /** - * Recipient Message + * Phone */ displayName: () => LocalizedString /** - * Personal message to recipient + * Contact phone */ shortDesc: () => LocalizedString /** - * A personalized message to accompany the gift card + * The phone number of the primary contact. */ longDesc: () => LocalizedString } - preferredName: { + title: { /** - * Preferred Name + * Title */ displayName: () => LocalizedString /** - * Recipient's preferred name + * Contact job title */ shortDesc: () => LocalizedString /** - * The name the recipient prefers to be called + * The job title or role of the primary contact within the company. */ longDesc: () => LocalizedString } - sendNotificationAt: { + locale: { /** - * Notification Timing + * Locale */ displayName: () => LocalizedString /** - * When to send gift card notification + * Contact language/region */ shortDesc: () => LocalizedString /** - * The specific time or date to send the gift card notification + * The preferred language and region code for the contact, e.g., "en-US". */ longDesc: () => LocalizedString } } } } - } - } - 'create-fulfillment': { - /** - * Create Fulfillment - */ - displayName: () => LocalizedString - /** - * Process and ship an order - */ - shortDesc: () => LocalizedString - /** - * Create a fulfillment for an order, handling shipping and tracking information - */ - longDesc: () => LocalizedString - options: { - fulfillmentOrderId: { - /** - * Fulfillment Order ID - */ - displayName: () => LocalizedString - /** - * Unique fulfillment order identifier - */ - shortDesc: () => LocalizedString - /** - * The specific fulfillment order being processed - */ - longDesc: () => LocalizedString - } - fulfillmentOrderLineItems: { - /** - * Fulfillment Order Line Items - */ - displayName: () => LocalizedString - /** - * Items in the fulfillment order - */ - shortDesc: () => LocalizedString - /** - * Specific line items within the fulfillment order - */ - longDesc: () => LocalizedString - type: { - element_type: { - fields: { - id: { - /** - * Line Item ID - */ - displayName: () => LocalizedString - /** - * Unique identifier for line item - */ - shortDesc: () => LocalizedString - /** - * The specific identifier for an individual line item - */ - longDesc: () => LocalizedString - } - quantity: { - /** - * Quantity - */ - displayName: () => LocalizedString - /** - * Number of items to fulfill - */ - shortDesc: () => LocalizedString - /** - * The quantity of the specific item being fulfilled - */ - longDesc: () => LocalizedString - } - } - } - } - } - notifyCustomer: { - /** - * Notify Customer - */ - displayName: () => LocalizedString - /** - * Send shipping notification - */ - shortDesc: () => LocalizedString - /** - * Determines whether to send a notification to the customer about the fulfillment - */ - longDesc: () => LocalizedString - } - trackingInfo: { + locationProperties: { /** - * Tracking Information + * Location Properties */ displayName: () => LocalizedString /** - * Shipping tracking details + * Company location details */ shortDesc: () => LocalizedString /** - * Information for tracking the shipment + * Details about the company’s physical location, including shipping and billing addresses. */ longDesc: () => LocalizedString type: { fields: { - number: { + locationName: { /** - * Tracking Number + * Location Name */ displayName: () => LocalizedString /** - * Shipment tracking number + * Name of location */ shortDesc: () => LocalizedString /** - * The unique identifier for tracking the shipment + * A descriptive name for this company location, e.g., "Headquarters". */ longDesc: () => LocalizedString } - url: { + phone: { /** - * Tracking URL + * Phone */ displayName: () => LocalizedString /** - * Link to track shipment + * Location phone */ shortDesc: () => LocalizedString /** - * The web address where the shipment can be tracked + * The phone number associated with this company location. */ longDesc: () => LocalizedString } - company: { + note: { /** - * Shipping Company + * Note */ displayName: () => LocalizedString /** - * Name of shipping carrier + * Location notes */ shortDesc: () => LocalizedString /** - * The name of the company responsible for shipping + * Internal notes about this location, such as delivery instructions. */ longDesc: () => LocalizedString } - } - } - } - message: { - /** - * Message - */ - displayName: () => LocalizedString - /** - * Additional fulfillment notes - */ - shortDesc: () => LocalizedString - /** - * Any additional information or notes about the fulfillment - */ - longDesc: () => LocalizedString - } - originAddress: { - /** - * Origin Address - */ - displayName: () => LocalizedString - /** - * Shipping origin location - */ - shortDesc: () => LocalizedString - /** - * The address from which the items are being shipped - */ - longDesc: () => LocalizedString - type: { - fields: { - address1: { + externalId: { /** - * Address Line 1 + * External ID */ displayName: () => LocalizedString /** - * Primary address line + * Location external ID */ shortDesc: () => LocalizedString /** - * The first line of the shipping origin address + * An external identifier for this location, useful for integration with other systems. */ longDesc: () => LocalizedString } - address2: { + taxExempt: { /** - * Address Line 2 + * Tax Exempt */ displayName: () => LocalizedString /** - * Secondary address line + * Tax exemption status */ shortDesc: () => LocalizedString /** - * Optional additional address information + * Indicates if this location is exempt from taxes. */ longDesc: () => LocalizedString } - city: { + taxRegistrationId: { /** - * City + * Tax Registration ID */ displayName: () => LocalizedString /** - * City of origin + * Tax ID */ shortDesc: () => LocalizedString /** - * The city from which the shipment originates + * The tax registration number for this location, e.g., VAT or EIN. */ longDesc: () => LocalizedString } - countryCode: { + taxExemptions: { /** - * Country Code + * Tax Exemptions */ displayName: () => LocalizedString /** - * Origin country code + * Specific tax exemptions */ shortDesc: () => LocalizedString /** - * The two-letter country code for the shipping origin + * A list of specific tax exemptions applied to this location. */ longDesc: () => LocalizedString + type: { + element_type: { + /** + * Tax Exemption Type + */ + displayName: () => LocalizedString + /** + * Type of exemption + */ + shortDesc: () => LocalizedString + /** + * Defines the specific tax exemption, e.g., "GST", "VAT". + */ + longDesc: () => LocalizedString + } + } } - provinceCode: { + locale: { /** - * Province Code + * Locale */ displayName: () => LocalizedString /** - * State or province code + * Location language/region */ shortDesc: () => LocalizedString /** - * The code representing the state or province of origin + * The preferred language and region code for this location, e.g., "en-CA". */ longDesc: () => LocalizedString } - zip: { + shippingAddress: { /** - * Postal Code + * Shipping Address */ displayName: () => LocalizedString /** - * Origin postal code + * Shipping address */ shortDesc: () => LocalizedString /** - * The postal code of the shipping origin + * The address where goods are shipped for this company location. + */ + longDesc: () => LocalizedString + type: { + fields: { + address1: { + /** + * Address Line 1 + */ + displayName: () => LocalizedString + /** + * Primary shipping line + */ + shortDesc: () => LocalizedString + /** + * The street address or PO Box for shipping. + */ + longDesc: () => LocalizedString + } + address2: { + /** + * Address Line 2 + */ + displayName: () => LocalizedString + /** + * Secondary shipping line + */ + shortDesc: () => LocalizedString + /** + * Additional shipping address details, e.g., suite number. + */ + longDesc: () => LocalizedString + } + city: { + /** + * City + */ + displayName: () => LocalizedString + /** + * Shipping city + */ + shortDesc: () => LocalizedString + /** + * The city for the shipping address. + */ + longDesc: () => LocalizedString + } + zoneCode: { + /** + * Zone Code + */ + displayName: () => LocalizedString + /** + * Province/state code + */ + shortDesc: () => LocalizedString + /** + * The code for the province or state, e.g., "CA" for California. + */ + longDesc: () => LocalizedString + } + countryCode: { + /** + * Country Code + */ + displayName: () => LocalizedString + /** + * Country code + */ + shortDesc: () => LocalizedString + /** + * The ISO 3166-1 alpha-2 country code, e.g., "US". + */ + longDesc: () => LocalizedString + } + zip: { + /** + * ZIP/Postal Code + */ + displayName: () => LocalizedString + /** + * Shipping postal code + */ + shortDesc: () => LocalizedString + /** + * The ZIP or postal code for the shipping address. + */ + longDesc: () => LocalizedString + } + } + } + } + billingSameAsShipping: { + /** + * Billing Same as Shipping + */ + displayName: () => LocalizedString + /** + * Use shipping for billing + */ + shortDesc: () => LocalizedString + /** + * If true, the shipping address is also used as the billing address. */ longDesc: () => LocalizedString } + billingAddress: { + /** + * Billing Address + */ + displayName: () => LocalizedString + /** + * Billing address + */ + shortDesc: () => LocalizedString + /** + * The address used for billing purposes, if different from shipping. + */ + longDesc: () => LocalizedString + type: { + fields: { + address1: { + /** + * Address Line 1 + */ + displayName: () => LocalizedString + /** + * Primary billing line + */ + shortDesc: () => LocalizedString + /** + * The street address or PO Box for billing. + */ + longDesc: () => LocalizedString + } + address2: { + /** + * Address Line 2 + */ + displayName: () => LocalizedString + /** + * Secondary billing line + */ + shortDesc: () => LocalizedString + /** + * Additional billing address details, e.g., apartment number. + */ + longDesc: () => LocalizedString + } + city: { + /** + * City + */ + displayName: () => LocalizedString + /** + * Billing city + */ + shortDesc: () => LocalizedString + /** + * The city for the billing address. + */ + longDesc: () => LocalizedString + } + zoneCode: { + /** + * Zone Code + */ + displayName: () => LocalizedString + /** + * Province/state code + */ + shortDesc: () => LocalizedString + /** + * The code for the province or state, e.g., "NY". + */ + longDesc: () => LocalizedString + } + countryCode: { + /** + * Country Code + */ + displayName: () => LocalizedString + /** + * Country code + */ + shortDesc: () => LocalizedString + /** + * The ISO 3166-1 alpha-2 country code, e.g., "CA". + */ + longDesc: () => LocalizedString + } + zip: { + /** + * ZIP/Postal Code + */ + displayName: () => LocalizedString + /** + * Billing postal code + */ + shortDesc: () => LocalizedString + /** + * The ZIP or postal code for the billing address. + */ + longDesc: () => LocalizedString + } + } + } + } } } } } } - 'create-draft-order': { + } + expressions: { + '&&': { + /** + * And + */ + displayName: () => LocalizedString + /** + * Logical AND operator + */ + shortDesc: () => LocalizedString + /** + * Combines multiple conditions where all must be true + */ + longDesc: () => LocalizedString + } + '||': { + /** + * Or + */ + displayName: () => LocalizedString + /** + * Logical OR operator + */ + shortDesc: () => LocalizedString + /** + * Combines multiple conditions where at least one must be true + */ + longDesc: () => LocalizedString + } + '==': { + /** + * Equals + */ + displayName: () => LocalizedString + /** + * Field equals value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field equals the specified value + */ + longDesc: () => LocalizedString + } + '!=': { + /** + * Not Equals + */ + displayName: () => LocalizedString + /** + * Field does not equal value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field does not equal the specified value + */ + longDesc: () => LocalizedString + } + '>': { + /** + * Greater Than + */ + displayName: () => LocalizedString + /** + * Field is greater than value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field value is greater than the specified value + */ + longDesc: () => LocalizedString + } + '>=': { + /** + * Greater Than or Equal + */ + displayName: () => LocalizedString + /** + * Field is greater than or equal to value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field value is greater than or equal to the specified value + */ + longDesc: () => LocalizedString + } + '<': { + /** + * Less Than + */ + displayName: () => LocalizedString + /** + * Field is less than value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field value is less than the specified value + */ + longDesc: () => LocalizedString + } + '<=': { + /** + * Less Than or Equal + */ + displayName: () => LocalizedString + /** + * Field is less than or equal to value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field value is less than or equal to the specified value + */ + longDesc: () => LocalizedString + } + contains: { + /** + * Contains + */ + displayName: () => LocalizedString + /** + * Field contains value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field contains the specified text (case-insensitive) + */ + longDesc: () => LocalizedString + } + 'is-set': { + /** + * Is Set + */ + displayName: () => LocalizedString + /** + * Field has a value + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field has a non-empty value + */ + longDesc: () => LocalizedString + } + 'is-not-set': { + /** + * Is Not Set + */ + displayName: () => LocalizedString + /** + * Field is empty + */ + shortDesc: () => LocalizedString + /** + * Matches records where the field is empty or not set + */ + longDesc: () => LocalizedString + } + } + searchOptions: { + orderBy: { + /** + * Order By + */ + displayName: () => LocalizedString + /** + * Sort results by a specific field + */ + shortDesc: () => LocalizedString + /** + * Define the field and direction to sort search results + */ + longDesc: () => LocalizedString + type: { + fields: { + field: { + /** + * Field + */ + displayName: () => LocalizedString + /** + * The field to sort by + */ + shortDesc: () => LocalizedString + /** + * The name of the field to use for sorting results + */ + longDesc: () => LocalizedString + } + direction: { + /** + * Direction + */ + displayName: () => LocalizedString + /** + * Sort direction + */ + shortDesc: () => LocalizedString + /** + * The direction to sort results (ascending or descending) + */ + longDesc: () => LocalizedString + } + } + } + } + } + triggers: { + 'shopify-abandoned-cart-trigger': { + /** + * Shopify New Abandoned Cart + */ + displayName: () => LocalizedString + /** + * Triggers when a customer abandons a checkout in Shopify + */ + shortDesc: () => LocalizedString + /** + * This trigger activates when a Shopify checkout is created but not completed within the specified time window. Use this to send recovery emails, offer discounts, or analyze cart abandonment patterns. + */ + longDesc: () => LocalizedString + options: { + abandonedHours: { + /** + * Abandoned Hours + */ + displayName: () => LocalizedString + /** + * Time window to consider a cart abandoned + */ + shortDesc: () => LocalizedString + /** + * Specify how many hours must pass since cart creation without completion for it to be considered abandoned. Values range from 1 hour to 168 hours (one week). + */ + longDesc: () => LocalizedString + } + } + } + 'shopify-blog-trigger': { + /** + * Shopify Blog Created + */ + displayName: () => LocalizedString + /** + * Triggers when a new blog is created in Shopify + */ + shortDesc: () => LocalizedString + /** + * This trigger activates whenever a new blog (not an article) is created in your Shopify store. Use this to monitor blog creation or automate follow-up tasks. + */ + longDesc: () => LocalizedString + } + 'shopify-blog-entry-trigger': { + /** + * Shopify New Blog Article + */ + displayName: () => LocalizedString + /** + * Triggers when a blog article is created or published + */ + shortDesc: () => LocalizedString + /** + * This trigger activates when a new article is created or published in a specified Shopify blog. Use this to automate social media sharing, email notifications, or content distribution workflows. + */ + longDesc: () => LocalizedString + options: { + blog_title: { + /** + * Blog + */ + displayName: () => LocalizedString + /** + * Select the blog to monitor + */ + shortDesc: () => LocalizedString + /** + * Choose which Shopify blog to monitor for new articles. + */ + longDesc: () => LocalizedString + } + entryStatus: { + /** + * Article Status + */ + displayName: () => LocalizedString + /** + * Filter articles by publication status + */ + shortDesc: () => LocalizedString + /** + * Choose whether to trigger on all articles, only published articles, or only draft articles. + */ + longDesc: () => LocalizedString + } + } + } + 'shopify-customer-created-trigger': { + /** + * Shopify Customer Created + */ + displayName: () => LocalizedString + /** + * Triggers when a new customer account is created + */ + shortDesc: () => LocalizedString + /** + * This trigger activates whenever a new customer registers or is created in your Shopify store. Use this to send welcome emails, add customers to marketing lists, or create records in other systems. + */ + longDesc: () => LocalizedString + } + 'shopify-customer-updated-trigger': { + /** + * Shopify Customer Updated + */ + displayName: () => LocalizedString + /** + * Triggers when customer information is modified + */ + shortDesc: () => LocalizedString + /** + * This trigger activates whenever customer information is updated in your Shopify store. Use this to sync customer data with other systems, track specific customer changes, or update marketing preferences. + */ + longDesc: () => LocalizedString + } + 'shopify-new-order-trigger': { + /** + * Shopify New Order + */ + displayName: () => LocalizedString + /** + * Triggers when a new order is placed with the specified status + */ + shortDesc: () => LocalizedString + /** + * This trigger activates when a new order is created in your Shopify store that matches the specified status filter. Use this to process orders, update inventory in other systems, or send custom notifications based on order status. + */ + longDesc: () => LocalizedString + options: { + orderStatus: { + /** + * Order Status + */ + displayName: () => LocalizedString + /** + * Filter orders by their status + */ + shortDesc: () => LocalizedString + /** + * Select which type of orders to monitor based on their status (e.g., any, paid, fulfilled, cancelled). This lets you create different workflows for different order conditions. + */ + longDesc: () => LocalizedString + } + } + } + } + } + Zoom: { + /** + * Zoom + */ + displayName: () => LocalizedString + groups: { + /** + * Video Conferencing & Meetings + */ + '0': () => LocalizedString + } + /** + * Video conferencing and online meeting platform + */ + shortDesc: () => LocalizedString + /** + * Zoom is a video conferencing and online meeting platform that allows users to host and join virtual meetings, webinars, and video conferences. It offers features such as screen sharing, recording, and chat functionalities to enhance collaboration and communication among participants. + */ + longDesc: () => LocalizedString + actions: { + meetingDelete: { + groups: { + /** + * Meetings + */ + '0': () => LocalizedString + } + } + meeting: { + groups: { + /** + * Meetings + */ + '0': () => LocalizedString + } + } + meetingUpdate: { + groups: { + /** + * Meetings + */ + '0': () => LocalizedString + } + } + meetings: { + groups: { + /** + * Meetings + */ + '0': () => LocalizedString + } + } + meetingCreate: { + groups: { + /** + * Meetings + */ + '0': () => LocalizedString + } + } + Getameetingsummary: { + groups: { + /** + * Meetings + */ + '0': () => LocalizedString + } + } + meetingRegistrants: { + groups: { + /** + * Meeting Registrants + */ + '0': () => LocalizedString + } + } + meetingRegistrantCreate: { + groups: { + /** + * Meeting Registrants + */ + '0': () => LocalizedString + } + } + pastMeetingParticipants: { + groups: { + /** + * Meeting Participants + */ + '0': () => LocalizedString + } + } + recordingDelete: { + groups: { + /** + * Recordings + */ + '0': () => LocalizedString + } + } + recordingGet: { + groups: { + /** + * Recordings + */ + '0': () => LocalizedString + } + } + recordingsList: { + groups: { + /** + * Recordings + */ + '0': () => LocalizedString + } + } + webinars: { + groups: { + /** + * Webinars + */ + '0': () => LocalizedString + } + } + webinarCreate: { + groups: { + /** + * Webinars + */ + '0': () => LocalizedString + } + } + webinarDelete: { + groups: { + /** + * Webinars + */ + '0': () => LocalizedString + } + } + webinar: { + groups: { + /** + * Webinars + */ + '0': () => LocalizedString + } + } + webinarUpdate: { + groups: { + /** + * Webinars + */ + '0': () => LocalizedString + } + } + webinarRegistrants: { + groups: { + /** + * Webinar Registrants + */ + '0': () => LocalizedString + } + } + webinarRegistrantCreate: { + groups: { + /** + * Webinar Registrants + */ + '0': () => LocalizedString + } + } + listWebinarParticipants: { + groups: { + /** + * Webinar Participants + */ + '0': () => LocalizedString + } + } + } + triggers: { + new_meeting: { + /** + * New Meeting + */ + displayName: () => LocalizedString + /** + * Triggers when a Zoom meeting is created, started, or ended. + */ + shortDesc: () => LocalizedString + /** + * Monitors Zoom meetings and triggers when meetings are created, started (live), or ended (previous meetings) based on the selected event type. Returns meeting details including topic, duration, join URL, and meeting type. + */ + longDesc: () => LocalizedString + options: { + meeting_event_type: { + /** + * Meeting Event Type + */ + displayName: () => LocalizedString + /** + * Type of meeting event to monitor + */ + shortDesc: () => LocalizedString + /** + * Specifies which type of meeting event should trigger this action. Choose "any" to trigger on all meeting creations, "live" for when meetings start, or "previous_meetings" for when meetings end. + */ + longDesc: () => LocalizedString + } + } + } + new_webinar: { + /** + * New Webinar + */ + displayName: () => LocalizedString + /** + * Triggers when a new Zoom webinar is created. + */ + shortDesc: () => LocalizedString + /** + * Monitors Zoom webinars and triggers when new webinars are created. Returns webinar details including topic, duration, join URL, registration URL, and webinar type. + */ + longDesc: () => LocalizedString + } + new_meeting_summary: { /** - * Create Draft Order + * New Meeting Summary */ displayName: () => LocalizedString /** - * Creates a new draft order in Shopify + * Triggers when a new Zoom meeting summary is created. */ shortDesc: () => LocalizedString /** - * Generates a draft order that can be used to create an order manually, send invoices, or process payments later. Draft orders are useful for custom sales, wholesale orders, or pre-orders. + * Monitors Zoom meeting summaries and triggers when new summaries are generated after meetings end. Returns summary details including meeting information, host details, and summary timestamps. + */ + longDesc: () => LocalizedString + } + } + } + Confluence: { + /** + * Confluence + */ + displayName: () => LocalizedString + groups: { + /** + * Documents & Documentation + */ + '0': () => LocalizedString + } + /** + * Confluence is a collaboration tool used to help teams collaborate and share knowledge efficiently. + */ + shortDesc: () => LocalizedString + /** + * Confluence is a powerful collaboration tool that allows teams to create, share, and manage content in a centralized platform. It is designed to enhance team productivity by providing a space for documentation, project management, and knowledge sharing. With features like real-time editing, commenting, and integration with other tools, Confluence helps teams work together more effectively. + */ + longDesc: () => LocalizedString + triggers: { + new_attachment: { + /** + * New Attachment + */ + displayName: () => LocalizedString + /** + * Triggers when a new attachment is uploaded to Confluence. + */ + shortDesc: () => LocalizedString + /** + * Monitors Confluence for newly uploaded attachments with optional filtering by status and media type. Triggers when new attachments are detected. */ longDesc: () => LocalizedString options: { - customerId: { - /** - * Customer ID - */ - displayName: () => LocalizedString - /** - * The ID of the customer for the draft order - */ - shortDesc: () => LocalizedString - /** - * Specifies the unique identifier of the customer to associate with this draft order. Required if not using default address. - */ - longDesc: () => LocalizedString - } - email: { + status: { /** - * Email + * Status */ displayName: () => LocalizedString /** - * Customer email address + * Filter by attachment status */ shortDesc: () => LocalizedString /** - * The email address of the customer, used for notifications and order confirmation. + * Filter attachments by their status (current, archived, or trashed). */ longDesc: () => LocalizedString } - phone: { + mediaType: { /** - * Phone + * Media Type */ displayName: () => LocalizedString /** - * Customer phone number + * Filter by media type */ shortDesc: () => LocalizedString /** - * The phone number of the customer, useful for shipping updates or contact purposes. + * Filter attachments by their media type (e.g., image/png, application/pdf). */ longDesc: () => LocalizedString } - note: { + } + } + new_blogpost: { + /** + * New Blogpost + */ + displayName: () => LocalizedString + /** + * Triggers when a new blogpost is created in Confluence. + */ + shortDesc: () => LocalizedString + /** + * Monitors Confluence for newly created blogposts with optional filtering by space, status, and body format. Triggers when new blogposts are detected. + */ + longDesc: () => LocalizedString + options: { + space_id: { /** - * Note + * Space ID */ displayName: () => LocalizedString /** - * Additional notes for the draft order + * Filter by Confluence space */ shortDesc: () => LocalizedString /** - * A field for adding internal notes about the draft order, such as special instructions or context. + * Filter blogposts by the Confluence space they belong to. */ longDesc: () => LocalizedString } - taxExempt: { + status: { /** - * Tax Exempt + * Status */ displayName: () => LocalizedString /** - * Exempt order from taxes + * Filter by blogpost status */ shortDesc: () => LocalizedString /** - * Indicates whether the entire order is exempt from taxes. Set to true for tax-exempt customers. + * Filter blogposts by their status (current, deleted, or trashed). */ longDesc: () => LocalizedString } - taxExemptions: { + body_format: { /** - * Tax Exemptions + * Body Format */ displayName: () => LocalizedString /** - * Specific tax exemptions + * Content format to retrieve */ shortDesc: () => LocalizedString /** - * List of specific tax exemptions applied to the draft order, such as regional or product-specific exemptions. + * The format to retrieve the blogpost content in (storage format or Atlas Document Format). */ longDesc: () => LocalizedString - type: { - element_type: { - /** - * Tax Exemption Type - */ - displayName: () => LocalizedString - /** - * Type of tax exemption - */ - shortDesc: () => LocalizedString - /** - * Defines the specific tax exemption applied, e.g., GST, VAT, or sales tax. - */ - longDesc: () => LocalizedString - } - } } - tags: { + } + } + new_page: { + /** + * New Page + */ + displayName: () => LocalizedString + /** + * Triggers when a new page is created in Confluence. + */ + shortDesc: () => LocalizedString + /** + * Monitors Confluence for newly created pages with optional filtering by space, status, body format, and subtype. Triggers when new pages are detected. + */ + longDesc: () => LocalizedString + options: { + space_id: { /** - * Tags + * Space ID */ displayName: () => LocalizedString /** - * Tags for the draft order + * Filter by Confluence space */ shortDesc: () => LocalizedString /** - * A list of tags to categorize or filter the draft order, e.g., "wholesale", "pre-order". + * Filter pages by the Confluence space they belong to. */ longDesc: () => LocalizedString - type: { - element_type: { - /** - * Tag - */ - displayName: () => LocalizedString - /** - * Single tag value - */ - shortDesc: () => LocalizedString - /** - * A single string value used to tag the draft order for organization or search purposes. - */ - longDesc: () => LocalizedString - } - } } - shippingAddress: { + status: { /** - * Shipping Address + * Status */ displayName: () => LocalizedString /** - * Customer shipping address + * Filter by page status */ shortDesc: () => LocalizedString /** - * The full shipping address where the order will be delivered, including all relevant fields. + * Filter pages by their status (current, archived, deleted, or trashed). */ longDesc: () => LocalizedString - type: { - fields: { - address1: { - /** - * Address Line 1 - */ - displayName: () => LocalizedString - /** - * Primary address line - */ - shortDesc: () => LocalizedString - /** - * The street address or PO Box for shipping. - */ - longDesc: () => LocalizedString - } - address2: { - /** - * Address Line 2 - */ - displayName: () => LocalizedString - /** - * Secondary address line - */ - shortDesc: () => LocalizedString - /** - * Additional address information like apartment or suite number. - */ - longDesc: () => LocalizedString - } - city: { - /** - * City - */ - displayName: () => LocalizedString - /** - * Shipping city - */ - shortDesc: () => LocalizedString - /** - * The city for the shipping address. - */ - longDesc: () => LocalizedString - } - province: { - /** - * Province/State - */ - displayName: () => LocalizedString - /** - * Shipping province or state - */ - shortDesc: () => LocalizedString - /** - * The province, state, or region for the shipping address. - */ - longDesc: () => LocalizedString - } - country: { - /** - * Country - */ - displayName: () => LocalizedString - /** - * Shipping country - */ - shortDesc: () => LocalizedString - /** - * The country for the shipping address. - */ - longDesc: () => LocalizedString - } - zip: { - /** - * ZIP/Postal Code - */ - displayName: () => LocalizedString - /** - * Shipping postal code - */ - shortDesc: () => LocalizedString - /** - * The ZIP or postal code for the shipping address. - */ - longDesc: () => LocalizedString - } - firstName: { - /** - * First Name - */ - displayName: () => LocalizedString - /** - * Recipient first name - */ - shortDesc: () => LocalizedString - /** - * The first name of the shipping recipient. - */ - longDesc: () => LocalizedString - } - lastName: { - /** - * Last Name - */ - displayName: () => LocalizedString - /** - * Recipient last name - */ - shortDesc: () => LocalizedString - /** - * The last name of the shipping recipient. - */ - longDesc: () => LocalizedString - } - company: { - /** - * Company - */ - displayName: () => LocalizedString - /** - * Shipping company name - */ - shortDesc: () => LocalizedString - /** - * The company name associated with the shipping address, if applicable. - */ - longDesc: () => LocalizedString - } - phone: { - /** - * Phone - */ - displayName: () => LocalizedString - /** - * Shipping contact phone - */ - shortDesc: () => LocalizedString - /** - * The phone number for the shipping recipient. - */ - longDesc: () => LocalizedString - } - } - } } - billingAddress: { + body_format: { /** - * Billing Address + * Body Format */ displayName: () => LocalizedString /** - * Customer billing address + * Content format to retrieve */ shortDesc: () => LocalizedString /** - * The address used for billing purposes, which may differ from the shipping address. + * The format to retrieve the page content in (storage format or Atlas Document Format). */ longDesc: () => LocalizedString - type: { - fields: { - address1: { - /** - * Address Line 1 - */ - displayName: () => LocalizedString - /** - * Primary billing address line - */ - shortDesc: () => LocalizedString - /** - * The street address or PO Box for billing. - */ - longDesc: () => LocalizedString - } - address2: { - /** - * Address Line 2 - */ - displayName: () => LocalizedString - /** - * Secondary billing address line - */ - shortDesc: () => LocalizedString - /** - * Additional billing address information like apartment or suite number. - */ - longDesc: () => LocalizedString - } - city: { - /** - * City - */ - displayName: () => LocalizedString - /** - * Billing city - */ - shortDesc: () => LocalizedString - /** - * The city for the billing address. - */ - longDesc: () => LocalizedString - } - province: { - /** - * Province/State - */ - displayName: () => LocalizedString - /** - * Billing province or state - */ - shortDesc: () => LocalizedString - /** - * The province, state, or region for the billing address. - */ - longDesc: () => LocalizedString - } - country: { - /** - * Country - */ - displayName: () => LocalizedString - /** - * Billing country - */ - shortDesc: () => LocalizedString - /** - * The country for the billing address. - */ - longDesc: () => LocalizedString - } - zip: { - /** - * ZIP/Postal Code - */ - displayName: () => LocalizedString - /** - * Billing postal code - */ - shortDesc: () => LocalizedString - /** - * The ZIP or postal code for the billing address. - */ - longDesc: () => LocalizedString - } - firstName: { - /** - * First Name - */ - displayName: () => LocalizedString - /** - * Billing first name - */ - shortDesc: () => LocalizedString - /** - * The first name of the billing contact. - */ - longDesc: () => LocalizedString - } - lastName: { - /** - * Last Name - */ - displayName: () => LocalizedString - /** - * Billing last name - */ - shortDesc: () => LocalizedString - /** - * The last name of the billing contact. - */ - longDesc: () => LocalizedString - } - company: { - /** - * Company - */ - displayName: () => LocalizedString - /** - * Billing company name - */ - shortDesc: () => LocalizedString - /** - * The company name associated with the billing address, if applicable. - */ - longDesc: () => LocalizedString - } - phone: { - /** - * Phone - */ - displayName: () => LocalizedString - /** - * Billing contact phone - */ - shortDesc: () => LocalizedString - /** - * The phone number for the billing contact. - */ - longDesc: () => LocalizedString - } - } - } } - useCustomerDefaultAddress: { + subtype: { /** - * Use Customer Default Address + * Subtype */ displayName: () => LocalizedString /** - * Use customer’s default address + * Filter by page subtype */ shortDesc: () => LocalizedString /** - * If true, uses the customer’s default shipping and billing address instead of custom ones. + * Filter pages by their subtype (live pages or regular pages). */ longDesc: () => LocalizedString } - lineItems: { - /** - * Line Items - */ - displayName: () => LocalizedString - /** - * Products in the draft order - */ - shortDesc: () => LocalizedString - /** - * A list of products or variants included in the draft order, with details like quantity and price. - */ - longDesc: () => LocalizedString - type: { - element_type: { - fields: { - variantId: { - /** - * Variant ID - */ - displayName: () => LocalizedString - /** - * Product variant ID - */ - shortDesc: () => LocalizedString - /** - * The unique identifier of the product variant to include in the order. - */ - longDesc: () => LocalizedString - } - quantity: { - /** - * Quantity - */ - displayName: () => LocalizedString - /** - * Number of items - */ - shortDesc: () => LocalizedString - /** - * The number of units of this variant to include in the draft order. - */ - longDesc: () => LocalizedString - } - title: { - /** - * Title - */ - displayName: () => LocalizedString - /** - * Item title - */ - shortDesc: () => LocalizedString - /** - * The display name of the line item, typically the product or variant name. - */ - longDesc: () => LocalizedString - } - originalUnitPrice: { - /** - * Original Unit Price - */ - displayName: () => LocalizedString - /** - * Price per unit - */ - shortDesc: () => LocalizedString - /** - * The original price per unit of the item before discounts. - */ - longDesc: () => LocalizedString - } - originalUnitPriceWithCurrency: { - /** - * Original Unit Price with Currency - */ - displayName: () => LocalizedString - /** - * Price with currency details - */ - shortDesc: () => LocalizedString - /** - * The original unit price including currency specification. - */ - longDesc: () => LocalizedString - type: { - fields: { - amount: { - /** - * Amount - */ - displayName: () => LocalizedString - /** - * Price amount - */ - shortDesc: () => LocalizedString - /** - * The numerical value of the unit price. - */ - longDesc: () => LocalizedString - } - currencyCode: { - /** - * Currency Code - */ - displayName: () => LocalizedString - /** - * Currency code - */ - shortDesc: () => LocalizedString - /** - * The ISO 4217 currency code for the price, e.g., USD, EUR. - */ - longDesc: () => LocalizedString - } - } - } - } - sku: { - /** - * SKU - */ - displayName: () => LocalizedString - /** - * Stock Keeping Unit - */ - shortDesc: () => LocalizedString - /** - * The stock keeping unit identifier for the product variant. - */ - longDesc: () => LocalizedString - } - requiresShipping: { - /** - * Requires Shipping - */ - displayName: () => LocalizedString - /** - * Needs shipping - */ - shortDesc: () => LocalizedString - /** - * Indicates if the item requires physical shipping. - */ - longDesc: () => LocalizedString - } - taxable: { - /** - * Taxable - */ - displayName: () => LocalizedString - /** - * Subject to tax - */ - shortDesc: () => LocalizedString - /** - * Specifies whether the item is taxable. - */ - longDesc: () => LocalizedString - } - weight: { - /** - * Weight - */ - displayName: () => LocalizedString - /** - * Item weight - */ - shortDesc: () => LocalizedString - /** - * The weight of the item, used for shipping calculations. - */ - longDesc: () => LocalizedString - type: { - fields: { - value: { - /** - * Weight Value - */ - displayName: () => LocalizedString - /** - * Numerical weight - */ - shortDesc: () => LocalizedString - /** - * The numerical value of the item’s weight. - */ - longDesc: () => LocalizedString - } - unit: { - /** - * Weight Unit - */ - displayName: () => LocalizedString - /** - * Unit of weight - */ - shortDesc: () => LocalizedString - /** - * The unit of measurement for the weight, e.g., kg, lb. - */ - longDesc: () => LocalizedString - } - } - } - } - customAttributes: { - /** - * Custom Attributes - */ - displayName: () => LocalizedString - /** - * Additional item attributes - */ - shortDesc: () => LocalizedString - /** - * Key-value pairs for adding custom metadata to the line item. - */ - longDesc: () => LocalizedString - type: { - element_type: { - fields: { - key: { - /** - * Key - */ - displayName: () => LocalizedString - /** - * Attribute key - */ - shortDesc: () => LocalizedString - /** - * The identifier for the custom attribute. - */ - longDesc: () => LocalizedString - } - value: { - /** - * Value - */ - displayName: () => LocalizedString - /** - * Attribute value - */ - shortDesc: () => LocalizedString - /** - * The value associated with the custom attribute key. - */ - longDesc: () => LocalizedString - } - } - } - } - } - appliedDiscount: { - /** - * Applied Discount - */ - displayName: () => LocalizedString - /** - * Discount on item - */ - shortDesc: () => LocalizedString - /** - * Details of any discount applied to this specific line item. - */ - longDesc: () => LocalizedString - type: { - fields: { - title: { - /** - * Discount Title - */ - displayName: () => LocalizedString - /** - * Discount name - */ - shortDesc: () => LocalizedString - /** - * The name or title of the discount. - */ - longDesc: () => LocalizedString - } - description: { - /** - * Discount Description - */ - displayName: () => LocalizedString - /** - * Discount details - */ - shortDesc: () => LocalizedString - /** - * A description of the discount applied. - */ - longDesc: () => LocalizedString - } - value: { - /** - * Discount Value - */ - displayName: () => LocalizedString - /** - * Discount amount or percentage - */ - shortDesc: () => LocalizedString - /** - * The numerical value of the discount, either as a fixed amount or percentage. - */ - longDesc: () => LocalizedString - } - valueType: { - /** - * Value Type - */ - displayName: () => LocalizedString - /** - * Type of discount value - */ - shortDesc: () => LocalizedString - /** - * Specifies if the discount is a fixed amount or percentage (e.g., "FIXED_AMOUNT", "PERCENTAGE"). - */ - longDesc: () => LocalizedString - } - amountWithCurrency: { - /** - * Amount with Currency - */ - displayName: () => LocalizedString - /** - * Discount amount with currency - */ - shortDesc: () => LocalizedString - /** - * The discount amount including currency details. - */ - longDesc: () => LocalizedString - type: { - fields: { - amount: { - /** - * Amount - */ - displayName: () => LocalizedString - /** - * Discount amount - */ - shortDesc: () => LocalizedString - /** - * The numerical value of the discount. - */ - longDesc: () => LocalizedString - } - currencyCode: { - /** - * Currency Code - */ - displayName: () => LocalizedString - /** - * Discount currency - */ - shortDesc: () => LocalizedString - /** - * The ISO 4217 currency code for the discount amount. - */ - longDesc: () => LocalizedString - } - } - } - } - } - } - } - generatePriceOverride: { - /** - * Generate Price Override - */ - displayName: () => LocalizedString - /** - * Override item price - */ - shortDesc: () => LocalizedString - /** - * If true, allows setting a custom price for the item instead of the original price. - */ - longDesc: () => LocalizedString - } - priceOverride: { - /** - * Price Override - */ - displayName: () => LocalizedString - /** - * Custom item price - */ - shortDesc: () => LocalizedString - /** - * The custom price to override the original unit price. - */ - longDesc: () => LocalizedString - type: { - fields: { - amount: { - /** - * Amount - */ - displayName: () => LocalizedString - /** - * Override amount - */ - shortDesc: () => LocalizedString - /** - * The numerical value of the custom price. - */ - longDesc: () => LocalizedString - } - currencyCode: { - /** - * Currency Code - */ - displayName: () => LocalizedString - /** - * Override currency - */ - shortDesc: () => LocalizedString - /** - * The ISO 4217 currency code for the custom price. - */ - longDesc: () => LocalizedString - } - } - } - } - components: { - /** - * Components - */ - displayName: () => LocalizedString - /** - * Bundle components - */ - shortDesc: () => LocalizedString - /** - * Details of components if the item is a bundle or composite product. - */ - longDesc: () => LocalizedString - type: { - element_type: { - fields: { - quantity: { - /** - * Quantity - */ - displayName: () => LocalizedString - /** - * Component quantity - */ - shortDesc: () => LocalizedString - /** - * The number of units of this component in the bundle. - */ - longDesc: () => LocalizedString - } - variantId: { - /** - * Variant ID - */ - displayName: () => LocalizedString - /** - * Component variant ID - */ - shortDesc: () => LocalizedString - /** - * The unique identifier of the variant included as a component. - */ - longDesc: () => LocalizedString - } - } - } - } - } - uuid: { - /** - * UUID - */ - displayName: () => LocalizedString - /** - * Unique identifier - */ - shortDesc: () => LocalizedString - /** - * A unique identifier for the line item, often used for tracking or external systems. - */ - longDesc: () => LocalizedString - } - } - } - } + } + } + } + } + Contentful: { + /** + * Contentful + */ + displayName: () => LocalizedString + groups: { + /** + * Documents & Documentation + */ + '0': () => LocalizedString + } + /** + * Connect to Contentful to manage your content, assets, and content models + */ + shortDesc: () => LocalizedString + /** + * Integrate with Contentful to automate content management workflows. Create, update, publish, and manage entries, assets, and content types. Monitor content changes with real-time webhook triggers. This integration provides full access to the Contentful Content Management API for comprehensive headless CMS automation. + */ + longDesc: () => LocalizedString + connectionMessage: { + /** + * Connect to Contentful + */ + title: () => LocalizedString + /** + * To connect to Contentful, you will need a **Content Management API (CMA) Token**. + + ## Getting Your CMA Token + + 1. Log in to your [Contentful](https://app.contentful.com) account + 2. Go to **Settings** (gear icon in the top navigation) + 3. Select **CMA tokens** from the left sidebar + 4. Click **Create personal access token** + 5. Give your token a descriptive name (e.g., "Qore Integration") + 6. Click **Generate** and copy the generated token + + **Important:** The token is only shown once. Make sure to copy and save it securely. + + ## Permissions + + The CMA token inherits the permissions of the user who created it. Ensure the user has appropriate access to the spaces and environments you want to manage. + */ + content: () => LocalizedString + } + actions: { + get_entry: { + /** + * Get an Entry + */ + displayName: () => LocalizedString + /** + * Returns attributes of a specific entry + */ + shortDesc: () => LocalizedString + /** + * Retrieves a single entry by its ID from the specified space and environment. Returns all entry fields with their values in the default locale. + */ + longDesc: () => LocalizedString + groups: { + /** + * Entries + */ + '0': () => LocalizedString + } + options: { + space_id: { + /** + * Space + */ + displayName: () => LocalizedString + /** + * The Contentful space to use + */ + shortDesc: () => LocalizedString + /** + * Select the Contentful space containing the entry. + */ + longDesc: () => LocalizedString } - appliedDiscount: { + environment_id: { /** - * Applied Discount + * Environment */ displayName: () => LocalizedString /** - * Order-wide discount + * The environment to use (default: master) */ shortDesc: () => LocalizedString /** - * Details of a discount applied to the entire draft order. + * Select the environment within the space. Defaults to "master" if not specified. */ longDesc: () => LocalizedString - type: { - fields: { - title: { - /** - * Discount Title - */ - displayName: () => LocalizedString - /** - * Discount name - */ - shortDesc: () => LocalizedString - /** - * The name or title of the order-wide discount. - */ - longDesc: () => LocalizedString - } - description: { - /** - * Discount Description - */ - displayName: () => LocalizedString - /** - * Discount details - */ - shortDesc: () => LocalizedString - /** - * A description of the order-wide discount. - */ - longDesc: () => LocalizedString - } - value: { - /** - * Discount Value - */ - displayName: () => LocalizedString - /** - * Discount amount or percentage - */ - shortDesc: () => LocalizedString - /** - * The numerical value of the discount, either as a fixed amount or percentage. - */ - longDesc: () => LocalizedString - } - valueType: { - /** - * Value Type - */ - displayName: () => LocalizedString - /** - * Type of discount value - */ - shortDesc: () => LocalizedString - /** - * Specifies if the discount is a fixed amount or percentage (e.g., "FIXED_AMOUNT", "PERCENTAGE"). - */ - longDesc: () => LocalizedString - } - amountWithCurrency: { - /** - * Amount with Currency - */ - displayName: () => LocalizedString - /** - * Discount amount with currency - */ - shortDesc: () => LocalizedString - /** - * The discount amount including currency details. - */ - longDesc: () => LocalizedString - type: { - fields: { - amount: { - /** - * Amount - */ - displayName: () => LocalizedString - /** - * Discount amount - */ - shortDesc: () => LocalizedString - /** - * The numerical value of the discount. - */ - longDesc: () => LocalizedString - } - currencyCode: { - /** - * Currency Code - */ - displayName: () => LocalizedString - /** - * Discount currency - */ - shortDesc: () => LocalizedString - /** - * The ISO 4217 currency code for the discount amount. - */ - longDesc: () => LocalizedString - } - } - } - } - } - } } - shippingLine: { + content_type_id: { /** - * Shipping Line + * Content Type */ displayName: () => LocalizedString /** - * Shipping details + * The content type of the entry */ shortDesc: () => LocalizedString /** - * Details about the shipping method and cost for the draft order. + * Select the content type to filter entries by type. */ longDesc: () => LocalizedString - type: { - fields: { - price: { - /** - * Price - */ - displayName: () => LocalizedString - /** - * Shipping cost - */ - shortDesc: () => LocalizedString - /** - * The cost of shipping as a numerical value. - */ - longDesc: () => LocalizedString - } - priceWithCurrency: { - /** - * Price with Currency - */ - displayName: () => LocalizedString - /** - * Shipping cost with currency - */ - shortDesc: () => LocalizedString - /** - * The shipping cost including currency specification. - */ - longDesc: () => LocalizedString - type: { - fields: { - amount: { - /** - * Amount - */ - displayName: () => LocalizedString - /** - * Shipping amount - */ - shortDesc: () => LocalizedString - /** - * The numerical value of the shipping cost. - */ - longDesc: () => LocalizedString - } - currencyCode: { - /** - * Currency Code - */ - displayName: () => LocalizedString - /** - * Shipping currency - */ - shortDesc: () => LocalizedString - /** - * The ISO 4217 currency code for the shipping cost. - */ - longDesc: () => LocalizedString - } - } - } - } - title: { - /** - * Title - */ - displayName: () => LocalizedString - /** - * Shipping method name - */ - shortDesc: () => LocalizedString - /** - * The name of the shipping method, e.g., "Standard Shipping". - */ - longDesc: () => LocalizedString - } - shippingRateHandle: { - /** - * Shipping Rate Handle - */ - displayName: () => LocalizedString - /** - * Shipping rate identifier - */ - shortDesc: () => LocalizedString - /** - * A unique identifier for the shipping rate, often tied to a predefined rate in Shopify. - */ - longDesc: () => LocalizedString - } - } - } } - customAttributes: { + entry_id: { /** - * Custom Attributes + * Entry */ displayName: () => LocalizedString /** - * Order custom attributes + * The entry to retrieve */ shortDesc: () => LocalizedString /** - * Key-value pairs for adding custom metadata to the draft order. + * Select or enter the ID of the entry to retrieve. */ longDesc: () => LocalizedString - type: { - element_type: { - fields: { - key: { - /** - * Key - */ - displayName: () => LocalizedString - /** - * Attribute key - */ - shortDesc: () => LocalizedString - /** - * The identifier for the custom attribute. - */ - longDesc: () => LocalizedString - } - value: { - /** - * Value - */ - displayName: () => LocalizedString - /** - * Attribute value - */ - shortDesc: () => LocalizedString - /** - * The value associated with the custom attribute key. - */ - longDesc: () => LocalizedString - } - } - } - } } - allowDiscountCodesInCheckout: { + } + } + get_entry_with_replacement: { + /** + * Get an Entry with Replacement + */ + displayName: () => LocalizedString + /** + * Replaces text fields with new values using specific tags; returns new values as output + */ + shortDesc: () => LocalizedString + /** + * Retrieves an entry and performs text replacements on all string fields. For each replacement pair, all occurrences of the tag are replaced with the specified value. Useful for template-based content. + */ + longDesc: () => LocalizedString + groups: { + /** + * Entries + */ + '0': () => LocalizedString + } + options: { + space_id: { /** - * Allow Discount Codes in Checkout + * Space */ displayName: () => LocalizedString /** - * Enable discount codes + * The Contentful space to use */ shortDesc: () => LocalizedString /** - * If true, allows customers to apply discount codes during checkout from this draft order. + * Select the Contentful space containing the entry. */ longDesc: () => LocalizedString } - acceptAutomaticDiscounts: { + environment_id: { /** - * Accept Automatic Discounts + * Environment */ displayName: () => LocalizedString /** - * Apply automatic discounts + * The environment to use (default: master) */ shortDesc: () => LocalizedString /** - * If true, automatically applies any eligible store-wide discounts to the draft order. + * Select the environment within the space. Defaults to "master" if not specified. */ longDesc: () => LocalizedString } - discountCodes: { + content_type_id: { /** - * Discount Codes + * Content Type */ displayName: () => LocalizedString /** - * List of discount codes + * The content type of the entry */ shortDesc: () => LocalizedString /** - * A list of discount codes to apply to the draft order. + * Select the content type to filter entries by type. */ longDesc: () => LocalizedString - type: { - element_type: { - /** - * Discount Code - */ - displayName: () => LocalizedString - /** - * Single discount code - */ - shortDesc: () => LocalizedString - /** - * A specific discount code to apply to the order. - */ - longDesc: () => LocalizedString - } - } } - metafields: { + entry_id: { /** - * Metafields + * Entry */ displayName: () => LocalizedString /** - * Custom metadata + * The entry to retrieve and apply replacements to */ shortDesc: () => LocalizedString /** - * Additional metadata fields for the draft order, useful for custom integrations. + * Select or enter the ID of the entry to retrieve. + */ + longDesc: () => LocalizedString + } + replacements: { + /** + * Replacements + */ + displayName: () => LocalizedString + /** + * List of tag/value pairs for text replacement + */ + shortDesc: () => LocalizedString + /** + * Provide a list of replacement pairs. Each pair has a "tag" (placeholder to find) and a "value" (text to replace it with). All string fields in the entry will be processed. */ longDesc: () => LocalizedString type: { element_type: { fields: { - namespace: { - /** - * Namespace - */ - displayName: () => LocalizedString - /** - * Metafield namespace - */ - shortDesc: () => LocalizedString - /** - * A grouping identifier for the metafield. - */ - longDesc: () => LocalizedString - } - key: { + tag: { /** - * Key + * Tag */ displayName: () => LocalizedString /** - * Metafield key + * The tag/placeholder to search for in text fields */ shortDesc: () => LocalizedString /** - * The specific identifier for the metafield. + * The tag or placeholder text to search for within all string fields of the entry. */ longDesc: () => LocalizedString } @@ -233593,25 +238889,11 @@ export type TranslationFunctions = { */ displayName: () => LocalizedString /** - * Metafield value - */ - shortDesc: () => LocalizedString - /** - * The value stored in the metafield. - */ - longDesc: () => LocalizedString - } - type: { - /** - * Type - */ - displayName: () => LocalizedString - /** - * Metafield data type + * The replacement value */ shortDesc: () => LocalizedString /** - * The data type of the metafield value, e.g., string, integer, JSON. + * The text that will replace all occurrences of the tag. */ longDesc: () => LocalizedString } @@ -233619,2495 +238901,2291 @@ export type TranslationFunctions = { } } } - localizedFields: { + } + } + create_entry: { + /** + * Create an Entry + */ + displayName: () => LocalizedString + /** + * Creates a new entry + */ + shortDesc: () => LocalizedString + /** + * Creates a new entry of the specified content type in the given space and environment. Optionally publishes the entry immediately after creation. + */ + longDesc: () => LocalizedString + groups: { + /** + * Entries + */ + '0': () => LocalizedString + } + options: { + space_id: { /** - * Localized Fields + * Space */ displayName: () => LocalizedString /** - * Localized content + * The Contentful space to use */ shortDesc: () => LocalizedString /** - * Fields that support localized content for different regions or languages. + * Select the Contentful space where the entry will be created. */ longDesc: () => LocalizedString - type: { - element_type: { - fields: { - value: { - /** - * Value - */ - displayName: () => LocalizedString - /** - * Localized value - */ - shortDesc: () => LocalizedString - /** - * The localized content value. - */ - longDesc: () => LocalizedString - } - key: { - /** - * Key - */ - displayName: () => LocalizedString - /** - * Localized field key - */ - shortDesc: () => LocalizedString - /** - * The identifier for the localized field. - */ - longDesc: () => LocalizedString - } - locale: { - /** - * Locale - */ - displayName: () => LocalizedString - /** - * Language/region code - */ - shortDesc: () => LocalizedString - /** - * The locale code for the localized content, e.g., "en-US", "fr-CA". - */ - longDesc: () => LocalizedString - } - } - } - } } - presentmentCurrencyCode: { + environment_id: { /** - * Presentment Currency Code + * Environment */ displayName: () => LocalizedString /** - * Display currency + * The environment to use (default: master) */ shortDesc: () => LocalizedString /** - * The ISO 4217 currency code for displaying prices to the customer, e.g., USD, CAD. + * Select the environment within the space. Defaults to "master" if not specified. */ longDesc: () => LocalizedString } - poNumber: { + content_type_id: { /** - * PO Number + * Content Type */ displayName: () => LocalizedString /** - * Purchase order number + * The content type for the new entry */ shortDesc: () => LocalizedString /** - * The purchase order number associated with the draft order, often used for B2B transactions. + * Select the content type that defines the schema for the new entry. */ longDesc: () => LocalizedString } - paymentTerms: { + fields: { /** - * Payment Terms + * Fields */ displayName: () => LocalizedString /** - * Payment conditions + * The field values for the new entry */ shortDesc: () => LocalizedString /** - * Defines the payment terms for the draft order, such as due dates or schedules. + * Provide the field values as a key-value object. Keys should match the field IDs of the content type. */ longDesc: () => LocalizedString - type: { - fields: { - paymentTermsTemplateId: { - /** - * Payment Terms Template ID - */ - displayName: () => LocalizedString - /** - * Template identifier - */ - shortDesc: () => LocalizedString - /** - * The ID of a predefined payment terms template in Shopify. - */ - longDesc: () => LocalizedString - } - paymentSchedules: { - /** - * Payment Schedules - */ - displayName: () => LocalizedString - /** - * Payment due dates - */ - shortDesc: () => LocalizedString - /** - * A list of scheduled payments with due dates and amounts. - */ - longDesc: () => LocalizedString - type: { - element_type: { - fields: { - dueAt: { - /** - * Due At - */ - displayName: () => LocalizedString - /** - * Due date - */ - shortDesc: () => LocalizedString - /** - * The date when the payment is due. - */ - longDesc: () => LocalizedString - } - amount: { - /** - * Amount - */ - displayName: () => LocalizedString - /** - * Payment amount - */ - shortDesc: () => LocalizedString - /** - * The numerical value of the payment due. - */ - longDesc: () => LocalizedString - } - currencyCode: { - /** - * Currency Code - */ - displayName: () => LocalizedString - /** - * Payment currency - */ - shortDesc: () => LocalizedString - /** - * The ISO 4217 currency code for the payment amount. - */ - longDesc: () => LocalizedString - } - issuedAt: { - /** - * Issued At - */ - displayName: () => LocalizedString - /** - * Issue date - */ - shortDesc: () => LocalizedString - /** - * The date when the payment schedule was issued. - */ - longDesc: () => LocalizedString - } - } - } - } - } - } - } } - purchasingEntity: { + publish: { /** - * Purchasing Entity + * Publish */ displayName: () => LocalizedString /** - * Buyer details + * Whether to publish the entry after creation */ shortDesc: () => LocalizedString /** - * Details about the entity making the purchase, such as a company or individual. + * If enabled, the entry will be published immediately after creation. Otherwise, it will be saved as a draft. */ longDesc: () => LocalizedString - type: { - fields: { - customerId: { - /** - * Customer ID - */ - displayName: () => LocalizedString - /** - * Purchaser customer ID - */ - shortDesc: () => LocalizedString - /** - * The ID of the customer making the purchase. - */ - longDesc: () => LocalizedString - } - companyId: { - /** - * Company ID - */ - displayName: () => LocalizedString - /** - * Purchaser company ID - */ - shortDesc: () => LocalizedString - /** - * The ID of the company making the purchase. - */ - longDesc: () => LocalizedString - } - companyLocationId: { - /** - * Company Location ID - */ - displayName: () => LocalizedString - /** - * Company location ID - */ - shortDesc: () => LocalizedString - /** - * The ID of the specific company location making the purchase. - */ - longDesc: () => LocalizedString - } - companyContactId: { - /** - * Company Contact ID - */ - displayName: () => LocalizedString - /** - * Contact ID - */ - shortDesc: () => LocalizedString - /** - * The ID of the company contact responsible for the purchase. - */ - longDesc: () => LocalizedString - } - } - } } - reserveInventoryUntil: { + } + } + update_entry: { + /** + * Update an Entry + */ + displayName: () => LocalizedString + /** + * Updates a specific entry by its ID + */ + shortDesc: () => LocalizedString + /** + * Updates an existing entry with new field values. Only the specified fields are updated; other fields remain unchanged. + */ + longDesc: () => LocalizedString + groups: { + /** + * Entries + */ + '0': () => LocalizedString + } + options: { + space_id: { /** - * Reserve Inventory Until + * Space */ displayName: () => LocalizedString /** - * Inventory reservation deadline + * The Contentful space to use */ shortDesc: () => LocalizedString /** - * The date and time until which the inventory is reserved for this draft order. + * Select the Contentful space containing the entry. */ longDesc: () => LocalizedString } - sourceName: { + environment_id: { /** - * Source Name + * Environment */ displayName: () => LocalizedString /** - * Order source + * The environment to use (default: master) */ shortDesc: () => LocalizedString /** - * The source of the draft order, e.g., "web", "manual", or an app name. + * Select the environment within the space. Defaults to "master" if not specified. */ longDesc: () => LocalizedString } - visibleToCustomer: { + content_type_id: { /** - * Visible to Customer + * Content Type */ displayName: () => LocalizedString /** - * Customer visibility + * The content type of the entry */ shortDesc: () => LocalizedString /** - * If true, the draft order is visible to the customer, e.g., in their account. + * Select the content type to filter entries by type. + */ + longDesc: () => LocalizedString + } + entry_id: { + /** + * Entry + */ + displayName: () => LocalizedString + /** + * The entry to update + */ + shortDesc: () => LocalizedString + /** + * Select or enter the ID of the entry to update. + */ + longDesc: () => LocalizedString + } + fields: { + /** + * Fields + */ + displayName: () => LocalizedString + /** + * The field values to update + */ + shortDesc: () => LocalizedString + /** + * Provide the field values to update as a key-value object. Only the specified fields will be changed. */ longDesc: () => LocalizedString } } } - 'create-customer': { + delete_entry: { /** - * Create Customer + * Delete an Entry */ displayName: () => LocalizedString /** - * Creates a new customer in Shopify + * Permanently removes a specific entry */ shortDesc: () => LocalizedString /** - * Adds a new customer to the Shopify store, allowing you to store their contact information, addresses, and marketing preferences for future orders and engagement. + * Permanently deletes an entry from the space. If the entry is published, it will be unpublished first. This action is irreversible. */ longDesc: () => LocalizedString + groups: { + /** + * Entries + */ + '0': () => LocalizedString + } options: { - email: { - /** - * Email - */ - displayName: () => LocalizedString - /** - * Customer email address - */ - shortDesc: () => LocalizedString - /** - * The primary email address of the customer, used for account creation, notifications, and marketing. - */ - longDesc: () => LocalizedString - } - phone: { + space_id: { /** - * Phone + * Space */ displayName: () => LocalizedString /** - * Customer phone number + * The Contentful space to use */ shortDesc: () => LocalizedString /** - * The customer’s phone number, useful for contact purposes and SMS marketing if consented. + * Select the Contentful space containing the entry. */ longDesc: () => LocalizedString } - firstName: { + environment_id: { /** - * First Name + * Environment */ displayName: () => LocalizedString /** - * Customer first name + * The environment to use (default: master) */ shortDesc: () => LocalizedString /** - * The first name of the customer, used for personalization and address details. + * Select the environment within the space. Defaults to "master" if not specified. */ longDesc: () => LocalizedString } - lastName: { + content_type_id: { /** - * Last Name + * Content Type */ displayName: () => LocalizedString /** - * Customer last name + * The content type of the entry */ shortDesc: () => LocalizedString /** - * The last name of the customer, completing their full name for identification and shipping. + * Select the content type to filter entries by type. */ longDesc: () => LocalizedString } - locale: { + entry_id: { /** - * Locale + * Entry */ displayName: () => LocalizedString /** - * Customer language/region + * The entry to delete */ shortDesc: () => LocalizedString /** - * The preferred language and region code for the customer, e.g., "en-US" or "fr-CA", affecting communication and formatting. + * Select or enter the ID of the entry to permanently remove. */ longDesc: () => LocalizedString } - note: { + } + } + publish_entry: { + /** + * Publish an Entry + */ + displayName: () => LocalizedString + /** + * Changes entry status to "published" + */ + shortDesc: () => LocalizedString + /** + * Publishes a draft entry, making it available through the Content Delivery API. + */ + longDesc: () => LocalizedString + groups: { + /** + * Entries + */ + '0': () => LocalizedString + } + options: { + space_id: { /** - * Note + * Space */ displayName: () => LocalizedString /** - * Notes about the customer + * The Contentful space to use */ shortDesc: () => LocalizedString /** - * Internal notes about the customer, such as preferences, special instructions, or account details. + * Select the Contentful space containing the entry. */ longDesc: () => LocalizedString } - taxExempt: { + environment_id: { /** - * Tax Exempt + * Environment */ displayName: () => LocalizedString /** - * Exempt customer from taxes + * The environment to use (default: master) */ shortDesc: () => LocalizedString /** - * Indicates whether the customer is exempt from taxes on all purchases. Set to true for tax-exempt entities. + * Select the environment within the space. Defaults to "master" if not specified. */ longDesc: () => LocalizedString } - taxExemptions: { + content_type_id: { /** - * Tax Exemptions + * Content Type */ displayName: () => LocalizedString /** - * Specific tax exemptions + * The content type to filter entries */ shortDesc: () => LocalizedString /** - * A list of specific tax exemptions applied to the customer, such as regional or category-specific exemptions. + * Select the content type to filter the entry dropdown. */ longDesc: () => LocalizedString - type: { - element_type: { - /** - * Tax Exemption Type - */ - displayName: () => LocalizedString - /** - * Type of tax exemption - */ - shortDesc: () => LocalizedString - /** - * Defines the specific tax exemption applied, e.g., GST, VAT, or sales tax. - */ - longDesc: () => LocalizedString - } - } } - tags: { + entry_id: { /** - * Tags + * Entry */ displayName: () => LocalizedString /** - * Customer tags + * The entry to publish */ shortDesc: () => LocalizedString /** - * A list of tags to categorize or filter the customer, e.g., "VIP", "wholesale", "new". + * Select or enter the ID of the entry to publish. */ longDesc: () => LocalizedString - type: { - element_type: { - /** - * Tag - */ - displayName: () => LocalizedString - /** - * Single tag value - */ - shortDesc: () => LocalizedString - /** - * A single string value used to tag the customer for organization or segmentation. - */ - longDesc: () => LocalizedString - } - } } - addresses: { + } + } + unpublish_entry: { + /** + * Unpublish an Entry + */ + displayName: () => LocalizedString + /** + * Puts an entry back into "draft" state + */ + shortDesc: () => LocalizedString + /** + * Unpublishes an entry, removing it from the Content Delivery API and reverting it to draft state. + */ + longDesc: () => LocalizedString + groups: { + /** + * Entries + */ + '0': () => LocalizedString + } + options: { + space_id: { /** - * Addresses + * Space */ displayName: () => LocalizedString /** - * Customer addresses + * The Contentful space to use */ shortDesc: () => LocalizedString /** - * A list of addresses associated with the customer, such as shipping or billing addresses. + * Select the Contentful space containing the entry. */ longDesc: () => LocalizedString - type: { - element_type: { - fields: { - address1: { - /** - * Address Line 1 - */ - displayName: () => LocalizedString - /** - * Primary address line - */ - shortDesc: () => LocalizedString - /** - * The street address or PO Box for the customer. - */ - longDesc: () => LocalizedString - } - address2: { - /** - * Address Line 2 - */ - displayName: () => LocalizedString - /** - * Secondary address line - */ - shortDesc: () => LocalizedString - /** - * Additional address information like apartment or suite number. - */ - longDesc: () => LocalizedString - } - city: { - /** - * City - */ - displayName: () => LocalizedString - /** - * Customer city - */ - shortDesc: () => LocalizedString - /** - * The city associated with the customer’s address. - */ - longDesc: () => LocalizedString - } - province: { - /** - * Province/State - */ - displayName: () => LocalizedString - /** - * Customer province or state - */ - shortDesc: () => LocalizedString - /** - * The province, state, or region for the customer’s address. - */ - longDesc: () => LocalizedString - } - country: { - /** - * Country - */ - displayName: () => LocalizedString - /** - * Customer country - */ - shortDesc: () => LocalizedString - /** - * The country for the customer’s address. - */ - longDesc: () => LocalizedString - } - zip: { - /** - * ZIP/Postal Code - */ - displayName: () => LocalizedString - /** - * Customer postal code - */ - shortDesc: () => LocalizedString - /** - * The ZIP or postal code for the customer’s address. - */ - longDesc: () => LocalizedString - } - firstName: { - /** - * First Name - */ - displayName: () => LocalizedString - /** - * Address first name - */ - shortDesc: () => LocalizedString - /** - * The first name associated with this specific address. - */ - longDesc: () => LocalizedString - } - lastName: { - /** - * Last Name - */ - displayName: () => LocalizedString - /** - * Address last name - */ - shortDesc: () => LocalizedString - /** - * The last name associated with this specific address. - */ - longDesc: () => LocalizedString - } - company: { - /** - * Company - */ - displayName: () => LocalizedString - /** - * Address company name - */ - shortDesc: () => LocalizedString - /** - * The company name tied to this address, if applicable. - */ - longDesc: () => LocalizedString - } - phone: { - /** - * Phone - */ - displayName: () => LocalizedString - /** - * Address phone number - */ - shortDesc: () => LocalizedString - /** - * The phone number linked to this specific address. - */ - longDesc: () => LocalizedString - } - } - } - } } - emailMarketingConsent: { + environment_id: { /** - * Email Marketing Consent + * Environment */ displayName: () => LocalizedString /** - * Email marketing preferences + * The environment to use (default: master) */ shortDesc: () => LocalizedString /** - * Details about the customer’s consent to receive email marketing communications. + * Select the environment within the space. Defaults to "master" if not specified. */ longDesc: () => LocalizedString - type: { - fields: { - marketingState: { - /** - * Marketing State - */ - displayName: () => LocalizedString - /** - * Consent status - */ - shortDesc: () => LocalizedString - /** - * The current state of email marketing consent, e.g., "SUBSCRIBED", "UNSUBSCRIBED", or "PENDING". - */ - longDesc: () => LocalizedString - } - marketingOptInLevel: { - /** - * Marketing Opt-In Level - */ - displayName: () => LocalizedString - /** - * Opt-in level - */ - shortDesc: () => LocalizedString - /** - * The level of consent provided, e.g., "SINGLE_OPT_IN" or "CONFIRMED_OPT_IN", based on how consent was obtained. - */ - longDesc: () => LocalizedString - } - } - } } - smsMarketingConsent: { + content_type_id: { /** - * SMS Marketing Consent + * Content Type */ displayName: () => LocalizedString /** - * SMS marketing preferences + * The content type to filter entries */ shortDesc: () => LocalizedString /** - * Details about the customer’s consent to receive SMS marketing messages. + * Select the content type to filter the entry dropdown. */ longDesc: () => LocalizedString - type: { - fields: { - marketingState: { - /** - * Marketing State - */ - displayName: () => LocalizedString - /** - * Consent status - */ - shortDesc: () => LocalizedString - /** - * The current state of SMS marketing consent, e.g., "SUBSCRIBED", "UNSUBSCRIBED", or "PENDING". - */ - longDesc: () => LocalizedString - } - marketingOptInLevel: { - /** - * Marketing Opt-In Level - */ - displayName: () => LocalizedString - /** - * Opt-in level - */ - shortDesc: () => LocalizedString - /** - * The level of consent provided for SMS, e.g., "SINGLE_OPT_IN" or "CONFIRMED_OPT_IN". - */ - longDesc: () => LocalizedString - } - } - } } - metafields: { + entry_id: { /** - * Metafields + * Entry */ displayName: () => LocalizedString /** - * Custom metadata + * The entry to unpublish */ shortDesc: () => LocalizedString /** - * Additional metadata fields for the customer, useful for custom integrations or data storage. + * Select or enter the ID of the entry to unpublish. */ longDesc: () => LocalizedString - type: { - element_type: { - fields: { - namespace: { - /** - * Namespace - */ - displayName: () => LocalizedString - /** - * Metafield namespace - */ - shortDesc: () => LocalizedString - /** - * A grouping identifier for the metafield to organize related data. - */ - longDesc: () => LocalizedString - } - key: { - /** - * Key - */ - displayName: () => LocalizedString - /** - * Metafield key - */ - shortDesc: () => LocalizedString - /** - * The specific identifier for the metafield. - */ - longDesc: () => LocalizedString - } - value: { - /** - * Value - */ - displayName: () => LocalizedString - /** - * Metafield value - */ - shortDesc: () => LocalizedString - /** - * The value stored in the metafield, which can be a string, number, or JSON. - */ - longDesc: () => LocalizedString - } - type: { - /** - * Type - */ - displayName: () => LocalizedString - /** - * Metafield data type - */ - shortDesc: () => LocalizedString - /** - * The data type of the metafield value, e.g., "string", "integer", "json". - */ - longDesc: () => LocalizedString - } - } - } - } } } } - 'create-blog-entry': { + archive_entry: { /** - * Create Blog Entry + * Archive/Unarchive an Entry */ displayName: () => LocalizedString /** - * Creates a new blog post in Shopify + * Archives/Unarchives an unpublished entry */ shortDesc: () => LocalizedString /** - * Adds a new blog post to a specified blog in your Shopify store, allowing you to publish content such as articles, news, or updates for customers. + * Archives or unarchives an entry. The entry must be unpublished before it can be archived. Archived entries are hidden from the default entry list. */ longDesc: () => LocalizedString + groups: { + /** + * Entries + */ + '0': () => LocalizedString + } options: { - blogId: { + space_id: { /** - * Blog ID + * Space */ displayName: () => LocalizedString /** - * ID of the target blog + * The Contentful space to use */ shortDesc: () => LocalizedString /** - * The unique identifier of the blog where the new entry will be created. Required to associate the post with a specific blog. + * Select the Contentful space containing the entry. */ longDesc: () => LocalizedString } - title: { + environment_id: { /** - * Title + * Environment */ displayName: () => LocalizedString /** - * Blog post title + * The environment to use (default: master) */ shortDesc: () => LocalizedString /** - * The headline or title of the blog post, displayed prominently to readers. + * Select the environment within the space. Defaults to "master" if not specified. */ longDesc: () => LocalizedString } - content: { + content_type_id: { /** - * Content + * Content Type */ displayName: () => LocalizedString /** - * Blog post content + * The content type to filter entries */ shortDesc: () => LocalizedString /** - * The main body of the blog post, which can include text, HTML, or other formatted content to convey the message or story. + * Select the content type to filter the entry dropdown. */ longDesc: () => LocalizedString } - author: { + entry_id: { /** - * Author + * Entry */ displayName: () => LocalizedString /** - * Author of the blog post + * The entry to archive or unarchive */ shortDesc: () => LocalizedString /** - * The name of the person or entity credited with writing the blog post, displayed as the author. + * Select or enter the ID of the entry. */ longDesc: () => LocalizedString } - tags: { + archive: { /** - * Tags + * Archive */ displayName: () => LocalizedString /** - * Tags for the blog post + * Set to true to archive, false to unarchive */ shortDesc: () => LocalizedString /** - * A list of keywords or categories to tag the blog post, aiding in searchability and organization. + * When enabled, the entry will be archived. When disabled, the entry will be unarchived. */ longDesc: () => LocalizedString - type: { - element_type: { - /** - * Tag - */ - displayName: () => LocalizedString - /** - * Single tag value - */ - shortDesc: () => LocalizedString - /** - * A single string value used to tag the blog post, e.g., "news", "tutorial", "promotion". - */ - longDesc: () => LocalizedString - } - } } - summary: { + } + } + search_entries: { + /** + * Search Entries + */ + displayName: () => LocalizedString + /** + * Searches for entries + */ + shortDesc: () => LocalizedString + /** + * Searches for entries of a specific content type with optional full-text search. Returns a paginated list of entries. + */ + longDesc: () => LocalizedString + groups: { + /** + * Entries + */ + '0': () => LocalizedString + } + options: { + space_id: { /** - * Summary + * Space */ displayName: () => LocalizedString /** - * Blog post summary + * The Contentful space to search */ shortDesc: () => LocalizedString /** - * A brief overview or excerpt of the blog post, often used as a teaser or preview in blog listings. + * Select the Contentful space to search in. */ longDesc: () => LocalizedString } - published: { + environment_id: { /** - * Published + * Environment */ displayName: () => LocalizedString /** - * Publication status + * The environment to use (default: master) */ shortDesc: () => LocalizedString /** - * Indicates whether the blog post is published (true) or saved as a draft (false) upon creation. + * Select the environment within the space. Defaults to "master" if not specified. */ longDesc: () => LocalizedString } - image: { + content_type_id: { /** - * Image + * Content Type */ displayName: () => LocalizedString /** - * Featured image for the post + * The content type to search */ shortDesc: () => LocalizedString /** - * The primary image associated with the blog post, used for visual appeal in previews or headers. + * Select the content type to filter results by. + */ + longDesc: () => LocalizedString + } + query: { + /** + * Search Query + */ + displayName: () => LocalizedString + /** + * Full-text search query + */ + shortDesc: () => LocalizedString + /** + * Optional text to search across all text fields of the entries. + */ + longDesc: () => LocalizedString + } + limit: { + /** + * Limit + */ + displayName: () => LocalizedString + /** + * Maximum number of entries to return + */ + shortDesc: () => LocalizedString + /** + * The maximum number of entries to return. Default is 100, maximum is 1000. + */ + longDesc: () => LocalizedString + } + skip: { + /** + * Skip + */ + displayName: () => LocalizedString + /** + * Number of entries to skip + */ + shortDesc: () => LocalizedString + /** + * The number of entries to skip for pagination. Default is 0. */ longDesc: () => LocalizedString - type: { - fields: { - altText: { - /** - * Alt Text - */ - displayName: () => LocalizedString - /** - * Image alt text - */ - shortDesc: () => LocalizedString - /** - * Descriptive text for the image, used for accessibility and SEO purposes. - */ - longDesc: () => LocalizedString - } - url: { - /** - * URL - */ - displayName: () => LocalizedString - /** - * Image URL - */ - shortDesc: () => LocalizedString - /** - * The web address or source location of the image file to be used in the blog post. - */ - longDesc: () => LocalizedString - } - } - } } } } - 'add-tag-to-customer': { + get_asset: { /** - * Add Tag to Customer + * Get an Asset */ displayName: () => LocalizedString /** - * Adds tags to an existing customer + * Returns attributes of a specific asset */ shortDesc: () => LocalizedString /** - * Appends or replaces tags for a specified customer in Shopify, useful for categorization, segmentation, or tracking purposes. + * Retrieves a single asset by its ID, returning metadata including title, description, file URL, MIME type, and size. */ longDesc: () => LocalizedString + groups: { + /** + * Assets + */ + '0': () => LocalizedString + } options: { - customerId: { + space_id: { /** - * Customer ID + * Space */ displayName: () => LocalizedString /** - * ID of the customer + * The Contentful space to use */ shortDesc: () => LocalizedString /** - * The unique identifier of the customer to whom tags will be added. Required to target the correct customer. + * Select the Contentful space containing the asset. */ longDesc: () => LocalizedString } - tags: { + environment_id: { /** - * Tags + * Environment */ displayName: () => LocalizedString /** - * Tags to add + * The environment to use (default: master) */ shortDesc: () => LocalizedString /** - * A list of tags to apply to the customer, such as "VIP", "loyal", or "newsletter". Can be appended or replace existing tags based on the append option. + * Select the environment within the space. Defaults to "master" if not specified. */ longDesc: () => LocalizedString } - append: { + asset_id: { /** - * Append + * Asset */ displayName: () => LocalizedString /** - * Append or replace tags + * The asset to retrieve */ shortDesc: () => LocalizedString /** - * If true, adds the new tags to the existing ones; if false, replaces all existing tags with the new ones. + * Select or enter the ID of the asset to retrieve. */ longDesc: () => LocalizedString } } } - 'create-transaction': { + create_asset: { /** - * Create Transaction + * Create an Asset */ displayName: () => LocalizedString /** - * Creates a transaction for an order + * Creates a new asset */ shortDesc: () => LocalizedString /** - * Records a financial transaction (e.g., payment, refund) for a specific order in Shopify, linked to a payment gateway. + * Creates a new asset from a URL. The asset will be processed (downloaded and stored) automatically. Optionally publishes the asset after creation. */ longDesc: () => LocalizedString + groups: { + /** + * Assets + */ + '0': () => LocalizedString + } options: { - orderId: { + space_id: { /** - * Order ID + * Space */ displayName: () => LocalizedString /** - * ID of the order + * The Contentful space to use */ shortDesc: () => LocalizedString /** - * The unique identifier of the order to which this transaction applies. Required to associate the transaction correctly. + * Select the Contentful space where the asset will be created. */ longDesc: () => LocalizedString } - amount: { + environment_id: { /** - * Amount + * Environment */ displayName: () => LocalizedString /** - * Transaction amount + * The environment to use (default: master) */ shortDesc: () => LocalizedString /** - * The numerical value of the transaction, such as the amount paid or refunded. + * Select the environment within the space. Defaults to "master" if not specified. */ longDesc: () => LocalizedString } - currency: { + title: { /** - * Currency + * Title */ displayName: () => LocalizedString /** - * Transaction currency + * The asset title */ shortDesc: () => LocalizedString /** - * The ISO 4217 currency code for the transaction amount, e.g., "USD", "EUR". + * A descriptive title for the asset. */ longDesc: () => LocalizedString } - type: { + description: { /** - * Type + * Description */ displayName: () => LocalizedString /** - * Transaction type + * The asset description */ shortDesc: () => LocalizedString /** - * The type of transaction, such as "authorization", "capture", "sale", or "refund". Defines the transaction’s purpose. + * An optional description for the asset. */ longDesc: () => LocalizedString } - parentTransactionId: { + file_name: { /** - * Parent Transaction ID + * File Name */ displayName: () => LocalizedString /** - * ID of parent transaction + * The file name for the asset */ shortDesc: () => LocalizedString /** - * The ID of a previous transaction this one relates to, e.g., for refunds or captures linked to an authorization. + * The file name including extension (e.g., "photo.jpg"). */ longDesc: () => LocalizedString } - gateway: { + file_url: { /** - * Gateway + * File URL */ displayName: () => LocalizedString /** - * Payment gateway + * The URL of the file to upload */ shortDesc: () => LocalizedString /** - * The payment gateway used for the transaction, e.g., "shopify_payments", "paypal", or a custom gateway name. + * The publicly accessible URL from which Contentful will download the file. */ longDesc: () => LocalizedString } - finalCapture: { + content_type: { /** - * Final Capture + * Content Type */ displayName: () => LocalizedString /** - * Complete capture flag + * The MIME type of the file */ shortDesc: () => LocalizedString /** - * If true, indicates this is the final capture of funds for an authorization; if false, partial captures may follow. + * The MIME type of the file (e.g., "image/jpeg", "application/pdf"). + */ + longDesc: () => LocalizedString + } + publish: { + /** + * Publish + */ + displayName: () => LocalizedString + /** + * Whether to publish the asset after creation + */ + shortDesc: () => LocalizedString + /** + * If enabled, the asset will be published immediately after processing. */ longDesc: () => LocalizedString } } } - 'create-company': { + update_asset: { /** - * Create Company + * Update an Asset */ displayName: () => LocalizedString /** - * Creates a new company in Shopify + * Updates an asset by its ID */ shortDesc: () => LocalizedString /** - * Adds a new company entity to Shopify, typically for B2B purposes, including contact and location details for wholesale or enterprise customers. + * Updates the title and/or description of an existing asset. */ longDesc: () => LocalizedString + groups: { + /** + * Assets + */ + '0': () => LocalizedString + } options: { - companyName: { - /** - * Name - */ - displayName: () => LocalizedString - /** - * Company name - */ - shortDesc: () => LocalizedString - /** - * The official name of the company, used for identification and display purposes. - */ - longDesc: () => LocalizedString - } - externalId: { + space_id: { /** - * External ID + * Space */ displayName: () => LocalizedString /** - * External identifier + * The Contentful space to use */ shortDesc: () => LocalizedString /** - * A unique identifier from an external system, useful for syncing or referencing the company outside Shopify. + * Select the Contentful space containing the asset. */ longDesc: () => LocalizedString } - note: { + environment_id: { /** - * Note + * Environment */ displayName: () => LocalizedString /** - * Company notes + * The environment to use (default: master) */ shortDesc: () => LocalizedString /** - * Internal notes about the company, such as account details or special instructions. + * Select the environment within the space. Defaults to "master" if not specified. */ longDesc: () => LocalizedString } - customerSince: { + asset_id: { /** - * Customer Since + * Asset */ displayName: () => LocalizedString /** - * Start date + * The asset to update */ shortDesc: () => LocalizedString /** - * The date the company became a customer, formatted as a timestamp, useful for tracking tenure. + * Select or enter the ID of the asset to update. */ longDesc: () => LocalizedString } - contactProperties: { + title: { /** - * Contact Properties + * Title */ displayName: () => LocalizedString /** - * Primary contact details + * New title for the asset */ shortDesc: () => LocalizedString /** - * Details about the primary contact person for the company. + * The updated title for the asset. */ longDesc: () => LocalizedString - type: { - fields: { - firstName: { - /** - * First Name - */ - displayName: () => LocalizedString - /** - * Contact first name - */ - shortDesc: () => LocalizedString - /** - * The first name of the company’s primary contact. - */ - longDesc: () => LocalizedString - } - lastName: { - /** - * Last Name - */ - displayName: () => LocalizedString - /** - * Contact last name - */ - shortDesc: () => LocalizedString - /** - * The last name of the company’s primary contact. - */ - longDesc: () => LocalizedString - } - email: { - /** - * Email - */ - displayName: () => LocalizedString - /** - * Contact email - */ - shortDesc: () => LocalizedString - /** - * The email address of the primary contact, used for communication. - */ - longDesc: () => LocalizedString - } - phone: { - /** - * Phone - */ - displayName: () => LocalizedString - /** - * Contact phone - */ - shortDesc: () => LocalizedString - /** - * The phone number of the primary contact. - */ - longDesc: () => LocalizedString - } - title: { - /** - * Title - */ - displayName: () => LocalizedString - /** - * Contact job title - */ - shortDesc: () => LocalizedString - /** - * The job title or role of the primary contact within the company. - */ - longDesc: () => LocalizedString - } - locale: { - /** - * Locale - */ - displayName: () => LocalizedString - /** - * Contact language/region - */ - shortDesc: () => LocalizedString - /** - * The preferred language and region code for the contact, e.g., "en-US". - */ - longDesc: () => LocalizedString - } - } - } } - locationProperties: { + description: { /** - * Location Properties + * Description */ displayName: () => LocalizedString /** - * Company location details + * New description for the asset */ shortDesc: () => LocalizedString /** - * Details about the company’s physical location, including shipping and billing addresses. + * The updated description for the asset. */ longDesc: () => LocalizedString - type: { - fields: { - locationName: { - /** - * Location Name - */ - displayName: () => LocalizedString - /** - * Name of location - */ - shortDesc: () => LocalizedString - /** - * A descriptive name for this company location, e.g., "Headquarters". - */ - longDesc: () => LocalizedString - } - phone: { - /** - * Phone - */ - displayName: () => LocalizedString - /** - * Location phone - */ - shortDesc: () => LocalizedString - /** - * The phone number associated with this company location. - */ - longDesc: () => LocalizedString - } - note: { - /** - * Note - */ - displayName: () => LocalizedString - /** - * Location notes - */ - shortDesc: () => LocalizedString - /** - * Internal notes about this location, such as delivery instructions. - */ - longDesc: () => LocalizedString - } - externalId: { - /** - * External ID - */ - displayName: () => LocalizedString - /** - * Location external ID - */ - shortDesc: () => LocalizedString - /** - * An external identifier for this location, useful for integration with other systems. - */ - longDesc: () => LocalizedString - } - taxExempt: { - /** - * Tax Exempt - */ - displayName: () => LocalizedString - /** - * Tax exemption status - */ - shortDesc: () => LocalizedString - /** - * Indicates if this location is exempt from taxes. - */ - longDesc: () => LocalizedString - } - taxRegistrationId: { - /** - * Tax Registration ID - */ - displayName: () => LocalizedString - /** - * Tax ID - */ - shortDesc: () => LocalizedString - /** - * The tax registration number for this location, e.g., VAT or EIN. - */ - longDesc: () => LocalizedString - } - taxExemptions: { - /** - * Tax Exemptions - */ - displayName: () => LocalizedString - /** - * Specific tax exemptions - */ - shortDesc: () => LocalizedString - /** - * A list of specific tax exemptions applied to this location. - */ - longDesc: () => LocalizedString - type: { - element_type: { - /** - * Tax Exemption Type - */ - displayName: () => LocalizedString - /** - * Type of exemption - */ - shortDesc: () => LocalizedString - /** - * Defines the specific tax exemption, e.g., "GST", "VAT". - */ - longDesc: () => LocalizedString - } - } - } - locale: { - /** - * Locale - */ - displayName: () => LocalizedString - /** - * Location language/region - */ - shortDesc: () => LocalizedString - /** - * The preferred language and region code for this location, e.g., "en-CA". - */ - longDesc: () => LocalizedString - } - shippingAddress: { - /** - * Shipping Address - */ - displayName: () => LocalizedString - /** - * Shipping address - */ - shortDesc: () => LocalizedString - /** - * The address where goods are shipped for this company location. - */ - longDesc: () => LocalizedString - type: { - fields: { - address1: { - /** - * Address Line 1 - */ - displayName: () => LocalizedString - /** - * Primary shipping line - */ - shortDesc: () => LocalizedString - /** - * The street address or PO Box for shipping. - */ - longDesc: () => LocalizedString - } - address2: { - /** - * Address Line 2 - */ - displayName: () => LocalizedString - /** - * Secondary shipping line - */ - shortDesc: () => LocalizedString - /** - * Additional shipping address details, e.g., suite number. - */ - longDesc: () => LocalizedString - } - city: { - /** - * City - */ - displayName: () => LocalizedString - /** - * Shipping city - */ - shortDesc: () => LocalizedString - /** - * The city for the shipping address. - */ - longDesc: () => LocalizedString - } - zoneCode: { - /** - * Zone Code - */ - displayName: () => LocalizedString - /** - * Province/state code - */ - shortDesc: () => LocalizedString - /** - * The code for the province or state, e.g., "CA" for California. - */ - longDesc: () => LocalizedString - } - countryCode: { - /** - * Country Code - */ - displayName: () => LocalizedString - /** - * Country code - */ - shortDesc: () => LocalizedString - /** - * The ISO 3166-1 alpha-2 country code, e.g., "US". - */ - longDesc: () => LocalizedString - } - zip: { - /** - * ZIP/Postal Code - */ - displayName: () => LocalizedString - /** - * Shipping postal code - */ - shortDesc: () => LocalizedString - /** - * The ZIP or postal code for the shipping address. - */ - longDesc: () => LocalizedString - } - } - } - } - billingSameAsShipping: { - /** - * Billing Same as Shipping - */ - displayName: () => LocalizedString - /** - * Use shipping for billing - */ - shortDesc: () => LocalizedString - /** - * If true, the shipping address is also used as the billing address. - */ - longDesc: () => LocalizedString - } - billingAddress: { - /** - * Billing Address - */ - displayName: () => LocalizedString - /** - * Billing address - */ - shortDesc: () => LocalizedString - /** - * The address used for billing purposes, if different from shipping. - */ - longDesc: () => LocalizedString - type: { - fields: { - address1: { - /** - * Address Line 1 - */ - displayName: () => LocalizedString - /** - * Primary billing line - */ - shortDesc: () => LocalizedString - /** - * The street address or PO Box for billing. - */ - longDesc: () => LocalizedString - } - address2: { - /** - * Address Line 2 - */ - displayName: () => LocalizedString - /** - * Secondary billing line - */ - shortDesc: () => LocalizedString - /** - * Additional billing address details, e.g., apartment number. - */ - longDesc: () => LocalizedString - } - city: { - /** - * City - */ - displayName: () => LocalizedString - /** - * Billing city - */ - shortDesc: () => LocalizedString - /** - * The city for the billing address. - */ - longDesc: () => LocalizedString - } - zoneCode: { - /** - * Zone Code - */ - displayName: () => LocalizedString - /** - * Province/state code - */ - shortDesc: () => LocalizedString - /** - * The code for the province or state, e.g., "NY". - */ - longDesc: () => LocalizedString - } - countryCode: { - /** - * Country Code - */ - displayName: () => LocalizedString - /** - * Country code - */ - shortDesc: () => LocalizedString - /** - * The ISO 3166-1 alpha-2 country code, e.g., "CA". - */ - longDesc: () => LocalizedString - } - zip: { - /** - * ZIP/Postal Code - */ - displayName: () => LocalizedString - /** - * Billing postal code - */ - shortDesc: () => LocalizedString - /** - * The ZIP or postal code for the billing address. - */ - longDesc: () => LocalizedString - } - } - } - } - } - } } } } - } - expressions: { - '&&': { - /** - * And - */ - displayName: () => LocalizedString - /** - * Logical AND operator - */ - shortDesc: () => LocalizedString - /** - * Combines multiple conditions where all must be true - */ - longDesc: () => LocalizedString - } - '||': { - /** - * Or - */ - displayName: () => LocalizedString - /** - * Logical OR operator - */ - shortDesc: () => LocalizedString - /** - * Combines multiple conditions where at least one must be true - */ - longDesc: () => LocalizedString - } - '==': { - /** - * Equals - */ - displayName: () => LocalizedString - /** - * Field equals value - */ - shortDesc: () => LocalizedString - /** - * Matches records where the field equals the specified value - */ - longDesc: () => LocalizedString - } - '!=': { - /** - * Not Equals - */ - displayName: () => LocalizedString - /** - * Field does not equal value - */ - shortDesc: () => LocalizedString - /** - * Matches records where the field does not equal the specified value - */ - longDesc: () => LocalizedString - } - '>': { - /** - * Greater Than - */ - displayName: () => LocalizedString - /** - * Field is greater than value - */ - shortDesc: () => LocalizedString - /** - * Matches records where the field value is greater than the specified value - */ - longDesc: () => LocalizedString - } - '>=': { - /** - * Greater Than or Equal - */ - displayName: () => LocalizedString - /** - * Field is greater than or equal to value - */ - shortDesc: () => LocalizedString - /** - * Matches records where the field value is greater than or equal to the specified value - */ - longDesc: () => LocalizedString - } - '<': { - /** - * Less Than - */ - displayName: () => LocalizedString - /** - * Field is less than value - */ - shortDesc: () => LocalizedString - /** - * Matches records where the field value is less than the specified value - */ - longDesc: () => LocalizedString - } - '<=': { - /** - * Less Than or Equal - */ - displayName: () => LocalizedString - /** - * Field is less than or equal to value - */ - shortDesc: () => LocalizedString - /** - * Matches records where the field value is less than or equal to the specified value - */ - longDesc: () => LocalizedString - } - contains: { - /** - * Contains - */ - displayName: () => LocalizedString - /** - * Field contains value - */ - shortDesc: () => LocalizedString - /** - * Matches records where the field contains the specified text (case-insensitive) - */ - longDesc: () => LocalizedString - } - 'is-set': { - /** - * Is Set - */ - displayName: () => LocalizedString - /** - * Field has a value - */ - shortDesc: () => LocalizedString - /** - * Matches records where the field has a non-empty value - */ - longDesc: () => LocalizedString - } - 'is-not-set': { + delete_asset: { /** - * Is Not Set + * Delete an Asset */ displayName: () => LocalizedString /** - * Field is empty + * Permanently removes an unpublished asset */ shortDesc: () => LocalizedString /** - * Matches records where the field is empty or not set + * Permanently deletes an asset. If the asset is published, it will be unpublished first. This action is irreversible. */ longDesc: () => LocalizedString + groups: { + /** + * Assets + */ + '0': () => LocalizedString + } + options: { + space_id: { + /** + * Space + */ + displayName: () => LocalizedString + /** + * The Contentful space to use + */ + shortDesc: () => LocalizedString + /** + * Select the Contentful space containing the asset. + */ + longDesc: () => LocalizedString + } + environment_id: { + /** + * Environment + */ + displayName: () => LocalizedString + /** + * The environment to use (default: master) + */ + shortDesc: () => LocalizedString + /** + * Select the environment within the space. Defaults to "master" if not specified. + */ + longDesc: () => LocalizedString + } + asset_id: { + /** + * Asset + */ + displayName: () => LocalizedString + /** + * The asset to delete + */ + shortDesc: () => LocalizedString + /** + * Select or enter the ID of the asset to permanently remove. + */ + longDesc: () => LocalizedString + } + } } - } - searchOptions: { - orderBy: { + publish_asset: { /** - * Order By + * Publish an Asset */ displayName: () => LocalizedString /** - * Sort results by a specific field + * Changes asset status to "published" */ shortDesc: () => LocalizedString /** - * Define the field and direction to sort search results + * Publishes a draft asset, making it available through the Content Delivery API. */ longDesc: () => LocalizedString - type: { - fields: { - field: { - /** - * Field - */ - displayName: () => LocalizedString - /** - * The field to sort by - */ - shortDesc: () => LocalizedString - /** - * The name of the field to use for sorting results - */ - longDesc: () => LocalizedString - } - direction: { - /** - * Direction - */ - displayName: () => LocalizedString - /** - * Sort direction - */ - shortDesc: () => LocalizedString - /** - * The direction to sort results (ascending or descending) - */ - longDesc: () => LocalizedString - } + groups: { + /** + * Assets + */ + '0': () => LocalizedString + } + options: { + space_id: { + /** + * Space + */ + displayName: () => LocalizedString + /** + * The Contentful space to use + */ + shortDesc: () => LocalizedString + /** + * Select the Contentful space containing the asset. + */ + longDesc: () => LocalizedString + } + environment_id: { + /** + * Environment + */ + displayName: () => LocalizedString + /** + * The environment to use (default: master) + */ + shortDesc: () => LocalizedString + /** + * Select the environment within the space. Defaults to "master" if not specified. + */ + longDesc: () => LocalizedString + } + asset_id: { + /** + * Asset + */ + displayName: () => LocalizedString + /** + * The asset to publish + */ + shortDesc: () => LocalizedString + /** + * Select or enter the ID of the asset to publish. + */ + longDesc: () => LocalizedString } } } - } - triggers: { - 'shopify-abandoned-cart-trigger': { + unpublish_asset: { /** - * Shopify New Abandoned Cart + * Unpublish an Asset */ displayName: () => LocalizedString /** - * Triggers when a customer abandons a checkout in Shopify + * Puts an asset back into "draft" state */ shortDesc: () => LocalizedString /** - * This trigger activates when a Shopify checkout is created but not completed within the specified time window. Use this to send recovery emails, offer discounts, or analyze cart abandonment patterns. + * Unpublishes an asset, removing it from the Content Delivery API and reverting it to draft state. */ longDesc: () => LocalizedString + groups: { + /** + * Assets + */ + '0': () => LocalizedString + } options: { - abandonedHours: { + space_id: { /** - * Abandoned Hours + * Space */ displayName: () => LocalizedString /** - * Time window to consider a cart abandoned + * The Contentful space to use */ shortDesc: () => LocalizedString /** - * Specify how many hours must pass since cart creation without completion for it to be considered abandoned. Values range from 1 hour to 168 hours (one week). + * Select the Contentful space containing the asset. + */ + longDesc: () => LocalizedString + } + environment_id: { + /** + * Environment + */ + displayName: () => LocalizedString + /** + * The environment to use (default: master) + */ + shortDesc: () => LocalizedString + /** + * Select the environment within the space. Defaults to "master" if not specified. + */ + longDesc: () => LocalizedString + } + asset_id: { + /** + * Asset + */ + displayName: () => LocalizedString + /** + * The asset to unpublish + */ + shortDesc: () => LocalizedString + /** + * Select or enter the ID of the asset to unpublish. */ longDesc: () => LocalizedString } } } - 'shopify-blog-trigger': { + archive_asset: { /** - * Shopify Blog Created + * Archive/Unarchive an Asset */ displayName: () => LocalizedString /** - * Triggers when a new blog is created in Shopify + * Archives/Unarchives an unpublished asset */ shortDesc: () => LocalizedString /** - * This trigger activates whenever a new blog (not an article) is created in your Shopify store. Use this to monitor blog creation or automate follow-up tasks. + * Archives or unarchives an asset. The asset must be unpublished before it can be archived. */ longDesc: () => LocalizedString + groups: { + /** + * Assets + */ + '0': () => LocalizedString + } + options: { + space_id: { + /** + * Space + */ + displayName: () => LocalizedString + /** + * The Contentful space to use + */ + shortDesc: () => LocalizedString + /** + * Select the Contentful space containing the asset. + */ + longDesc: () => LocalizedString + } + environment_id: { + /** + * Environment + */ + displayName: () => LocalizedString + /** + * The environment to use (default: master) + */ + shortDesc: () => LocalizedString + /** + * Select the environment within the space. Defaults to "master" if not specified. + */ + longDesc: () => LocalizedString + } + asset_id: { + /** + * Asset + */ + displayName: () => LocalizedString + /** + * The asset to archive or unarchive + */ + shortDesc: () => LocalizedString + /** + * Select or enter the ID of the asset. + */ + longDesc: () => LocalizedString + } + archive: { + /** + * Archive + */ + displayName: () => LocalizedString + /** + * Set to true to archive, false to unarchive + */ + shortDesc: () => LocalizedString + /** + * When enabled, the asset will be archived. When disabled, the asset will be unarchived. + */ + longDesc: () => LocalizedString + } + } } - 'shopify-blog-entry-trigger': { + search_assets: { /** - * Shopify New Blog Article + * Search Assets */ displayName: () => LocalizedString /** - * Triggers when a blog article is created or published + * Searches for assets */ shortDesc: () => LocalizedString /** - * This trigger activates when a new article is created or published in a specified Shopify blog. Use this to automate social media sharing, email notifications, or content distribution workflows. + * Searches for assets with optional full-text search and MIME type filtering. Returns a paginated list of assets. */ longDesc: () => LocalizedString + groups: { + /** + * Assets + */ + '0': () => LocalizedString + } options: { - blog_title: { + space_id: { /** - * Blog + * Space */ displayName: () => LocalizedString /** - * Select the blog to monitor + * The Contentful space to search */ shortDesc: () => LocalizedString /** - * Choose which Shopify blog to monitor for new articles. + * Select the Contentful space to search in. */ longDesc: () => LocalizedString } - entryStatus: { + environment_id: { /** - * Article Status + * Environment */ displayName: () => LocalizedString /** - * Filter articles by publication status + * The environment to use (default: master) */ shortDesc: () => LocalizedString /** - * Choose whether to trigger on all articles, only published articles, or only draft articles. + * Select the environment within the space. Defaults to "master" if not specified. + */ + longDesc: () => LocalizedString + } + query: { + /** + * Search Query + */ + displayName: () => LocalizedString + /** + * Full-text search query + */ + shortDesc: () => LocalizedString + /** + * Optional text to search across asset titles and descriptions. + */ + longDesc: () => LocalizedString + } + mime_type_group: { + /** + * MIME Type Group + */ + displayName: () => LocalizedString + /** + * Filter by file type group + */ + shortDesc: () => LocalizedString + /** + * Optionally filter assets by MIME type group (e.g., image, video, audio, pdfdocument). + */ + longDesc: () => LocalizedString + } + limit: { + /** + * Limit + */ + displayName: () => LocalizedString + /** + * Maximum number of assets to return + */ + shortDesc: () => LocalizedString + /** + * The maximum number of assets to return. Default is 100, maximum is 1000. + */ + longDesc: () => LocalizedString + } + skip: { + /** + * Skip + */ + displayName: () => LocalizedString + /** + * Number of assets to skip + */ + shortDesc: () => LocalizedString + /** + * The number of assets to skip for pagination. Default is 0. */ longDesc: () => LocalizedString } } } - 'shopify-customer-created-trigger': { + get_content_type: { /** - * Shopify Customer Created + * Get a Content Type */ displayName: () => LocalizedString /** - * Triggers when a new customer account is created + * Returns attributes of a specific content type */ shortDesc: () => LocalizedString /** - * This trigger activates whenever a new customer registers or is created in your Shopify store. Use this to send welcome emails, add customers to marketing lists, or create records in other systems. + * Retrieves a content type by its ID, including its name, description, and field definitions. */ longDesc: () => LocalizedString + groups: { + /** + * Content Types + */ + '0': () => LocalizedString + } + options: { + space_id: { + /** + * Space + */ + displayName: () => LocalizedString + /** + * The Contentful space to use + */ + shortDesc: () => LocalizedString + /** + * Select the Contentful space containing the content type. + */ + longDesc: () => LocalizedString + } + environment_id: { + /** + * Environment + */ + displayName: () => LocalizedString + /** + * The environment to use (default: master) + */ + shortDesc: () => LocalizedString + /** + * Select the environment within the space. Defaults to "master" if not specified. + */ + longDesc: () => LocalizedString + } + content_type_id: { + /** + * Content Type + */ + displayName: () => LocalizedString + /** + * The content type to retrieve + */ + shortDesc: () => LocalizedString + /** + * Select the content type to retrieve details for. + */ + longDesc: () => LocalizedString + } + } } - 'shopify-customer-updated-trigger': { + create_content_type: { /** - * Shopify Customer Updated + * Create a Content Type */ displayName: () => LocalizedString /** - * Triggers when customer information is modified + * Creates a new content type */ shortDesc: () => LocalizedString /** - * This trigger activates whenever customer information is updated in your Shopify store. Use this to sync customer data with other systems, track specific customer changes, or update marketing preferences. + * Creates a new content type with the specified name, description, and field definitions. The content type will be created in draft state. */ longDesc: () => LocalizedString + groups: { + /** + * Content Types + */ + '0': () => LocalizedString + } + options: { + space_id: { + /** + * Space + */ + displayName: () => LocalizedString + /** + * The Contentful space to use + */ + shortDesc: () => LocalizedString + /** + * Select the Contentful space where the content type will be created. + */ + longDesc: () => LocalizedString + } + environment_id: { + /** + * Environment + */ + displayName: () => LocalizedString + /** + * The environment to use (default: master) + */ + shortDesc: () => LocalizedString + /** + * Select the environment within the space. Defaults to "master" if not specified. + */ + longDesc: () => LocalizedString + } + name: { + /** + * Name + */ + displayName: () => LocalizedString + /** + * The content type name + */ + shortDesc: () => LocalizedString + /** + * A descriptive name for the content type (e.g., "Blog Post", "Product"). + */ + longDesc: () => LocalizedString + } + description: { + /** + * Description + */ + displayName: () => LocalizedString + /** + * The content type description + */ + shortDesc: () => LocalizedString + /** + * An optional description explaining the purpose of this content type. + */ + longDesc: () => LocalizedString + } + fields: { + /** + * Fields + */ + displayName: () => LocalizedString + /** + * The field definitions for the content type + */ + shortDesc: () => LocalizedString + /** + * A list of field definitions. Each field requires an ID, name, and type. Supported types: Symbol, Text, Integer, Number, Date, Boolean, RichText, Link, Array, Object, Location. + */ + longDesc: () => LocalizedString + type: { + element_type: { + fields: { + id: { + /** + * Field ID + */ + displayName: () => LocalizedString + /** + * Unique identifier for the field + */ + shortDesc: () => LocalizedString + /** + * A unique ID for the field (e.g., "heroImage", "publishDate"). Must be unique within the content type. + */ + longDesc: () => LocalizedString + } + name: { + /** + * Field Name + */ + displayName: () => LocalizedString + /** + * Display name for the field + */ + shortDesc: () => LocalizedString + /** + * A human-readable name for the field (e.g., "Hero Image", "Publish Date"). + */ + longDesc: () => LocalizedString + } + type: { + /** + * Field Type + */ + displayName: () => LocalizedString + /** + * Data type (Symbol, Text, Integer, Number, Date, Boolean, RichText, Link, Array, Object, Location) + */ + shortDesc: () => LocalizedString + /** + * The data type for the field. Supported types: Symbol (short text), Text (long text), Integer, Number, Date, Boolean, RichText, Link, Array, Object, Location. + */ + longDesc: () => LocalizedString + } + required: { + /** + * Required + */ + displayName: () => LocalizedString + /** + * Whether the field is required + */ + shortDesc: () => LocalizedString + /** + * If enabled, entries must provide a value for this field. + */ + longDesc: () => LocalizedString + } + localized: { + /** + * Localized + */ + displayName: () => LocalizedString + /** + * Whether the field supports localization + */ + shortDesc: () => LocalizedString + /** + * If enabled, the field can have different values for different locales. + */ + longDesc: () => LocalizedString + } + } + } + } + } + } } - 'shopify-new-order-trigger': { + update_content_type: { /** - * Shopify New Order + * Update a Content Type */ displayName: () => LocalizedString /** - * Triggers when a new order is placed with the specified status + * Updates a specific content type by its ID */ shortDesc: () => LocalizedString /** - * This trigger activates when a new order is created in your Shopify store that matches the specified status filter. Use this to process orders, update inventory in other systems, or send custom notifications based on order status. + * Updates the name and/or description of an existing content type. */ longDesc: () => LocalizedString + groups: { + /** + * Content Types + */ + '0': () => LocalizedString + } options: { - orderStatus: { + space_id: { /** - * Order Status + * Space */ displayName: () => LocalizedString /** - * Filter orders by their status + * The Contentful space to use */ shortDesc: () => LocalizedString /** - * Select which type of orders to monitor based on their status (e.g., any, paid, fulfilled, cancelled). This lets you create different workflows for different order conditions. + * Select the Contentful space containing the content type. + */ + longDesc: () => LocalizedString + } + environment_id: { + /** + * Environment + */ + displayName: () => LocalizedString + /** + * The environment to use (default: master) + */ + shortDesc: () => LocalizedString + /** + * Select the environment within the space. Defaults to "master" if not specified. + */ + longDesc: () => LocalizedString + } + content_type_id: { + /** + * Content Type + */ + displayName: () => LocalizedString + /** + * The content type to update + */ + shortDesc: () => LocalizedString + /** + * Select the content type to update. + */ + longDesc: () => LocalizedString + } + name: { + /** + * Name + */ + displayName: () => LocalizedString + /** + * New name for the content type + */ + shortDesc: () => LocalizedString + /** + * The updated name for the content type. + */ + longDesc: () => LocalizedString + } + description: { + /** + * Description + */ + displayName: () => LocalizedString + /** + * New description for the content type + */ + shortDesc: () => LocalizedString + /** + * The updated description for the content type. */ longDesc: () => LocalizedString } } } - } - } - Zoom: { - /** - * Zoom - */ - displayName: () => LocalizedString - groups: { - /** - * Video Conferencing & Meetings - */ - '0': () => LocalizedString - } - /** - * Video conferencing and online meeting platform - */ - shortDesc: () => LocalizedString - /** - * Zoom is a video conferencing and online meeting platform that allows users to host and join virtual meetings, webinars, and video conferences. It offers features such as screen sharing, recording, and chat functionalities to enhance collaboration and communication among participants. - */ - longDesc: () => LocalizedString - actions: { - meetingDelete: { - groups: { - /** - * Meetings - */ - '0': () => LocalizedString - } - } - meeting: { - groups: { - /** - * Meetings - */ - '0': () => LocalizedString - } - } - meetingUpdate: { - groups: { - /** - * Meetings - */ - '0': () => LocalizedString - } - } - meetings: { - groups: { - /** - * Meetings - */ - '0': () => LocalizedString - } - } - meetingCreate: { - groups: { - /** - * Meetings - */ - '0': () => LocalizedString - } - } - Getameetingsummary: { - groups: { - /** - * Meetings - */ - '0': () => LocalizedString - } - } - meetingRegistrants: { - groups: { - /** - * Meeting Registrants - */ - '0': () => LocalizedString - } - } - meetingRegistrantCreate: { - groups: { - /** - * Meeting Registrants - */ - '0': () => LocalizedString - } - } - pastMeetingParticipants: { - groups: { - /** - * Meeting Participants - */ - '0': () => LocalizedString - } - } - recordingDelete: { - groups: { - /** - * Recordings - */ - '0': () => LocalizedString - } - } - recordingGet: { - groups: { - /** - * Recordings - */ - '0': () => LocalizedString - } - } - recordingsList: { - groups: { - /** - * Recordings - */ - '0': () => LocalizedString - } - } - webinars: { - groups: { - /** - * Webinars - */ - '0': () => LocalizedString - } - } - webinarCreate: { - groups: { - /** - * Webinars - */ - '0': () => LocalizedString - } - } - webinarDelete: { - groups: { - /** - * Webinars - */ - '0': () => LocalizedString - } - } - webinar: { - groups: { - /** - * Webinars - */ - '0': () => LocalizedString - } - } - webinarUpdate: { - groups: { - /** - * Webinars - */ - '0': () => LocalizedString - } - } - webinarRegistrants: { - groups: { - /** - * Webinar Registrants - */ - '0': () => LocalizedString - } - } - webinarRegistrantCreate: { + delete_content_type: { + /** + * Delete a Content Type + */ + displayName: () => LocalizedString + /** + * Permanently removes a deactivated content type + */ + shortDesc: () => LocalizedString + /** + * Permanently deletes a content type. The content type must be deactivated (unpublished) first. This action is irreversible. + */ + longDesc: () => LocalizedString groups: { /** - * Webinar Registrants + * Content Types */ '0': () => LocalizedString } - } - listWebinarParticipants: { - groups: { - /** - * Webinar Participants - */ - '0': () => LocalizedString + options: { + space_id: { + /** + * Space + */ + displayName: () => LocalizedString + /** + * The Contentful space to use + */ + shortDesc: () => LocalizedString + /** + * Select the Contentful space containing the content type. + */ + longDesc: () => LocalizedString + } + environment_id: { + /** + * Environment + */ + displayName: () => LocalizedString + /** + * The environment to use (default: master) + */ + shortDesc: () => LocalizedString + /** + * Select the environment within the space. Defaults to "master" if not specified. + */ + longDesc: () => LocalizedString + } + content_type_id: { + /** + * Content Type + */ + displayName: () => LocalizedString + /** + * The content type to delete + */ + shortDesc: () => LocalizedString + /** + * Select the content type to permanently remove. + */ + longDesc: () => LocalizedString + } } } - } - triggers: { - new_meeting: { + activate_content_type: { /** - * New Meeting + * Activate a Content Type */ displayName: () => LocalizedString /** - * Triggers when a Zoom meeting is created, started, or ended. + * Activates a content type by its ID */ shortDesc: () => LocalizedString /** - * Monitors Zoom meetings and triggers when meetings are created, started (live), or ended (previous meetings) based on the selected event type. Returns meeting details including topic, duration, join URL, and meeting type. + * Publishes (activates) a content type, making it available for creating entries. */ longDesc: () => LocalizedString + groups: { + /** + * Content Types + */ + '0': () => LocalizedString + } options: { - meeting_event_type: { + space_id: { /** - * Meeting Event Type + * Space */ displayName: () => LocalizedString /** - * Type of meeting event to monitor + * The Contentful space to use */ shortDesc: () => LocalizedString /** - * Specifies which type of meeting event should trigger this action. Choose "any" to trigger on all meeting creations, "live" for when meetings start, or "previous_meetings" for when meetings end. + * Select the Contentful space containing the content type. + */ + longDesc: () => LocalizedString + } + environment_id: { + /** + * Environment + */ + displayName: () => LocalizedString + /** + * The environment to use (default: master) + */ + shortDesc: () => LocalizedString + /** + * Select the environment within the space. Defaults to "master" if not specified. + */ + longDesc: () => LocalizedString + } + content_type_id: { + /** + * Content Type + */ + displayName: () => LocalizedString + /** + * The content type to activate + */ + shortDesc: () => LocalizedString + /** + * Select the content type to activate (publish). */ longDesc: () => LocalizedString } } } - new_webinar: { + deactivate_content_type: { /** - * New Webinar + * Deactivate a Content Type */ displayName: () => LocalizedString /** - * Triggers when a new Zoom webinar is created. + * Changes a content type status to "draft" */ shortDesc: () => LocalizedString /** - * Monitors Zoom webinars and triggers when new webinars are created. Returns webinar details including topic, duration, join URL, registration URL, and webinar type. + * Unpublishes (deactivates) a content type, reverting it to draft state. No new entries can be created for a deactivated content type. */ longDesc: () => LocalizedString + groups: { + /** + * Content Types + */ + '0': () => LocalizedString + } + options: { + space_id: { + /** + * Space + */ + displayName: () => LocalizedString + /** + * The Contentful space to use + */ + shortDesc: () => LocalizedString + /** + * Select the Contentful space containing the content type. + */ + longDesc: () => LocalizedString + } + environment_id: { + /** + * Environment + */ + displayName: () => LocalizedString + /** + * The environment to use (default: master) + */ + shortDesc: () => LocalizedString + /** + * Select the environment within the space. Defaults to "master" if not specified. + */ + longDesc: () => LocalizedString + } + content_type_id: { + /** + * Content Type + */ + displayName: () => LocalizedString + /** + * The content type to deactivate + */ + shortDesc: () => LocalizedString + /** + * Select the content type to deactivate (unpublish). + */ + longDesc: () => LocalizedString + } + } } - new_meeting_summary: { + add_field_to_content_type: { /** - * New Meeting Summary + * Add a Field to a Content Type */ displayName: () => LocalizedString /** - * Triggers when a new Zoom meeting summary is created. + * Adds a new field to a specific content type */ shortDesc: () => LocalizedString /** - * Monitors Zoom meeting summaries and triggers when new summaries are generated after meetings end. Returns summary details including meeting information, host details, and summary timestamps. + * Adds a new field definition to an existing content type. The content type will need to be re-activated after adding the field. */ longDesc: () => LocalizedString + groups: { + /** + * Content Types + */ + '0': () => LocalizedString + } + options: { + space_id: { + /** + * Space + */ + displayName: () => LocalizedString + /** + * The Contentful space to use + */ + shortDesc: () => LocalizedString + /** + * Select the Contentful space containing the content type. + */ + longDesc: () => LocalizedString + } + environment_id: { + /** + * Environment + */ + displayName: () => LocalizedString + /** + * The environment to use (default: master) + */ + shortDesc: () => LocalizedString + /** + * Select the environment within the space. Defaults to "master" if not specified. + */ + longDesc: () => LocalizedString + } + content_type_id: { + /** + * Content Type + */ + displayName: () => LocalizedString + /** + * The content type to add the field to + */ + shortDesc: () => LocalizedString + /** + * Select the content type to modify. + */ + longDesc: () => LocalizedString + } + field_id: { + /** + * Field ID + */ + displayName: () => LocalizedString + /** + * Unique identifier for the new field + */ + shortDesc: () => LocalizedString + /** + * A unique ID for the field (e.g., "heroImage", "publishDate"). Must be unique within the content type. + */ + longDesc: () => LocalizedString + } + field_name: { + /** + * Field Name + */ + displayName: () => LocalizedString + /** + * Display name for the new field + */ + shortDesc: () => LocalizedString + /** + * A human-readable name for the field (e.g., "Hero Image", "Publish Date"). + */ + longDesc: () => LocalizedString + } + field_type: { + /** + * Field Type + */ + displayName: () => LocalizedString + /** + * The data type for the field + */ + shortDesc: () => LocalizedString + /** + * Select the data type: Symbol (short text), Text (long text), Integer, Number, Date, Boolean, RichText, Link, Array, Object, or Location. + */ + longDesc: () => LocalizedString + } + required: { + /** + * Required + */ + displayName: () => LocalizedString + /** + * Whether the field is required + */ + shortDesc: () => LocalizedString + /** + * If enabled, entries must provide a value for this field. + */ + longDesc: () => LocalizedString + } + localized: { + /** + * Localized + */ + displayName: () => LocalizedString + /** + * Whether the field supports localization + */ + shortDesc: () => LocalizedString + /** + * If enabled, the field can have different values for different locales. + */ + longDesc: () => LocalizedString + } + } } - } - } - Confluence: { - /** - * Confluence - */ - displayName: () => LocalizedString - groups: { - /** - * Documents & Documentation - */ - '0': () => LocalizedString - } - /** - * Confluence is a collaboration tool used to help teams collaborate and share knowledge efficiently. - */ - shortDesc: () => LocalizedString - /** - * Confluence is a powerful collaboration tool that allows teams to create, share, and manage content in a centralized platform. It is designed to enhance team productivity by providing a space for documentation, project management, and knowledge sharing. With features like real-time editing, commenting, and integration with other tools, Confluence helps teams work together more effectively. - */ - longDesc: () => LocalizedString - triggers: { - new_attachment: { + update_field_of_content_type: { /** - * New Attachment + * Update a Field of a Content Type */ displayName: () => LocalizedString /** - * Triggers when a new attachment is uploaded to Confluence. + * Updates a field inside a specific content type */ shortDesc: () => LocalizedString /** - * Monitors Confluence for newly uploaded attachments with optional filtering by status and media type. Triggers when new attachments are detected. + * Updates the properties of an existing field in a content type. */ longDesc: () => LocalizedString + groups: { + /** + * Content Types + */ + '0': () => LocalizedString + } options: { - status: { + space_id: { /** - * Status + * Space */ displayName: () => LocalizedString /** - * Filter by attachment status + * The Contentful space to use */ shortDesc: () => LocalizedString /** - * Filter attachments by their status (current, archived, or trashed). + * Select the Contentful space containing the content type. */ longDesc: () => LocalizedString } - mediaType: { + environment_id: { /** - * Media Type + * Environment */ displayName: () => LocalizedString /** - * Filter by media type + * The environment to use (default: master) */ shortDesc: () => LocalizedString /** - * Filter attachments by their media type (e.g., image/png, application/pdf). + * Select the environment within the space. Defaults to "master" if not specified. + */ + longDesc: () => LocalizedString + } + content_type_id: { + /** + * Content Type + */ + displayName: () => LocalizedString + /** + * The content type containing the field + */ + shortDesc: () => LocalizedString + /** + * Select the content type to modify. + */ + longDesc: () => LocalizedString + } + field_id: { + /** + * Field + */ + displayName: () => LocalizedString + /** + * The field to update + */ + shortDesc: () => LocalizedString + /** + * Select the field to update. + */ + longDesc: () => LocalizedString + } + field_name: { + /** + * Field Name + */ + displayName: () => LocalizedString + /** + * New display name for the field + */ + shortDesc: () => LocalizedString + /** + * The updated display name for the field. + */ + longDesc: () => LocalizedString + } + required: { + /** + * Required + */ + displayName: () => LocalizedString + /** + * Whether the field is required + */ + shortDesc: () => LocalizedString + /** + * Update whether entries must provide a value for this field. + */ + longDesc: () => LocalizedString + } + localized: { + /** + * Localized + */ + displayName: () => LocalizedString + /** + * Whether the field supports localization + */ + shortDesc: () => LocalizedString + /** + * Update whether the field can have different values for different locales. */ longDesc: () => LocalizedString } } } - new_blogpost: { + delete_field_from_content_type: { /** - * New Blogpost + * Delete a Field from a Content Type */ displayName: () => LocalizedString /** - * Triggers when a new blogpost is created in Confluence. + * Removes a field from a specific content type */ shortDesc: () => LocalizedString /** - * Monitors Confluence for newly created blogposts with optional filtering by space, status, and body format. Triggers when new blogposts are detected. + * Removes a field from a content type. The field is first marked as omitted, then removed entirely. Existing entry data for this field will be lost. */ longDesc: () => LocalizedString + groups: { + /** + * Content Types + */ + '0': () => LocalizedString + } options: { space_id: { /** - * Space ID + * Space */ displayName: () => LocalizedString /** - * Filter by Confluence space + * The Contentful space to use */ shortDesc: () => LocalizedString /** - * Filter blogposts by the Confluence space they belong to. + * Select the Contentful space containing the content type. */ longDesc: () => LocalizedString } - status: { + environment_id: { /** - * Status + * Environment */ displayName: () => LocalizedString /** - * Filter by blogpost status + * The environment to use (default: master) */ shortDesc: () => LocalizedString /** - * Filter blogposts by their status (current, deleted, or trashed). + * Select the environment within the space. Defaults to "master" if not specified. */ longDesc: () => LocalizedString } - body_format: { + content_type_id: { /** - * Body Format + * Content Type */ displayName: () => LocalizedString /** - * Content format to retrieve + * The content type containing the field */ shortDesc: () => LocalizedString /** - * The format to retrieve the blogpost content in (storage format or Atlas Document Format). + * Select the content type to modify. + */ + longDesc: () => LocalizedString + } + field_id: { + /** + * Field + */ + displayName: () => LocalizedString + /** + * The field to remove + */ + shortDesc: () => LocalizedString + /** + * Select the field to permanently remove from the content type. */ longDesc: () => LocalizedString } } } - new_page: { + search_content_types: { /** - * New Page + * Search Content Types */ displayName: () => LocalizedString /** - * Triggers when a new page is created in Confluence. + * Searches for content types */ shortDesc: () => LocalizedString /** - * Monitors Confluence for newly created pages with optional filtering by space, status, body format, and subtype. Triggers when new pages are detected. + * Searches for content types with optional text filtering. Returns a paginated list of content types with their field definitions. */ longDesc: () => LocalizedString + groups: { + /** + * Content Types + */ + '0': () => LocalizedString + } options: { space_id: { /** - * Space ID + * Space */ displayName: () => LocalizedString /** - * Filter by Confluence space + * The Contentful space to search */ shortDesc: () => LocalizedString /** - * Filter pages by the Confluence space they belong to. + * Select the Contentful space to search in. */ longDesc: () => LocalizedString } - status: { + environment_id: { /** - * Status + * Environment */ displayName: () => LocalizedString /** - * Filter by page status + * The environment to use (default: master) */ shortDesc: () => LocalizedString /** - * Filter pages by their status (current, archived, deleted, or trashed). + * Select the environment within the space. Defaults to "master" if not specified. */ longDesc: () => LocalizedString } - body_format: { + query: { /** - * Body Format + * Search Query */ displayName: () => LocalizedString /** - * Content format to retrieve + * Text search query */ shortDesc: () => LocalizedString /** - * The format to retrieve the page content in (storage format or Atlas Document Format). + * Optional text to search across content type names and descriptions. */ longDesc: () => LocalizedString } - subtype: { + limit: { /** - * Subtype + * Limit */ displayName: () => LocalizedString /** - * Filter by page subtype + * Maximum number of results to return */ shortDesc: () => LocalizedString /** - * Filter pages by their subtype (live pages or regular pages). + * The maximum number of content types to return. Default is 100. + */ + longDesc: () => LocalizedString + } + skip: { + /** + * Skip + */ + displayName: () => LocalizedString + /** + * Number of results to skip + */ + shortDesc: () => LocalizedString + /** + * The number of content types to skip for pagination. Default is 0. + */ + longDesc: () => LocalizedString + } + } + } + } + triggers: { + watch_event: { + /** + * Watch an Event + */ + displayName: () => LocalizedString + /** + * Triggers when a new event occurs + */ + shortDesc: () => LocalizedString + /** + * Creates a webhook in Contentful that triggers when selected events occur. Supports entry, asset, and content type events such as creation, updates, publishing, and deletion. + */ + longDesc: () => LocalizedString + groups: { + /** + * Events + */ + '0': () => LocalizedString + } + options: { + space_id: { + /** + * Space + */ + displayName: () => LocalizedString + /** + * The Contentful space to monitor + */ + shortDesc: () => LocalizedString + /** + * Select the Contentful space to monitor for events. + */ + longDesc: () => LocalizedString + } + environment_id: { + /** + * Environment + */ + displayName: () => LocalizedString + /** + * The environment to use (default: master) + */ + shortDesc: () => LocalizedString + /** + * Select the environment within the space. Defaults to "master" if not specified. + */ + longDesc: () => LocalizedString + } + event_types: { + /** + * Event Types + */ + displayName: () => LocalizedString + /** + * The types of events to watch for + */ + shortDesc: () => LocalizedString + /** + * Select one or more event types to trigger on. Events include entry, asset, and content type lifecycle events. */ longDesc: () => LocalizedString } diff --git a/ts/src/tests/contentful.test.ts b/ts/src/tests/contentful.test.ts new file mode 100644 index 00000000..12c5e750 --- /dev/null +++ b/ts/src/tests/contentful.test.ts @@ -0,0 +1,833 @@ +import { TQoreAppActionWithWebhook } from '@qoretechnologies/ts-toolkit'; +import { configDotenv } from 'dotenv'; +import { ContentfulError } from '../apps/contentful/constants'; +import { getContentfulSpaceAllowedValues } from '../apps/contentful/helpers/get-space-allowed-values'; +import { getContentfulEnvironmentAllowedValues } from '../apps/contentful/helpers/get-environment-allowed-values'; +import { getContentfulContentTypeAllowedValues } from '../apps/contentful/helpers/get-content-type-allowed-values'; +import { getContentfulEntryAllowedValues } from '../apps/contentful/helpers/get-entry-allowed-values'; +import { getContentfulFieldAllowedValues } from '../apps/contentful/helpers/get-field-allowed-values'; +import { getContentfulAssetAllowedValues } from '../apps/contentful/helpers/get-asset-allowed-values'; +import GetEntry from '../apps/contentful/actions/entries/get-entry.action'; +import GetEntryWithReplacement from '../apps/contentful/actions/entries/get-entry-with-replacement.action'; +import CreateEntry from '../apps/contentful/actions/entries/create-entry.action'; +import UpdateEntry from '../apps/contentful/actions/entries/update-entry.action'; +import DeleteEntry from '../apps/contentful/actions/entries/delete-entry.action'; +import PublishEntry from '../apps/contentful/actions/entries/publish-entry.action'; +import UnpublishEntry from '../apps/contentful/actions/entries/unpublish-entry.action'; +import ArchiveEntry from '../apps/contentful/actions/entries/archive-entry.action'; +import SearchEntries from '../apps/contentful/actions/entries/search-entries.action'; +import GetAsset from '../apps/contentful/actions/assets/get-asset.action'; +import CreateAsset from '../apps/contentful/actions/assets/create-asset.action'; +import UpdateAsset from '../apps/contentful/actions/assets/update-asset.action'; +import DeleteAsset from '../apps/contentful/actions/assets/delete-asset.action'; +import PublishAsset from '../apps/contentful/actions/assets/publish-asset.action'; +import UnpublishAsset from '../apps/contentful/actions/assets/unpublish-asset.action'; +import ArchiveAsset from '../apps/contentful/actions/assets/archive-asset.action'; +import SearchAssets from '../apps/contentful/actions/assets/search-assets.action'; +import GetContentType from '../apps/contentful/actions/content-types/get-content-type.action'; +import CreateContentType from '../apps/contentful/actions/content-types/create-content-type.action'; +import UpdateContentType from '../apps/contentful/actions/content-types/update-content-type.action'; +import DeleteContentType from '../apps/contentful/actions/content-types/delete-content-type.action'; +import ActivateContentType from '../apps/contentful/actions/content-types/activate-content-type.action'; +import DeactivateContentType from '../apps/contentful/actions/content-types/deactivate-content-type.action'; +import AddField from '../apps/contentful/actions/content-types/add-field.action'; +import UpdateField from '../apps/contentful/actions/content-types/update-field.action'; +import DeleteField from '../apps/contentful/actions/content-types/delete-field.action'; +import SearchContentTypes from '../apps/contentful/actions/content-types/search-content-types.action'; +import WatchEvent from '../apps/contentful/triggers/watch-event.trigger'; +import { getContentfulScopedClient } from '../apps/contentful/client'; +import { delay } from '../global/helpers'; +import { checkAllowedValues, skipOnTransientError } from './utils'; +import { Debugger, DebugLevels } from '../utils/Debugger'; + +Debugger.level = DebugLevels.Verbose; +configDotenv({ path: '.env' }); + +describe('Should test Contentful actions', () => { + const accessToken = process.env.CONTENTFUL_ACCESS_TOKEN; + const spaceId = process.env.CONTENTFUL_SPACE_ID; + const hasCredentials = !!(accessToken && spaceId); + + const baseContext = { + conn_opts: { + access_token: accessToken || '', + } as Record, + }; + + const baseOpts = { + space_id: spaceId || '', + environment_id: 'master', + }; + + let testContentTypeId: string | undefined; + let testEntryId: string | undefined; + + // ==================== Allowed Values Tests ==================== + describe('Should test Contentful allowed values', () => { + afterEach(async () => { + await delay(500); + }); + + it('Should return space allowed values', skipOnTransientError(async () => { + if (!hasCredentials) { + return; + } + const allowedValues = await getContentfulSpaceAllowedValues(baseContext); + checkAllowedValues(allowedValues, { checkNonEmpty: true }); + })); + + it('Should return empty space allowed values when connection options are missing', async () => { + const allowedValues = await getContentfulSpaceAllowedValues({}); + checkAllowedValues(allowedValues, { checkNonEmpty: false }); + expect(allowedValues.length).toBe(0); + }); + + it('Should return environment allowed values', skipOnTransientError(async () => { + if (!hasCredentials) { + return; + } + const allowedValues = await getContentfulEnvironmentAllowedValues({ + ...baseContext, + opts: { space_id: spaceId }, + }); + checkAllowedValues(allowedValues, { checkNonEmpty: true }); + })); + + it('Should return empty environment allowed values when space_id is missing', async () => { + const allowedValues = await getContentfulEnvironmentAllowedValues(baseContext); + checkAllowedValues(allowedValues, { checkNonEmpty: false }); + expect(allowedValues.length).toBe(0); + }); + + it('Should return content type allowed values', skipOnTransientError(async () => { + if (!hasCredentials) { + return; + } + const allowedValues = await getContentfulContentTypeAllowedValues({ + ...baseContext, + opts: { space_id: spaceId }, + }); + checkAllowedValues(allowedValues, { checkNonEmpty: true }); + testContentTypeId = allowedValues[0]?.value as string; + })); + + it('Should return empty content type allowed values when space_id is missing', async () => { + const allowedValues = await getContentfulContentTypeAllowedValues(baseContext); + checkAllowedValues(allowedValues, { checkNonEmpty: false }); + expect(allowedValues.length).toBe(0); + }); + + it('Should return entry allowed values', skipOnTransientError(async () => { + if (!hasCredentials || !testContentTypeId) { + return; + } + const allowedValues = await getContentfulEntryAllowedValues({ + ...baseContext, + opts: { space_id: spaceId, content_type_id: testContentTypeId }, + }); + checkAllowedValues(allowedValues, { checkNonEmpty: false }); + })); + + it('Should return empty entry allowed values when space_id is missing', async () => { + const allowedValues = await getContentfulEntryAllowedValues(baseContext); + checkAllowedValues(allowedValues, { checkNonEmpty: false }); + expect(allowedValues.length).toBe(0); + }); + + it('Should return field allowed values', skipOnTransientError(async () => { + if (!hasCredentials || !testContentTypeId) { + return; + } + const allowedValues = await getContentfulFieldAllowedValues({ + ...baseContext, + opts: { space_id: spaceId, content_type_id: testContentTypeId }, + }); + checkAllowedValues(allowedValues, { checkNonEmpty: true }); + })); + + it('Should return empty field allowed values when content_type_id is missing', async () => { + const allowedValues = await getContentfulFieldAllowedValues({ + ...baseContext, + opts: { space_id: spaceId }, + }); + checkAllowedValues(allowedValues, { checkNonEmpty: false }); + expect(allowedValues.length).toBe(0); + }); + + it('Should return asset allowed values', skipOnTransientError(async () => { + if (!hasCredentials) { + return; + } + const allowedValues = await getContentfulAssetAllowedValues({ + ...baseContext, + opts: { space_id: spaceId }, + }); + checkAllowedValues(allowedValues, { checkNonEmpty: false }); + })); + + it('Should return empty asset allowed values when space_id is missing', async () => { + const allowedValues = await getContentfulAssetAllowedValues(baseContext); + checkAllowedValues(allowedValues, { checkNonEmpty: false }); + expect(allowedValues.length).toBe(0); + }); + }); + + // ==================== Content Type Actions Tests ==================== + describe('Should test Contentful content type actions', () => { + let createdContentTypeId: string | undefined; + + afterEach(async () => { + await delay(1000); + }); + + afterAll(async () => { + if (!hasCredentials || !createdContentTypeId) { + return; + } + try { + const client = getContentfulScopedClient(baseContext, spaceId!, 'master'); + try { + await client.contentType.unpublish({ contentTypeId: createdContentTypeId }); + } catch { + // May already be unpublished + } + await client.contentType.delete({ contentTypeId: createdContentTypeId }); + } catch { + // Best-effort cleanup + } + }); + + it('Should search content types', skipOnTransientError(async () => { + if (!hasCredentials) { + return; + } + const result = await SearchContentTypes.api_function!( + { ...baseOpts, limit: 5 }, + undefined, + baseContext as unknown as Record + ); + expect(result).toBeDefined(); + expect(Array.isArray(result)).toBe(true); + })); + + it('Should get a content type', skipOnTransientError(async () => { + if (!hasCredentials || !testContentTypeId) { + return; + } + const result = await GetContentType.api_function!( + { ...baseOpts, content_type_id: testContentTypeId }, + undefined, + baseContext as unknown as Record + ); + expect(result).toBeDefined(); + expect(result.id).toBe(testContentTypeId); + expect(result.name).toBeDefined(); + expect(result.fields).toBeDefined(); + })); + + it('Should create a content type', skipOnTransientError(async () => { + if (!hasCredentials) { + return; + } + const uniqueName = `Test CT ${Date.now()}`; + const result = await CreateContentType.api_function!( + { + ...baseOpts, + name: uniqueName, + description: 'Test content type created by integration tests', + fields: [ + { id: 'title', name: 'Title', type: 'Symbol', required: true, localized: false }, + { id: 'body', name: 'Body', type: 'Text', required: false, localized: false }, + ], + }, + undefined, + baseContext as unknown as Record + ); + expect(result).toBeDefined(); + expect(result.id).toBeDefined(); + expect(result.name).toBe(uniqueName); + expect(result.fields).toBeDefined(); + expect(result.fields.length).toBe(2); + createdContentTypeId = result.id; + })); + + it('Should update a content type', skipOnTransientError(async () => { + if (!hasCredentials || !createdContentTypeId) { + return; + } + const updatedName = `Updated CT ${Date.now()}`; + const result = await UpdateContentType.api_function!( + { + ...baseOpts, + content_type_id: createdContentTypeId, + name: updatedName, + description: 'Updated description', + }, + undefined, + baseContext as unknown as Record + ); + expect(result).toBeDefined(); + expect(result.name).toBe(updatedName); + })); + + it('Should add a field to a content type', skipOnTransientError(async () => { + if (!hasCredentials || !createdContentTypeId) { + return; + } + const result = await AddField.api_function!( + { + ...baseOpts, + content_type_id: createdContentTypeId, + field_id: 'testNumber', + field_name: 'Test Number', + field_type: 'Integer', + required: false, + localized: false, + }, + undefined, + baseContext as unknown as Record + ); + expect(result).toBeDefined(); + expect(result.fields.length).toBe(3); + expect(result.fields.some((f: Record) => f.id === 'testNumber')).toBe(true); + })); + + it('Should update a field of a content type', skipOnTransientError(async () => { + if (!hasCredentials || !createdContentTypeId) { + return; + } + const result = await UpdateField.api_function!( + { + ...baseOpts, + content_type_id: createdContentTypeId, + field_id: 'testNumber', + field_name: 'Updated Number Field', + required: true, + }, + undefined, + baseContext as unknown as Record + ); + expect(result).toBeDefined(); + const updatedField = result.fields.find((f: Record) => f.id === 'testNumber'); + expect(updatedField).toBeDefined(); + expect(updatedField.name).toBe('Updated Number Field'); + })); + + it('Should activate a content type', skipOnTransientError(async () => { + if (!hasCredentials || !createdContentTypeId) { + return; + } + const result = await ActivateContentType.api_function!( + { ...baseOpts, content_type_id: createdContentTypeId }, + undefined, + baseContext as unknown as Record + ); + expect(result).toBeDefined(); + expect(result.id).toBe(createdContentTypeId); + })); + + it('Should deactivate a content type', skipOnTransientError(async () => { + if (!hasCredentials || !createdContentTypeId) { + return; + } + const result = await DeactivateContentType.api_function!( + { ...baseOpts, content_type_id: createdContentTypeId }, + undefined, + baseContext as unknown as Record + ); + expect(result).toBeDefined(); + expect(result.id).toBe(createdContentTypeId); + })); + + it('Should delete a field from a content type', skipOnTransientError(async () => { + if (!hasCredentials || !createdContentTypeId) { + return; + } + const result = await DeleteField.api_function!( + { + ...baseOpts, + content_type_id: createdContentTypeId, + field_id: 'testNumber', + }, + undefined, + baseContext as unknown as Record + ); + expect(result).toBeDefined(); + expect(result.fields.every((f: Record) => f.id !== 'testNumber')).toBe(true); + })); + + it('Should delete a content type', skipOnTransientError(async () => { + if (!hasCredentials || !createdContentTypeId) { + return; + } + const result = await DeleteContentType.api_function!( + { ...baseOpts, content_type_id: createdContentTypeId }, + undefined, + baseContext as unknown as Record + ); + expect(result).toBeDefined(); + expect(result.id).toBe(createdContentTypeId); + expect(result.deleted).toBe(true); + createdContentTypeId = undefined; + })); + }); + + // ==================== Entry Actions Tests ==================== + describe('Should test Contentful entry actions', () => { + let createdEntryId: string | undefined; + + afterEach(async () => { + await delay(1000); + }); + + afterAll(async () => { + if (!hasCredentials || !createdEntryId) { + return; + } + try { + const client = getContentfulScopedClient(baseContext, spaceId!, 'master'); + try { + await client.entry.unpublish({ entryId: createdEntryId }); + } catch { + // May already be unpublished + } + try { + const entry = await client.entry.get({ entryId: createdEntryId }); + if ((entry.sys as Record).archivedVersion) { + await client.entry.unarchive({ entryId: createdEntryId }); + } + } catch { + // May not exist + } + await client.entry.delete({ entryId: createdEntryId }); + } catch { + // Best-effort cleanup + } + }); + + it('Should search entries', skipOnTransientError(async () => { + if (!hasCredentials || !testContentTypeId) { + return; + } + const result = await SearchEntries.api_function!( + { ...baseOpts, content_type_id: testContentTypeId, limit: 5 }, + undefined, + baseContext as unknown as Record + ); + expect(result).toBeDefined(); + expect(Array.isArray(result)).toBe(true); + })); + + it('Should create an entry', skipOnTransientError(async () => { + if (!hasCredentials || !testContentTypeId) { + return; + } + const result = await CreateEntry.api_function!( + { + ...baseOpts, + content_type_id: testContentTypeId, + fields: { title: `Test Entry ${Date.now()}` }, + publish: false, + }, + undefined, + baseContext as unknown as Record + ); + expect(result).toBeDefined(); + expect(result.id).toBeDefined(); + createdEntryId = result.id; + testEntryId = result.id; + })); + + it('Should get an entry', skipOnTransientError(async () => { + if (!hasCredentials || !createdEntryId) { + return; + } + const result = await GetEntry.api_function!( + { ...baseOpts, content_type_id: testContentTypeId, entry_id: createdEntryId }, + undefined, + baseContext as unknown as Record + ); + expect(result).toBeDefined(); + expect(result.id).toBe(createdEntryId); + })); + + it('Should update an entry', skipOnTransientError(async () => { + if (!hasCredentials || !createdEntryId) { + return; + } + const updatedTitle = `Updated Entry ${Date.now()}`; + const result = await UpdateEntry.api_function!( + { + ...baseOpts, + content_type_id: testContentTypeId, + entry_id: createdEntryId, + fields: { title: updatedTitle }, + }, + undefined, + baseContext as unknown as Record + ); + expect(result).toBeDefined(); + expect(result.title).toBe(updatedTitle); + })); + + it('Should get an entry with replacement', skipOnTransientError(async () => { + if (!hasCredentials || !createdEntryId) { + return; + } + const result = await GetEntryWithReplacement.api_function!( + { + ...baseOpts, + content_type_id: testContentTypeId, + entry_id: createdEntryId, + replacements: [{ tag: 'Updated', value: 'Replaced' }], + }, + undefined, + baseContext as unknown as Record + ); + expect(result).toBeDefined(); + expect(result.id).toBe(createdEntryId); + if (typeof result.title === 'string') { + expect(result.title).toContain('Replaced'); + } + })); + + it('Should publish an entry', skipOnTransientError(async () => { + if (!hasCredentials || !createdEntryId) { + return; + } + const result = await PublishEntry.api_function!( + { ...baseOpts, entry_id: createdEntryId }, + undefined, + baseContext as unknown as Record + ); + expect(result).toBeDefined(); + expect(result.id).toBe(createdEntryId); + expect(result.version).toBeDefined(); + })); + + it('Should unpublish an entry', skipOnTransientError(async () => { + if (!hasCredentials || !createdEntryId) { + return; + } + const result = await UnpublishEntry.api_function!( + { ...baseOpts, entry_id: createdEntryId }, + undefined, + baseContext as unknown as Record + ); + expect(result).toBeDefined(); + expect(result.id).toBe(createdEntryId); + })); + + it('Should archive an entry', skipOnTransientError(async () => { + if (!hasCredentials || !createdEntryId) { + return; + } + const result = await ArchiveEntry.api_function!( + { ...baseOpts, entry_id: createdEntryId, archive: true }, + undefined, + baseContext as unknown as Record + ); + expect(result).toBeDefined(); + expect(result.id).toBe(createdEntryId); + expect(result.archived).toBe(true); + })); + + it('Should unarchive an entry', skipOnTransientError(async () => { + if (!hasCredentials || !createdEntryId) { + return; + } + const result = await ArchiveEntry.api_function!( + { ...baseOpts, entry_id: createdEntryId, archive: false }, + undefined, + baseContext as unknown as Record + ); + expect(result).toBeDefined(); + expect(result.id).toBe(createdEntryId); + expect(result.archived).toBe(false); + })); + + it('Should delete an entry', skipOnTransientError(async () => { + if (!hasCredentials || !createdEntryId) { + return; + } + const result = await DeleteEntry.api_function!( + { ...baseOpts, content_type_id: testContentTypeId, entry_id: createdEntryId }, + undefined, + baseContext as unknown as Record + ); + expect(result).toBeDefined(); + expect(result.id).toBe(createdEntryId); + expect(result.deleted).toBe(true); + createdEntryId = undefined; + })); + }); + + // ==================== Asset Actions Tests ==================== + describe('Should test Contentful asset actions', () => { + let createdAssetId: string | undefined; + + afterEach(async () => { + await delay(1000); + }); + + afterAll(async () => { + if (!hasCredentials || !createdAssetId) { + return; + } + try { + const client = getContentfulScopedClient(baseContext, spaceId!, 'master'); + try { + await client.asset.unpublish({ assetId: createdAssetId }); + } catch { + // May already be unpublished + } + try { + const asset = await client.asset.get({ assetId: createdAssetId }); + if ((asset.sys as Record).archivedVersion) { + await client.asset.unarchive({ assetId: createdAssetId }); + } + } catch { + // May not exist + } + await client.asset.delete({ assetId: createdAssetId }); + } catch { + // Best-effort cleanup + } + }); + + it('Should search assets', skipOnTransientError(async () => { + if (!hasCredentials) { + return; + } + const result = await SearchAssets.api_function!( + { ...baseOpts, limit: 5 }, + undefined, + baseContext as unknown as Record + ); + expect(result).toBeDefined(); + expect(Array.isArray(result)).toBe(true); + })); + + it('Should create an asset', skipOnTransientError(async () => { + if (!hasCredentials) { + return; + } + const result = await CreateAsset.api_function!( + { + ...baseOpts, + title: `Test Asset ${Date.now()}`, + description: 'Test asset created by integration tests', + file_name: 'test-image.png', + file_url: + 'https://images.ctfassets.net/fo9twyrwpveg/6wsHKoGRMQ2WYCUaYmoKeY/d3e8e4e9f34eed9df3b4ab29cc6a5bd5/hedgehog.jpg', + content_type: 'image/jpeg', + publish: false, + }, + undefined, + baseContext as unknown as Record + ); + expect(result).toBeDefined(); + expect(result.id).toBeDefined(); + createdAssetId = result.id; + }), 30000); + + it('Should get an asset', skipOnTransientError(async () => { + if (!hasCredentials || !createdAssetId) { + return; + } + const result = await GetAsset.api_function!( + { ...baseOpts, asset_id: createdAssetId }, + undefined, + baseContext as unknown as Record + ); + expect(result).toBeDefined(); + expect(result.id).toBe(createdAssetId); + })); + + it('Should update an asset', skipOnTransientError(async () => { + if (!hasCredentials || !createdAssetId) { + return; + } + const updatedTitle = `Updated Asset ${Date.now()}`; + const result = await UpdateAsset.api_function!( + { + ...baseOpts, + asset_id: createdAssetId, + title: updatedTitle, + }, + undefined, + baseContext as unknown as Record + ); + expect(result).toBeDefined(); + expect(result.title).toBe(updatedTitle); + })); + + it('Should publish an asset', skipOnTransientError(async () => { + if (!hasCredentials || !createdAssetId) { + return; + } + const result = await PublishAsset.api_function!( + { ...baseOpts, asset_id: createdAssetId }, + undefined, + baseContext as unknown as Record + ); + expect(result).toBeDefined(); + expect(result.id).toBe(createdAssetId); + })); + + it('Should unpublish an asset', skipOnTransientError(async () => { + if (!hasCredentials || !createdAssetId) { + return; + } + const result = await UnpublishAsset.api_function!( + { ...baseOpts, asset_id: createdAssetId }, + undefined, + baseContext as unknown as Record + ); + expect(result).toBeDefined(); + expect(result.id).toBe(createdAssetId); + })); + + it('Should archive an asset', skipOnTransientError(async () => { + if (!hasCredentials || !createdAssetId) { + return; + } + const result = await ArchiveAsset.api_function!( + { ...baseOpts, asset_id: createdAssetId, archive: true }, + undefined, + baseContext as unknown as Record + ); + expect(result).toBeDefined(); + expect(result.id).toBe(createdAssetId); + expect(result.archived).toBe(true); + })); + + it('Should unarchive an asset', skipOnTransientError(async () => { + if (!hasCredentials || !createdAssetId) { + return; + } + const result = await ArchiveAsset.api_function!( + { ...baseOpts, asset_id: createdAssetId, archive: false }, + undefined, + baseContext as unknown as Record + ); + expect(result).toBeDefined(); + expect(result.id).toBe(createdAssetId); + expect(result.archived).toBe(false); + })); + + it('Should delete an asset', skipOnTransientError(async () => { + if (!hasCredentials || !createdAssetId) { + return; + } + const result = await DeleteAsset.api_function!( + { ...baseOpts, asset_id: createdAssetId }, + undefined, + baseContext as unknown as Record + ); + expect(result).toBeDefined(); + expect(result.id).toBe(createdAssetId); + expect(result.deleted).toBe(true); + createdAssetId = undefined; + })); + }); + + // ==================== Trigger Tests ==================== + describe('Should test Contentful trigger', () => { + it('Should return example data matching event_info schema', skipOnTransientError(async () => { + if (!hasCredentials) { + return; + } + const trigger = WatchEvent as TQoreAppActionWithWebhook; + + if (!('get_example_event_data' in trigger) || !trigger.get_example_event_data) { + throw new Error('get_example_event_data not found in trigger'); + } + + const result = await trigger.get_example_event_data( + baseContext as unknown as Record + ); + expect(result).toBeDefined(); + + const eventInfoFields = Object.keys(trigger.event_info!.type.fields); + const exampleFields = Object.keys(result); + + const missingFields = eventInfoFields.filter((f) => !exampleFields.includes(f)); + expect(missingFields).toEqual([]); + + const extraFields = exampleFields.filter((f) => !eventInfoFields.includes(f)); + expect(extraFields).toEqual([]); + })); + }); + + // ==================== Negative Tests ==================== + describe('Should test Contentful negative cases', () => { + it('Should throw error with invalid access token', async () => { + const invalidContext = { + conn_opts: { + access_token: 'invalid-token-12345', + } as Record, + }; + + await expect( + GetEntry.api_function!( + { space_id: spaceId || 'test', entry_id: 'nonexistent' }, + undefined, + invalidContext as unknown as Record + ) + ).rejects.toThrow(ContentfulError); + }); + + it('Should throw error when entry does not exist', skipOnTransientError(async () => { + if (!hasCredentials) { + return; + } + await expect( + GetEntry.api_function!( + { ...baseOpts, content_type_id: testContentTypeId, entry_id: 'nonexistent-entry-id' }, + undefined, + baseContext as unknown as Record + ) + ).rejects.toThrow(ContentfulError); + })); + + it('Should throw error when asset does not exist', skipOnTransientError(async () => { + if (!hasCredentials) { + return; + } + await expect( + GetAsset.api_function!( + { ...baseOpts, asset_id: 'nonexistent-asset-id' }, + undefined, + baseContext as unknown as Record + ) + ).rejects.toThrow(ContentfulError); + })); + + it('Should throw error when content type does not exist', skipOnTransientError(async () => { + if (!hasCredentials) { + return; + } + await expect( + GetContentType.api_function!( + { ...baseOpts, content_type_id: 'nonexistent-content-type-id' }, + undefined, + baseContext as unknown as Record + ) + ).rejects.toThrow(ContentfulError); + })); + + it('Should throw error when required fields are missing', skipOnTransientError(async () => { + if (!hasCredentials) { + return; + } + await expect( + CreateEntry.api_function!( + { space_id: spaceId } as Record, + undefined, + baseContext as unknown as Record + ) + ).rejects.toThrow(); + })); + }); +}); diff --git a/ts/src/tests/slack.test.ts b/ts/src/tests/slack.test.ts index a828cff9..0b0421ca 100644 --- a/ts/src/tests/slack.test.ts +++ b/ts/src/tests/slack.test.ts @@ -154,6 +154,9 @@ describe('Should test Slack', () => { it('Should get channel allowed values', async () => { const allowedValues = await getSlackChannelsAllowedValues(baseContext); + console.log('Length of allowed values:', allowedValues.length); + console.dir(allowedValues, { depth: null }); + expect(allowedValues).toBeDefined(); expect(Array.isArray(allowedValues)).toBe(true); diff --git a/ts/yarn.lock b/ts/yarn.lock index bb364ad7..94ae890e 100644 --- a/ts/yarn.lock +++ b/ts/yarn.lock @@ -1457,6 +1457,13 @@ __metadata: languageName: node linkType: hard +"@contentful/rich-text-types@npm:^16.6.1": + version: 16.8.5 + resolution: "@contentful/rich-text-types@npm:16.8.5" + checksum: 10c0/0af82d501bb26d854fa3bc68136db1f0738428135066876062370637f219cd51f10abecf8e02a72c2cf9eb012523add21f4a3f72af4981a7ad4c95a9bbcb237f + languageName: node + linkType: hard + "@cspotcode/source-map-support@npm:^0.8.0": version: 0.8.1 resolution: "@cspotcode/source-map-support@npm:0.8.1" @@ -4906,6 +4913,13 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-linux-x64-gnu@npm:^4.18.0": + version: 4.59.0 + resolution: "@rollup/rollup-linux-x64-gnu@npm:4.59.0" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + "@rtsao/scc@npm:^1.1.0": version: 1.1.0 resolution: "@rtsao/scc@npm:1.1.0" @@ -6844,7 +6858,7 @@ __metadata: languageName: node linkType: hard -"axios@npm:^1.6.7": +"axios@npm:^1.13.5, axios@npm:^1.6.7": version: 1.13.6 resolution: "axios@npm:1.13.6" dependencies: @@ -7628,6 +7642,35 @@ __metadata: languageName: node linkType: hard +"contentful-management@npm:^11.74.0": + version: 11.74.0 + resolution: "contentful-management@npm:11.74.0" + dependencies: + "@contentful/rich-text-types": "npm:^16.6.1" + axios: "npm:^1.13.5" + contentful-sdk-core: "npm:^9.4.4" + fast-copy: "npm:^3.0.0" + globals: "npm:^15.15.0" + checksum: 10c0/9b53bb096a3319d4287fd1697dc51ce99a09ed253f1d1bc9d2572e7ba1e178efe032c1ee1d49aa7df4fdca22c1b4955dd9ffbf659f864e6523f47c244cdf8c1a + languageName: node + linkType: hard + +"contentful-sdk-core@npm:^9.4.4": + version: 9.4.4 + resolution: "contentful-sdk-core@npm:9.4.4" + dependencies: + "@rollup/rollup-linux-x64-gnu": "npm:^4.18.0" + fast-copy: "npm:^3.0.2" + lodash: "npm:^4.17.23" + process: "npm:^0.11.10" + qs: "npm:^6.15.0" + dependenciesMeta: + "@rollup/rollup-linux-x64-gnu": + optional: true + checksum: 10c0/70d011fded18274a13bf86213b71916e4b94057e0393b0d3c1da5478002ffbe816db4803644b3f8fb3cec488062645241504eca2121313c6df09f61b85012cfd + languageName: node + linkType: hard + "convert-source-map@npm:^2.0.0": version: 2.0.0 resolution: "convert-source-map@npm:2.0.0" @@ -9012,6 +9055,13 @@ __metadata: languageName: node linkType: hard +"fast-copy@npm:^3.0.0, fast-copy@npm:^3.0.2": + version: 3.0.2 + resolution: "fast-copy@npm:3.0.2" + checksum: 10c0/02e8b9fd03c8c024d2987760ce126456a0e17470850b51e11a1c3254eed6832e4733ded2d93316c82bc0b36aeb991ad1ff48d1ba95effe7add7c3ab8d8eb554a + languageName: node + linkType: hard + "fast-deep-equal@npm:^3.1.1, fast-deep-equal@npm:^3.1.3": version: 3.1.3 resolution: "fast-deep-equal@npm:3.1.3" @@ -9618,7 +9668,7 @@ __metadata: languageName: node linkType: hard -"globals@npm:^15.11.0": +"globals@npm:^15.11.0, globals@npm:^15.15.0": version: 15.15.0 resolution: "globals@npm:15.15.0" checksum: 10c0/f9ae80996392ca71316495a39bec88ac43ae3525a438b5626cd9d5ce9d5500d0a98a266409605f8cd7241c7acf57c354a48111ea02a767ba4f374b806d6861fe @@ -11606,6 +11656,13 @@ __metadata: languageName: node linkType: hard +"lodash@npm:^4.17.23": + version: 4.17.23 + resolution: "lodash@npm:4.17.23" + checksum: 10c0/1264a90469f5bb95d4739c43eb6277d15b6d9e186df4ac68c3620443160fc669e2f14c11e7d8b2ccf078b81d06147c01a8ccced9aab9f9f63d50dcf8cace6bf6 + languageName: node + linkType: hard + "long@npm:^4.0.0": version: 4.0.0 resolution: "long@npm:4.0.0" @@ -13813,6 +13870,7 @@ __metadata: axios: "npm:^1.12.0" azure-devops-node-api: "npm:^15.1.1" brace-expansion: "npm:^4.0.1" + contentful-management: "npm:^11.74.0" copyfiles: "npm:^2.4.1" cross-env: "npm:^10.1.0" dayjs: "npm:^1.11.18" @@ -13876,6 +13934,15 @@ __metadata: languageName: node linkType: hard +"qs@npm:^6.15.0": + version: 6.15.0 + resolution: "qs@npm:6.15.0" + dependencies: + side-channel: "npm:^1.1.0" + checksum: 10c0/ff341078a78a991d8a48b4524d52949211447b4b1ad907f489cac0770cbc346a28e47304455c0320e5fb000f8762d64b03331e3b71865f663bf351bcba8cdb4b + languageName: node + linkType: hard + "querystringify@npm:^2.1.1": version: 2.2.0 resolution: "querystringify@npm:2.2.0" From f08b3031afe00811ee43e1d1a155667b6845028d Mon Sep 17 00:00:00 2001 From: Nick Date: Mon, 23 Mar 2026 23:44:43 +0200 Subject: [PATCH 2/5] contentful: add dynamic types for content action options and update tests --- .../actions/assets/create-asset.action.ts | 14 +- .../actions/entries/create-entry.action.ts | 4 + .../get-entry-with-replacement.action.ts | 2 + .../actions/entries/get-entry.action.ts | 2 + .../actions/entries/search-entries.action.ts | 2 + .../actions/entries/update-entry.action.ts | 4 + ts/src/apps/contentful/client.ts | 17 +- ts/src/apps/contentful/constants.ts | 2 +- .../helpers/get-asset-allowed-values.ts | 2 +- .../get-content-type-allowed-values.ts | 2 +- .../helpers/get-dynamic-entry-type.ts | 111 +++++++ .../helpers/get-entry-allowed-values.ts | 2 +- .../helpers/get-environment-allowed-values.ts | 2 +- .../helpers/get-field-allowed-values.ts | 2 +- .../helpers/get-space-allowed-values.ts | 34 +- ts/src/apps/contentful/index.ts | 2 +- .../triggers/watch-event.trigger.ts | 12 +- ts/src/i18n/en/apps/Contentful/index.ts | 10 + ts/src/i18n/i18n-types.ts | 20 ++ ts/src/tests/contentful.test.ts | 301 ++++++++++++------ 20 files changed, 422 insertions(+), 125 deletions(-) create mode 100644 ts/src/apps/contentful/helpers/get-dynamic-entry-type.ts diff --git a/ts/src/apps/contentful/actions/assets/create-asset.action.ts b/ts/src/apps/contentful/actions/assets/create-asset.action.ts index c5b9ece9..240fb330 100644 --- a/ts/src/apps/contentful/actions/assets/create-asset.action.ts +++ b/ts/src/apps/contentful/actions/assets/create-asset.action.ts @@ -90,11 +90,17 @@ const CreateAsset = QoreAppCreator.createLocalizedAction({ } ); - // Process the asset (download and store the file) - await client.asset.processForAllLocales({}, asset); + // Trigger asset processing and poll until complete + try { + await client.asset.processForLocale( + {} as any, asset, defaultLocale, + { processingCheckWait: 3000, processingCheckRetries: 10 } + ); + } catch { + // Processing may time out but still succeed — check below + } - // Wait briefly for processing, then fetch updated asset - await new Promise((resolve) => setTimeout(resolve, 2000)); + // Fetch the asset to check if processing completed asset = await client.asset.get({ assetId: asset.sys.id }); if (shouldPublish) { diff --git a/ts/src/apps/contentful/actions/entries/create-entry.action.ts b/ts/src/apps/contentful/actions/entries/create-entry.action.ts index 363f4753..6ec2966c 100644 --- a/ts/src/apps/contentful/actions/entries/create-entry.action.ts +++ b/ts/src/apps/contentful/actions/entries/create-entry.action.ts @@ -4,6 +4,7 @@ import { getContentfulScopedClient } from '../../client'; import { CONTENTFUL_APP_NAME, ContentfulError } from '../../constants'; import { contentfulBaseWithContentTypeOptions } from '../../helpers/shared-options'; import { flattenEntry, getDefaultLocale, wrapFieldsWithLocale } from '../../helpers/contentful-type-mapping'; +import { getContentfulEntryFieldOptions, getContentfulEntryDynamicResponseType } from '../../helpers/get-dynamic-entry-type'; import { ContentfulEntryResponseType } from '../../response-types'; const action = 'create_entry'; @@ -13,6 +14,8 @@ const options = { fields: { type: 'hash', required: true, + get_dynamic_type: getContentfulEntryFieldOptions, + depends_on: ['content_type_id'], }, publish: { type: 'bool', @@ -27,6 +30,7 @@ const CreateEntry = QoreAppCreator.createLocalizedAction({ action_code: EQoreAppActionCode.ACTION, options, response_type: ContentfulEntryResponseType, + get_dynamic_response_type: getContentfulEntryDynamicResponseType, api_function: async (obj, _opts, context) => { const { space_id, content_type_id, fields } = getQoreContextRequiredValues({ context: { ...context, opts: obj }, diff --git a/ts/src/apps/contentful/actions/entries/get-entry-with-replacement.action.ts b/ts/src/apps/contentful/actions/entries/get-entry-with-replacement.action.ts index 83701302..bfadae19 100644 --- a/ts/src/apps/contentful/actions/entries/get-entry-with-replacement.action.ts +++ b/ts/src/apps/contentful/actions/entries/get-entry-with-replacement.action.ts @@ -5,6 +5,7 @@ import { CONTENTFUL_APP_NAME, ContentfulError } from '../../constants'; import { getContentfulEntryAllowedValues } from '../../helpers/get-entry-allowed-values'; import { contentfulBaseWithContentTypeOptions } from '../../helpers/shared-options'; import { flattenEntry, getDefaultLocale } from '../../helpers/contentful-type-mapping'; +import { getContentfulEntryDynamicResponseType } from '../../helpers/get-dynamic-entry-type'; import { ContentfulEntryResponseType } from '../../response-types'; const action = 'get_entry_with_replacement'; @@ -38,6 +39,7 @@ const GetEntryWithReplacement = QoreAppCreator.createLocalizedAction { const { space_id, entry_id, replacements } = getQoreContextRequiredValues({ context: { ...context, opts: obj }, diff --git a/ts/src/apps/contentful/actions/entries/get-entry.action.ts b/ts/src/apps/contentful/actions/entries/get-entry.action.ts index ca70240d..7e88883f 100644 --- a/ts/src/apps/contentful/actions/entries/get-entry.action.ts +++ b/ts/src/apps/contentful/actions/entries/get-entry.action.ts @@ -5,6 +5,7 @@ import { CONTENTFUL_APP_NAME, ContentfulError } from '../../constants'; import { getContentfulEntryAllowedValues } from '../../helpers/get-entry-allowed-values'; import { contentfulBaseWithContentTypeOptions } from '../../helpers/shared-options'; import { flattenEntry, getDefaultLocale } from '../../helpers/contentful-type-mapping'; +import { getContentfulEntryDynamicResponseType } from '../../helpers/get-dynamic-entry-type'; import { ContentfulEntryResponseType } from '../../response-types'; const action = 'get_entry'; @@ -25,6 +26,7 @@ const GetEntry = QoreAppCreator.createLocalizedAction({ action_code: EQoreAppActionCode.ACTION, options, response_type: ContentfulEntryResponseType, + get_dynamic_response_type: getContentfulEntryDynamicResponseType, api_function: async (obj, _opts, context) => { const { space_id, entry_id } = getQoreContextRequiredValues({ context: { ...context, opts: obj }, diff --git a/ts/src/apps/contentful/actions/entries/search-entries.action.ts b/ts/src/apps/contentful/actions/entries/search-entries.action.ts index 96c66091..529386d6 100644 --- a/ts/src/apps/contentful/actions/entries/search-entries.action.ts +++ b/ts/src/apps/contentful/actions/entries/search-entries.action.ts @@ -4,6 +4,7 @@ import { getContentfulScopedClient } from '../../client'; import { CONTENTFUL_APP_NAME, ContentfulError } from '../../constants'; import { contentfulBaseWithContentTypeOptions } from '../../helpers/shared-options'; import { flattenEntry, getDefaultLocale } from '../../helpers/contentful-type-mapping'; +import { getContentfulEntryDynamicResponseType } from '../../helpers/get-dynamic-entry-type'; import { ContentfulEntryListResponseType } from '../../response-types'; const action = 'search_entries'; @@ -32,6 +33,7 @@ const SearchEntries = QoreAppCreator.createLocalizedAction({ action_code: EQoreAppActionCode.ACTION, options, response_type: ContentfulEntryListResponseType, + get_dynamic_response_type: getContentfulEntryDynamicResponseType, api_function: async (obj, _opts, context) => { const { space_id, content_type_id } = getQoreContextRequiredValues({ context: { ...context, opts: obj }, diff --git a/ts/src/apps/contentful/actions/entries/update-entry.action.ts b/ts/src/apps/contentful/actions/entries/update-entry.action.ts index 588980ff..12446ea3 100644 --- a/ts/src/apps/contentful/actions/entries/update-entry.action.ts +++ b/ts/src/apps/contentful/actions/entries/update-entry.action.ts @@ -5,6 +5,7 @@ import { CONTENTFUL_APP_NAME, ContentfulError } from '../../constants'; import { getContentfulEntryAllowedValues } from '../../helpers/get-entry-allowed-values'; import { contentfulBaseWithContentTypeOptions } from '../../helpers/shared-options'; import { flattenEntry, getDefaultLocale, wrapFieldsWithLocale } from '../../helpers/contentful-type-mapping'; +import { getContentfulEntryFieldOptions, getContentfulEntryDynamicResponseType } from '../../helpers/get-dynamic-entry-type'; import { ContentfulEntryResponseType } from '../../response-types'; const action = 'update_entry'; @@ -21,6 +22,8 @@ const options = { type: 'hash', required: true, required_groups: ['update_field'], + get_dynamic_type: getContentfulEntryFieldOptions, + depends_on: ['content_type_id'], }, } satisfies TQoreOptions; @@ -30,6 +33,7 @@ const UpdateEntry = QoreAppCreator.createLocalizedAction({ action_code: EQoreAppActionCode.ACTION, options, response_type: ContentfulEntryResponseType, + get_dynamic_response_type: getContentfulEntryDynamicResponseType, api_function: async (obj, _opts, context) => { const { space_id, entry_id, fields } = getQoreContextRequiredValues({ context: { ...context, opts: obj }, diff --git a/ts/src/apps/contentful/client.ts b/ts/src/apps/contentful/client.ts index af739b3e..bf0cf471 100644 --- a/ts/src/apps/contentful/client.ts +++ b/ts/src/apps/contentful/client.ts @@ -1,4 +1,7 @@ -import contentful from 'contentful-management'; +import * as contentfulModule from 'contentful-management'; + +// Handle both ESM default import and CJS require +const contentful = (contentfulModule as unknown as { default?: typeof contentfulModule }).default || contentfulModule; import { getQoreContextRequiredValues } from '../../global/helpers'; import { ContentfulError } from './constants'; @@ -7,14 +10,14 @@ import { ContentfulError } from './constants'; * Use for operations that don't need a specific space (e.g., listing spaces). */ export const getContentfulClient = (context: Record | undefined) => { - const { access_token } = getQoreContextRequiredValues({ + const { token } = getQoreContextRequiredValues({ context, - connectionFields: ['access_token'], + connectionFields: ['token'], ErrorClass: ContentfulError, }); return contentful.createClient( - { accessToken: access_token }, + { accessToken: token }, { type: 'plain' } ); }; @@ -28,14 +31,14 @@ export const getContentfulScopedClient = ( spaceId: string, environmentId?: string ) => { - const { access_token } = getQoreContextRequiredValues({ + const { token } = getQoreContextRequiredValues({ context, - connectionFields: ['access_token'], + connectionFields: ['token'], ErrorClass: ContentfulError, }); return contentful.createClient( - { accessToken: access_token }, + { accessToken: token }, { type: 'plain', defaults: { diff --git a/ts/src/apps/contentful/constants.ts b/ts/src/apps/contentful/constants.ts index 81d3d11e..43439038 100644 --- a/ts/src/apps/contentful/constants.ts +++ b/ts/src/apps/contentful/constants.ts @@ -15,7 +15,7 @@ export const CONTENTFUL_APP_LOGO = export const CONTENTFUL_API_URL = 'https://api.contentful.com'; export const CONTENTFUL_CONN_OPTIONS = { - access_token: { + token: { type: 'string', display_name: 'Content Management API Token', short_desc: 'Your Contentful Content Management API access token.', diff --git a/ts/src/apps/contentful/helpers/get-asset-allowed-values.ts b/ts/src/apps/contentful/helpers/get-asset-allowed-values.ts index 2e88bde0..048fde82 100644 --- a/ts/src/apps/contentful/helpers/get-asset-allowed-values.ts +++ b/ts/src/apps/contentful/helpers/get-asset-allowed-values.ts @@ -9,7 +9,7 @@ export const getContentfulAssetAllowedValues: TQoreGetAllowedValuesFunction< const spaceId = context?.opts?.space_id; const environmentId = context?.opts?.environment_id || 'master'; - if (!context?.conn_opts?.access_token || !spaceId) { + if (!context?.conn_opts?.token || !spaceId) { return []; } diff --git a/ts/src/apps/contentful/helpers/get-content-type-allowed-values.ts b/ts/src/apps/contentful/helpers/get-content-type-allowed-values.ts index 3094780d..123d9ea5 100644 --- a/ts/src/apps/contentful/helpers/get-content-type-allowed-values.ts +++ b/ts/src/apps/contentful/helpers/get-content-type-allowed-values.ts @@ -8,7 +8,7 @@ export const getContentfulContentTypeAllowedValues: TQoreGetAllowedValuesFunctio const spaceId = context?.opts?.space_id; const environmentId = context?.opts?.environment_id || 'master'; - if (!context?.conn_opts?.access_token || !spaceId) { + if (!context?.conn_opts?.token || !spaceId) { return []; } diff --git a/ts/src/apps/contentful/helpers/get-dynamic-entry-type.ts b/ts/src/apps/contentful/helpers/get-dynamic-entry-type.ts new file mode 100644 index 00000000..ee31cf86 --- /dev/null +++ b/ts/src/apps/contentful/helpers/get-dynamic-entry-type.ts @@ -0,0 +1,111 @@ +import { TQoreGetDynamicTypeFunction, TQoreOptions } from '@qoretechnologies/ts-toolkit'; +import { getQoreContextRequiredValues } from '../../../global/helpers'; +import { ContentfulError } from '../constants'; +import { getContentfulScopedClient } from '../client'; +import { mapContentfulFieldTypeToQoreType } from './contentful-type-mapping'; + +/** + * Returns dynamic option types for entry fields based on the selected content type. + * Used as `get_dynamic_type` on the `fields` option. + */ +export const getContentfulEntryFieldOptions: TQoreGetDynamicTypeFunction = async (context) => { + const { space_id, content_type_id } = getQoreContextRequiredValues({ + context, + optionFields: ['space_id', 'content_type_id'], + ErrorClass: ContentfulError, + }); + + const environmentId = (context?.opts?.environment_id as string) || 'master'; + + try { + const client = getContentfulScopedClient(context, space_id, environmentId); + const contentType = await client.contentType.get({ contentTypeId: content_type_id }); + + const qoreOptions: TQoreOptions = {}; + + for (const field of contentType.fields) { + if (field.disabled || field.omitted) { + continue; + } + + const qoreType = mapContentfulFieldTypeToQoreType(field.type); + + qoreOptions[field.id] = { + ...qoreType, + display_name: field.name, + required: field.required || false, + ...(field.type === 'Array' && field.items?.type === 'Symbol' + ? { type: { type: 'list', element_type: 'string' } } + : {}), + ...(field.type === 'Array' && field.items?.type === 'Link' + ? { type: { type: 'list', element_type: 'string' } } + : {}), + } as TQoreOptions[string]; + } + + return { + type: 'hash', + fields: qoreOptions, + }; + } catch { + return { type: 'hash' }; + } +}; + +/** + * Returns dynamic response type for entries based on the selected content type. + * Includes system fields plus content type-specific fields. + */ +export const getContentfulEntryDynamicResponseType: TQoreGetDynamicTypeFunction = async (context) => { + const { space_id, content_type_id } = getQoreContextRequiredValues({ + context, + optionFields: ['space_id', 'content_type_id'], + ErrorClass: ContentfulError, + }); + + const environmentId = (context?.opts?.environment_id as string) || 'master'; + + try { + const client = getContentfulScopedClient(context, space_id, environmentId); + const contentType = await client.contentType.get({ contentTypeId: content_type_id }); + + const fields: TQoreOptions = { + id: { type: 'string', short_desc: 'Entry ID' }, + content_type: { type: 'string', short_desc: 'Content type ID' }, + created_at: { type: 'date', short_desc: 'Creation timestamp' }, + updated_at: { type: 'date', short_desc: 'Last update timestamp' }, + version: { type: 'int', short_desc: 'Current version number' }, + }; + + for (const field of contentType.fields) { + const qoreType = mapContentfulFieldTypeToQoreType(field.type); + + fields[field.id] = { + ...qoreType, + display_name: field.name, + ...(field.type === 'Array' && field.items?.type === 'Symbol' + ? { type: { type: 'list', element_type: 'string' } } + : {}), + ...(field.type === 'Array' && field.items?.type === 'Link' + ? { type: { type: 'list', element_type: 'string' } } + : {}), + } as TQoreOptions[string]; + } + + return { + type: 'hash', + fields, + }; + } catch { + return { + type: 'hash', + fields: { + id: { type: 'string', short_desc: 'Entry ID' }, + content_type: { type: 'string', short_desc: 'Content type ID' }, + created_at: { type: 'date', short_desc: 'Creation timestamp' }, + updated_at: { type: 'date', short_desc: 'Last update timestamp' }, + version: { type: 'int', short_desc: 'Current version number' }, + }, + }; + } +}; diff --git a/ts/src/apps/contentful/helpers/get-entry-allowed-values.ts b/ts/src/apps/contentful/helpers/get-entry-allowed-values.ts index 466776ad..90b7e0a0 100644 --- a/ts/src/apps/contentful/helpers/get-entry-allowed-values.ts +++ b/ts/src/apps/contentful/helpers/get-entry-allowed-values.ts @@ -10,7 +10,7 @@ export const getContentfulEntryAllowedValues: TQoreGetAllowedValuesFunction< const environmentId = context?.opts?.environment_id || 'master'; const contentTypeId = context?.opts?.content_type_id; - if (!context?.conn_opts?.access_token || !spaceId) { + if (!context?.conn_opts?.token || !spaceId) { return []; } diff --git a/ts/src/apps/contentful/helpers/get-environment-allowed-values.ts b/ts/src/apps/contentful/helpers/get-environment-allowed-values.ts index fbe53caf..466a4538 100644 --- a/ts/src/apps/contentful/helpers/get-environment-allowed-values.ts +++ b/ts/src/apps/contentful/helpers/get-environment-allowed-values.ts @@ -7,7 +7,7 @@ export const getContentfulEnvironmentAllowedValues: TQoreGetAllowedValuesFunctio > = async (context) => { const spaceId = context?.opts?.space_id; - if (!context?.conn_opts?.access_token || !spaceId) { + if (!context?.conn_opts?.token || !spaceId) { return []; } diff --git a/ts/src/apps/contentful/helpers/get-field-allowed-values.ts b/ts/src/apps/contentful/helpers/get-field-allowed-values.ts index eff40747..8f84bf88 100644 --- a/ts/src/apps/contentful/helpers/get-field-allowed-values.ts +++ b/ts/src/apps/contentful/helpers/get-field-allowed-values.ts @@ -9,7 +9,7 @@ export const getContentfulFieldAllowedValues: TQoreGetAllowedValuesFunction< const environmentId = context?.opts?.environment_id || 'master'; const contentTypeId = context?.opts?.content_type_id; - if (!context?.conn_opts?.access_token || !spaceId || !contentTypeId) { + if (!context?.conn_opts?.token || !spaceId || !contentTypeId) { return []; } diff --git a/ts/src/apps/contentful/helpers/get-space-allowed-values.ts b/ts/src/apps/contentful/helpers/get-space-allowed-values.ts index f946ffcc..cc4495e5 100644 --- a/ts/src/apps/contentful/helpers/get-space-allowed-values.ts +++ b/ts/src/apps/contentful/helpers/get-space-allowed-values.ts @@ -1,22 +1,44 @@ -import { TCustomConnOptions, TQoreGetAllowedValuesFunction } from '@qoretechnologies/ts-toolkit'; +import { IQoreAllowedValue, TCustomConnOptions, TQoreGetAllowedValuesFunction } from '@qoretechnologies/ts-toolkit'; import { getContentfulClient } from '../client'; export const getContentfulSpaceAllowedValues: TQoreGetAllowedValuesFunction< TCustomConnOptions, string > = async (context) => { - if (!context?.conn_opts?.access_token) { + if (!context?.conn_opts?.token) { return []; } try { const client = getContentfulClient(context); + + // First try the direct /spaces endpoint const spaces = await client.space.getMany({ query: { limit: 100 } }); + if (spaces.items.length > 0) { + return spaces.items.map((space) => ({ + value: space.sys.id, + display_name: space.name, + })); + } + + // If no spaces found, try via organizations (org-scoped tokens) + const orgs = await client.organization.getAll({}); + const results: IQoreAllowedValue[] = []; + + for (const org of orgs.items) { + const orgSpaces = await client.space.getManyForOrganization({ + organizationId: org.sys.id, + query: { limit: 100 }, + }); + for (const space of orgSpaces.items) { + results.push({ + value: space.sys.id, + display_name: space.name, + }); + } + } - return spaces.items.map((space) => ({ - value: space.sys.id, - display_name: space.name, - })); + return results; } catch { return []; } diff --git a/ts/src/apps/contentful/index.ts b/ts/src/apps/contentful/index.ts index 3b68eaec..b6b74a96 100644 --- a/ts/src/apps/contentful/index.ts +++ b/ts/src/apps/contentful/index.ts @@ -30,6 +30,6 @@ export default (locale: Locales) => }, rest_modifiers: { options: CONTENTFUL_CONN_OPTIONS, - required_options: 'access_token', + required_options: 'token', }, }) satisfies TQoreAppWithActions; diff --git a/ts/src/apps/contentful/triggers/watch-event.trigger.ts b/ts/src/apps/contentful/triggers/watch-event.trigger.ts index db28496a..8e3bbbd2 100644 --- a/ts/src/apps/contentful/triggers/watch-event.trigger.ts +++ b/ts/src/apps/contentful/triggers/watch-event.trigger.ts @@ -46,9 +46,9 @@ const WatchEvent = QoreAppCreator.createLocalizedTrigger({ webhook_method: 'POST', webhook_register: async (context, url) => { - const { access_token, space_id } = getQoreContextRequiredValues({ + const { token, space_id } = getQoreContextRequiredValues({ context, - connectionFields: ['access_token'], + connectionFields: ['token'], optionFields: ['space_id'], ErrorClass: ContentfulError, }); @@ -59,7 +59,7 @@ const WatchEvent = QoreAppCreator.createLocalizedTrigger({ const response = await QorusRequest.post<{ data: { sys: { id: string } } }>( { headers: { - Authorization: `Bearer ${access_token}`, + Authorization: `Bearer ${token}`, 'Content-Type': 'application/json', }, data: { @@ -85,9 +85,9 @@ const WatchEvent = QoreAppCreator.createLocalizedTrigger({ }, webhook_deregister: async (context, _url, regInfo: { webhook: { id: string } }) => { - const { access_token, space_id } = getQoreContextRequiredValues({ + const { token, space_id } = getQoreContextRequiredValues({ context, - connectionFields: ['access_token'], + connectionFields: ['token'], optionFields: ['space_id'], ErrorClass: ContentfulError, }); @@ -101,7 +101,7 @@ const WatchEvent = QoreAppCreator.createLocalizedTrigger({ await QorusRequest.deleteReq( { headers: { - Authorization: `Bearer ${access_token}`, + Authorization: `Bearer ${token}`, }, path: `/spaces/${space_id}/webhook_definitions/${webhookId}`, }, diff --git a/ts/src/i18n/en/apps/Contentful/index.ts b/ts/src/i18n/en/apps/Contentful/index.ts index 2998a1d1..0266fc71 100644 --- a/ts/src/i18n/en/apps/Contentful/index.ts +++ b/ts/src/i18n/en/apps/Contentful/index.ts @@ -19,6 +19,16 @@ const ContentfulAppEn = { **Important:** The token is only shown once. Make sure to copy and save it securely. +## Authorizing Your Token for an Organization + +If your Contentful account belongs to an organization, you must **authorize your token** for that organization before it can access spaces: + +1. Go to your [Personal Access Tokens](https://app.contentful.com/account/profile/cma_tokens) page +2. Find your token in the list +3. Click **Authorize** next to the organization you want the token to access + +Without this step, API requests will fail with an \`OrganizationAccessGrantRequired\` error, even though the token is valid. + ## Permissions The CMA token inherits the permissions of the user who created it. Ensure the user has appropriate access to the spaces and environments you want to manage.`, diff --git a/ts/src/i18n/i18n-types.ts b/ts/src/i18n/i18n-types.ts index c7178fee..442432a0 100644 --- a/ts/src/i18n/i18n-types.ts +++ b/ts/src/i18n/i18n-types.ts @@ -106412,6 +106412,16 @@ type RootTranslation = { ​ ​*​*​I​m​p​o​r​t​a​n​t​:​*​*​ ​T​h​e​ ​t​o​k​e​n​ ​i​s​ ​o​n​l​y​ ​s​h​o​w​n​ ​o​n​c​e​.​ ​M​a​k​e​ ​s​u​r​e​ ​t​o​ ​c​o​p​y​ ​a​n​d​ ​s​a​v​e​ ​i​t​ ​s​e​c​u​r​e​l​y​.​ ​ + ​#​#​ ​A​u​t​h​o​r​i​z​i​n​g​ ​Y​o​u​r​ ​T​o​k​e​n​ ​f​o​r​ ​a​n​ ​O​r​g​a​n​i​z​a​t​i​o​n​ + ​ + ​I​f​ ​y​o​u​r​ ​C​o​n​t​e​n​t​f​u​l​ ​a​c​c​o​u​n​t​ ​b​e​l​o​n​g​s​ ​t​o​ ​a​n​ ​o​r​g​a​n​i​z​a​t​i​o​n​,​ ​y​o​u​ ​m​u​s​t​ ​*​*​a​u​t​h​o​r​i​z​e​ ​y​o​u​r​ ​t​o​k​e​n​*​*​ ​f​o​r​ ​t​h​a​t​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​b​e​f​o​r​e​ ​i​t​ ​c​a​n​ ​a​c​c​e​s​s​ ​s​p​a​c​e​s​:​ + ​ + ​1​.​ ​G​o​ ​t​o​ ​y​o​u​r​ ​[​P​e​r​s​o​n​a​l​ ​A​c​c​e​s​s​ ​T​o​k​e​n​s​]​(​h​t​t​p​s​:​/​/​a​p​p​.​c​o​n​t​e​n​t​f​u​l​.​c​o​m​/​a​c​c​o​u​n​t​/​p​r​o​f​i​l​e​/​c​m​a​_​t​o​k​e​n​s​)​ ​p​a​g​e​ + ​2​.​ ​F​i​n​d​ ​y​o​u​r​ ​t​o​k​e​n​ ​i​n​ ​t​h​e​ ​l​i​s​t​ + ​3​.​ ​C​l​i​c​k​ ​*​*​A​u​t​h​o​r​i​z​e​*​*​ ​n​e​x​t​ ​t​o​ ​t​h​e​ ​o​r​g​a​n​i​z​a​t​i​o​n​ ​y​o​u​ ​w​a​n​t​ ​t​h​e​ ​t​o​k​e​n​ ​t​o​ ​a​c​c​e​s​s​ + ​ + ​W​i​t​h​o​u​t​ ​t​h​i​s​ ​s​t​e​p​,​ ​A​P​I​ ​r​e​q​u​e​s​t​s​ ​w​i​l​l​ ​f​a​i​l​ ​w​i​t​h​ ​a​n​ ​`​O​r​g​a​n​i​z​a​t​i​o​n​A​c​c​e​s​s​G​r​a​n​t​R​e​q​u​i​r​e​d​`​ ​e​r​r​o​r​,​ ​e​v​e​n​ ​t​h​o​u​g​h​ ​t​h​e​ ​t​o​k​e​n​ ​i​s​ ​v​a​l​i​d​.​ + ​ ​#​#​ ​P​e​r​m​i​s​s​i​o​n​s​ ​ ​T​h​e​ ​C​M​A​ ​t​o​k​e​n​ ​i​n​h​e​r​i​t​s​ ​t​h​e​ ​p​e​r​m​i​s​s​i​o​n​s​ ​o​f​ ​t​h​e​ ​u​s​e​r​ ​w​h​o​ ​c​r​e​a​t​e​d​ ​i​t​.​ ​E​n​s​u​r​e​ ​t​h​e​ ​u​s​e​r​ ​h​a​s​ ​a​p​p​r​o​p​r​i​a​t​e​ ​a​c​c​e​s​s​ ​t​o​ ​t​h​e​ ​s​p​a​c​e​s​ ​a​n​d​ ​e​n​v​i​r​o​n​m​e​n​t​s​ ​y​o​u​ ​w​a​n​t​ ​t​o​ ​m​a​n​a​g​e​. @@ -238692,6 +238702,16 @@ export type TranslationFunctions = { **Important:** The token is only shown once. Make sure to copy and save it securely. + ## Authorizing Your Token for an Organization + + If your Contentful account belongs to an organization, you must **authorize your token** for that organization before it can access spaces: + + 1. Go to your [Personal Access Tokens](https://app.contentful.com/account/profile/cma_tokens) page + 2. Find your token in the list + 3. Click **Authorize** next to the organization you want the token to access + + Without this step, API requests will fail with an `OrganizationAccessGrantRequired` error, even though the token is valid. + ## Permissions The CMA token inherits the permissions of the user who created it. Ensure the user has appropriate access to the spaces and environments you want to manage. diff --git a/ts/src/tests/contentful.test.ts b/ts/src/tests/contentful.test.ts index 12c5e750..48f3bb34 100644 --- a/ts/src/tests/contentful.test.ts +++ b/ts/src/tests/contentful.test.ts @@ -35,7 +35,9 @@ import UpdateField from '../apps/contentful/actions/content-types/update-field.a import DeleteField from '../apps/contentful/actions/content-types/delete-field.action'; import SearchContentTypes from '../apps/contentful/actions/content-types/search-content-types.action'; import WatchEvent from '../apps/contentful/triggers/watch-event.trigger'; +import { getContentfulEntryFieldOptions, getContentfulEntryDynamicResponseType } from '../apps/contentful/helpers/get-dynamic-entry-type'; import { getContentfulScopedClient } from '../apps/contentful/client'; +import { CONTENTFUL_API_URL } from '../apps/contentful/constants'; import { delay } from '../global/helpers'; import { checkAllowedValues, skipOnTransientError } from './utils'; import { Debugger, DebugLevels } from '../utils/Debugger'; @@ -43,14 +45,28 @@ import { Debugger, DebugLevels } from '../utils/Debugger'; Debugger.level = DebugLevels.Verbose; configDotenv({ path: '.env' }); +/** + * Safely call api_function on an action, narrowing the type via `in` check. + */ +const callAction = async ( + action: Record, + opts: Record, + context: Record +): Promise> => { + if (!('api_function' in action) || typeof action.api_function !== 'function') { + throw new Error('api_function not found in action'); + } + return action.api_function(opts, undefined, context); +}; + describe('Should test Contentful actions', () => { const accessToken = process.env.CONTENTFUL_ACCESS_TOKEN; const spaceId = process.env.CONTENTFUL_SPACE_ID; - const hasCredentials = !!(accessToken && spaceId); + const hasCredentials = !!(accessToken); const baseContext = { conn_opts: { - access_token: accessToken || '', + token: accessToken || '', } as Record, }; @@ -60,7 +76,37 @@ describe('Should test Contentful actions', () => { }; let testContentTypeId: string | undefined; - let testEntryId: string | undefined; + + // ==================== Ping URL Test ==================== + describe('Should test Contentful ping URL', () => { + it('Should successfully ping the Contentful API', skipOnTransientError(async () => { + if (!hasCredentials) { + return; + } + const response = await fetch(`${CONTENTFUL_API_URL}/spaces`, { + method: 'GET', + headers: { + Authorization: `Bearer ${accessToken}`, + }, + }); + expect(response.ok).toBe(true); + const data = await response.json(); + expect(data).toBeDefined(); + expect(data.items).toBeDefined(); + expect(Array.isArray(data.items)).toBe(true); + })); + + it('Should fail to ping with invalid credentials', async () => { + const response = await fetch(`${CONTENTFUL_API_URL}/spaces`, { + method: 'GET', + headers: { + Authorization: 'Bearer invalid-token-12345', + }, + }); + expect(response.ok).toBe(false); + expect(response.status).toBe(401); + }); + }); // ==================== Allowed Values Tests ==================== describe('Should test Contentful allowed values', () => { @@ -74,6 +120,10 @@ describe('Should test Contentful actions', () => { } const allowedValues = await getContentfulSpaceAllowedValues(baseContext); checkAllowedValues(allowedValues, { checkNonEmpty: true }); + if(!baseOpts.space_id && spaceId) { + expect(allowedValues.some(av => av.value === spaceId)).toBe(true); + baseOpts.space_id = spaceId; + } })); it('Should return empty space allowed values when connection options are missing', async () => { @@ -172,6 +222,64 @@ describe('Should test Contentful actions', () => { }); }); + // ==================== Dynamic Type Tests ==================== + describe('Should test Contentful dynamic types', () => { + afterEach(async () => { + await delay(500); + }); + + it('Should return dynamic field options for a content type', skipOnTransientError(async () => { + if (!hasCredentials || !testContentTypeId) { + return; + } + const dynamicType = await getContentfulEntryFieldOptions({ + ...baseContext, + opts: { space_id: spaceId, content_type_id: testContentTypeId }, + } as unknown as Record) as unknown as Record; + expect(dynamicType).toBeDefined(); + expect(dynamicType.type).toBe('hash'); + expect(dynamicType.fields).toBeDefined(); + const fields = dynamicType.fields as Record; + expect(Object.keys(fields).length).toBeGreaterThan(0); + // The 'test' content type has a 'something' field of type Symbol + expect(fields.something).toBeDefined(); + })); + + it('Should return dynamic response type for a content type', skipOnTransientError(async () => { + if (!hasCredentials || !testContentTypeId) { + return; + } + const dynamicType = await getContentfulEntryDynamicResponseType({ + ...baseContext, + opts: { space_id: spaceId, content_type_id: testContentTypeId }, + } as unknown as Record) as unknown as Record; + expect(dynamicType).toBeDefined(); + expect(dynamicType.type).toBe('hash'); + expect(dynamicType.fields).toBeDefined(); + const fields = dynamicType.fields as Record; + // Should include system fields + expect(fields.id).toBeDefined(); + expect(fields.content_type).toBeDefined(); + expect(fields.created_at).toBeDefined(); + expect(fields.updated_at).toBeDefined(); + expect(fields.version).toBeDefined(); + // Should include content type-specific fields + expect(fields.something).toBeDefined(); + })); + + it('Should return fallback hash type when content_type_id is missing', async () => { + try { + await getContentfulEntryFieldOptions({ + ...baseContext, + opts: { space_id: spaceId }, + } as unknown as Record); + fail('Should have thrown'); + } catch (error) { + expect(error).toBeInstanceOf(ContentfulError); + } + }); + }); + // ==================== Content Type Actions Tests ==================== describe('Should test Contentful content type actions', () => { let createdContentTypeId: string | undefined; @@ -201,9 +309,9 @@ describe('Should test Contentful actions', () => { if (!hasCredentials) { return; } - const result = await SearchContentTypes.api_function!( + const result = await callAction( + SearchContentTypes as unknown as Record, { ...baseOpts, limit: 5 }, - undefined, baseContext as unknown as Record ); expect(result).toBeDefined(); @@ -214,9 +322,9 @@ describe('Should test Contentful actions', () => { if (!hasCredentials || !testContentTypeId) { return; } - const result = await GetContentType.api_function!( + const result = await callAction( + GetContentType as unknown as Record, { ...baseOpts, content_type_id: testContentTypeId }, - undefined, baseContext as unknown as Record ); expect(result).toBeDefined(); @@ -230,7 +338,8 @@ describe('Should test Contentful actions', () => { return; } const uniqueName = `Test CT ${Date.now()}`; - const result = await CreateContentType.api_function!( + const result = await callAction( + CreateContentType as unknown as Record, { ...baseOpts, name: uniqueName, @@ -240,15 +349,14 @@ describe('Should test Contentful actions', () => { { id: 'body', name: 'Body', type: 'Text', required: false, localized: false }, ], }, - undefined, baseContext as unknown as Record ); expect(result).toBeDefined(); expect(result.id).toBeDefined(); expect(result.name).toBe(uniqueName); expect(result.fields).toBeDefined(); - expect(result.fields.length).toBe(2); - createdContentTypeId = result.id; + expect((result.fields as unknown[]).length).toBe(2); + createdContentTypeId = result.id as string; })); it('Should update a content type', skipOnTransientError(async () => { @@ -256,14 +364,14 @@ describe('Should test Contentful actions', () => { return; } const updatedName = `Updated CT ${Date.now()}`; - const result = await UpdateContentType.api_function!( + const result = await callAction( + UpdateContentType as unknown as Record, { ...baseOpts, content_type_id: createdContentTypeId, name: updatedName, description: 'Updated description', }, - undefined, baseContext as unknown as Record ); expect(result).toBeDefined(); @@ -274,7 +382,8 @@ describe('Should test Contentful actions', () => { if (!hasCredentials || !createdContentTypeId) { return; } - const result = await AddField.api_function!( + const result = await callAction( + AddField as unknown as Record, { ...baseOpts, content_type_id: createdContentTypeId, @@ -284,19 +393,20 @@ describe('Should test Contentful actions', () => { required: false, localized: false, }, - undefined, baseContext as unknown as Record ); expect(result).toBeDefined(); - expect(result.fields.length).toBe(3); - expect(result.fields.some((f: Record) => f.id === 'testNumber')).toBe(true); + const fields = result.fields as Record[]; + expect(fields.length).toBe(3); + expect(fields.some((f) => f.id === 'testNumber')).toBe(true); })); it('Should update a field of a content type', skipOnTransientError(async () => { if (!hasCredentials || !createdContentTypeId) { return; } - const result = await UpdateField.api_function!( + const result = await callAction( + UpdateField as unknown as Record, { ...baseOpts, content_type_id: createdContentTypeId, @@ -304,22 +414,22 @@ describe('Should test Contentful actions', () => { field_name: 'Updated Number Field', required: true, }, - undefined, baseContext as unknown as Record ); expect(result).toBeDefined(); - const updatedField = result.fields.find((f: Record) => f.id === 'testNumber'); + const fields = result.fields as Record[]; + const updatedField = fields.find((f) => f.id === 'testNumber'); expect(updatedField).toBeDefined(); - expect(updatedField.name).toBe('Updated Number Field'); + expect(updatedField!.name).toBe('Updated Number Field'); })); it('Should activate a content type', skipOnTransientError(async () => { if (!hasCredentials || !createdContentTypeId) { return; } - const result = await ActivateContentType.api_function!( + const result = await callAction( + ActivateContentType as unknown as Record, { ...baseOpts, content_type_id: createdContentTypeId }, - undefined, baseContext as unknown as Record ); expect(result).toBeDefined(); @@ -330,9 +440,9 @@ describe('Should test Contentful actions', () => { if (!hasCredentials || !createdContentTypeId) { return; } - const result = await DeactivateContentType.api_function!( + const result = await callAction( + DeactivateContentType as unknown as Record, { ...baseOpts, content_type_id: createdContentTypeId }, - undefined, baseContext as unknown as Record ); expect(result).toBeDefined(); @@ -343,26 +453,27 @@ describe('Should test Contentful actions', () => { if (!hasCredentials || !createdContentTypeId) { return; } - const result = await DeleteField.api_function!( + const result = await callAction( + DeleteField as unknown as Record, { ...baseOpts, content_type_id: createdContentTypeId, field_id: 'testNumber', }, - undefined, baseContext as unknown as Record ); expect(result).toBeDefined(); - expect(result.fields.every((f: Record) => f.id !== 'testNumber')).toBe(true); + const fields = result.fields as Record[]; + expect(fields.every((f) => f.id !== 'testNumber')).toBe(true); })); it('Should delete a content type', skipOnTransientError(async () => { if (!hasCredentials || !createdContentTypeId) { return; } - const result = await DeleteContentType.api_function!( + const result = await callAction( + DeleteContentType as unknown as Record, { ...baseOpts, content_type_id: createdContentTypeId }, - undefined, baseContext as unknown as Record ); expect(result).toBeDefined(); @@ -393,7 +504,7 @@ describe('Should test Contentful actions', () => { } try { const entry = await client.entry.get({ entryId: createdEntryId }); - if ((entry.sys as Record).archivedVersion) { + if ((entry.sys as unknown as Record).archivedVersion) { await client.entry.unarchive({ entryId: createdEntryId }); } } catch { @@ -409,9 +520,9 @@ describe('Should test Contentful actions', () => { if (!hasCredentials || !testContentTypeId) { return; } - const result = await SearchEntries.api_function!( + const result = await callAction( + SearchEntries as unknown as Record, { ...baseOpts, content_type_id: testContentTypeId, limit: 5 }, - undefined, baseContext as unknown as Record ); expect(result).toBeDefined(); @@ -422,29 +533,28 @@ describe('Should test Contentful actions', () => { if (!hasCredentials || !testContentTypeId) { return; } - const result = await CreateEntry.api_function!( + const result = await callAction( + CreateEntry as unknown as Record, { ...baseOpts, content_type_id: testContentTypeId, - fields: { title: `Test Entry ${Date.now()}` }, + fields: { something: `Test Entry ${Date.now()}` }, publish: false, }, - undefined, baseContext as unknown as Record ); expect(result).toBeDefined(); expect(result.id).toBeDefined(); - createdEntryId = result.id; - testEntryId = result.id; + createdEntryId = result.id as string; })); it('Should get an entry', skipOnTransientError(async () => { if (!hasCredentials || !createdEntryId) { return; } - const result = await GetEntry.api_function!( + const result = await callAction( + GetEntry as unknown as Record, { ...baseOpts, content_type_id: testContentTypeId, entry_id: createdEntryId }, - undefined, baseContext as unknown as Record ); expect(result).toBeDefined(); @@ -455,39 +565,39 @@ describe('Should test Contentful actions', () => { if (!hasCredentials || !createdEntryId) { return; } - const updatedTitle = `Updated Entry ${Date.now()}`; - const result = await UpdateEntry.api_function!( + const updatedValue = `Updated Entry ${Date.now()}`; + const result = await callAction( + UpdateEntry as unknown as Record, { ...baseOpts, content_type_id: testContentTypeId, entry_id: createdEntryId, - fields: { title: updatedTitle }, + fields: { something: updatedValue }, }, - undefined, baseContext as unknown as Record ); expect(result).toBeDefined(); - expect(result.title).toBe(updatedTitle); + expect(result.something).toBe(updatedValue); })); it('Should get an entry with replacement', skipOnTransientError(async () => { if (!hasCredentials || !createdEntryId) { return; } - const result = await GetEntryWithReplacement.api_function!( + const result = await callAction( + GetEntryWithReplacement as unknown as Record, { ...baseOpts, content_type_id: testContentTypeId, entry_id: createdEntryId, replacements: [{ tag: 'Updated', value: 'Replaced' }], }, - undefined, baseContext as unknown as Record ); expect(result).toBeDefined(); expect(result.id).toBe(createdEntryId); - if (typeof result.title === 'string') { - expect(result.title).toContain('Replaced'); + if (typeof result.something === 'string') { + expect(result.something).toContain('Replaced'); } })); @@ -495,9 +605,9 @@ describe('Should test Contentful actions', () => { if (!hasCredentials || !createdEntryId) { return; } - const result = await PublishEntry.api_function!( + const result = await callAction( + PublishEntry as unknown as Record, { ...baseOpts, entry_id: createdEntryId }, - undefined, baseContext as unknown as Record ); expect(result).toBeDefined(); @@ -509,9 +619,9 @@ describe('Should test Contentful actions', () => { if (!hasCredentials || !createdEntryId) { return; } - const result = await UnpublishEntry.api_function!( + const result = await callAction( + UnpublishEntry as unknown as Record, { ...baseOpts, entry_id: createdEntryId }, - undefined, baseContext as unknown as Record ); expect(result).toBeDefined(); @@ -522,9 +632,9 @@ describe('Should test Contentful actions', () => { if (!hasCredentials || !createdEntryId) { return; } - const result = await ArchiveEntry.api_function!( + const result = await callAction( + ArchiveEntry as unknown as Record, { ...baseOpts, entry_id: createdEntryId, archive: true }, - undefined, baseContext as unknown as Record ); expect(result).toBeDefined(); @@ -536,9 +646,9 @@ describe('Should test Contentful actions', () => { if (!hasCredentials || !createdEntryId) { return; } - const result = await ArchiveEntry.api_function!( + const result = await callAction( + ArchiveEntry as unknown as Record, { ...baseOpts, entry_id: createdEntryId, archive: false }, - undefined, baseContext as unknown as Record ); expect(result).toBeDefined(); @@ -550,9 +660,9 @@ describe('Should test Contentful actions', () => { if (!hasCredentials || !createdEntryId) { return; } - const result = await DeleteEntry.api_function!( + const result = await callAction( + DeleteEntry as unknown as Record, { ...baseOpts, content_type_id: testContentTypeId, entry_id: createdEntryId }, - undefined, baseContext as unknown as Record ); expect(result).toBeDefined(); @@ -583,7 +693,7 @@ describe('Should test Contentful actions', () => { } try { const asset = await client.asset.get({ assetId: createdAssetId }); - if ((asset.sys as Record).archivedVersion) { + if ((asset.sys as unknown as Record).archivedVersion) { await client.asset.unarchive({ assetId: createdAssetId }); } } catch { @@ -599,9 +709,9 @@ describe('Should test Contentful actions', () => { if (!hasCredentials) { return; } - const result = await SearchAssets.api_function!( + const result = await callAction( + SearchAssets as unknown as Record, { ...baseOpts, limit: 5 }, - undefined, baseContext as unknown as Record ); expect(result).toBeDefined(); @@ -612,32 +722,31 @@ describe('Should test Contentful actions', () => { if (!hasCredentials) { return; } - const result = await CreateAsset.api_function!( + const result = await callAction( + CreateAsset as unknown as Record, { ...baseOpts, title: `Test Asset ${Date.now()}`, description: 'Test asset created by integration tests', file_name: 'test-image.png', - file_url: - 'https://images.ctfassets.net/fo9twyrwpveg/6wsHKoGRMQ2WYCUaYmoKeY/d3e8e4e9f34eed9df3b4ab29cc6a5bd5/hedgehog.jpg', - content_type: 'image/jpeg', + file_url: 'https://upload.wikimedia.org/wikipedia/commons/thumb/4/47/PNG_transparency_demonstration_1.png/100px-PNG_transparency_demonstration_1.png', + content_type: 'image/png', publish: false, }, - undefined, baseContext as unknown as Record ); expect(result).toBeDefined(); expect(result.id).toBeDefined(); - createdAssetId = result.id; - }), 30000); + createdAssetId = result.id as string; + }), 60000); it('Should get an asset', skipOnTransientError(async () => { if (!hasCredentials || !createdAssetId) { return; } - const result = await GetAsset.api_function!( + const result = await callAction( + GetAsset as unknown as Record, { ...baseOpts, asset_id: createdAssetId }, - undefined, baseContext as unknown as Record ); expect(result).toBeDefined(); @@ -649,13 +758,13 @@ describe('Should test Contentful actions', () => { return; } const updatedTitle = `Updated Asset ${Date.now()}`; - const result = await UpdateAsset.api_function!( + const result = await callAction( + UpdateAsset as unknown as Record, { ...baseOpts, asset_id: createdAssetId, title: updatedTitle, }, - undefined, baseContext as unknown as Record ); expect(result).toBeDefined(); @@ -666,9 +775,9 @@ describe('Should test Contentful actions', () => { if (!hasCredentials || !createdAssetId) { return; } - const result = await PublishAsset.api_function!( + const result = await callAction( + PublishAsset as unknown as Record, { ...baseOpts, asset_id: createdAssetId }, - undefined, baseContext as unknown as Record ); expect(result).toBeDefined(); @@ -679,9 +788,9 @@ describe('Should test Contentful actions', () => { if (!hasCredentials || !createdAssetId) { return; } - const result = await UnpublishAsset.api_function!( + const result = await callAction( + UnpublishAsset as unknown as Record, { ...baseOpts, asset_id: createdAssetId }, - undefined, baseContext as unknown as Record ); expect(result).toBeDefined(); @@ -692,9 +801,9 @@ describe('Should test Contentful actions', () => { if (!hasCredentials || !createdAssetId) { return; } - const result = await ArchiveAsset.api_function!( + const result = await callAction( + ArchiveAsset as unknown as Record, { ...baseOpts, asset_id: createdAssetId, archive: true }, - undefined, baseContext as unknown as Record ); expect(result).toBeDefined(); @@ -706,9 +815,9 @@ describe('Should test Contentful actions', () => { if (!hasCredentials || !createdAssetId) { return; } - const result = await ArchiveAsset.api_function!( + const result = await callAction( + ArchiveAsset as unknown as Record, { ...baseOpts, asset_id: createdAssetId, archive: false }, - undefined, baseContext as unknown as Record ); expect(result).toBeDefined(); @@ -720,9 +829,9 @@ describe('Should test Contentful actions', () => { if (!hasCredentials || !createdAssetId) { return; } - const result = await DeleteAsset.api_function!( + const result = await callAction( + DeleteAsset as unknown as Record, { ...baseOpts, asset_id: createdAssetId }, - undefined, baseContext as unknown as Record ); expect(result).toBeDefined(); @@ -749,7 +858,9 @@ describe('Should test Contentful actions', () => { ); expect(result).toBeDefined(); - const eventInfoFields = Object.keys(trigger.event_info!.type.fields); + const eventInfo = trigger.event_info!; + const eventType = eventInfo.type as { fields: Record }; + const eventInfoFields = Object.keys(eventType.fields); const exampleFields = Object.keys(result); const missingFields = eventInfoFields.filter((f) => !exampleFields.includes(f)); @@ -765,14 +876,14 @@ describe('Should test Contentful actions', () => { it('Should throw error with invalid access token', async () => { const invalidContext = { conn_opts: { - access_token: 'invalid-token-12345', + token: 'invalid-token-12345', } as Record, }; await expect( - GetEntry.api_function!( + callAction( + GetEntry as unknown as Record, { space_id: spaceId || 'test', entry_id: 'nonexistent' }, - undefined, invalidContext as unknown as Record ) ).rejects.toThrow(ContentfulError); @@ -783,9 +894,9 @@ describe('Should test Contentful actions', () => { return; } await expect( - GetEntry.api_function!( + callAction( + GetEntry as unknown as Record, { ...baseOpts, content_type_id: testContentTypeId, entry_id: 'nonexistent-entry-id' }, - undefined, baseContext as unknown as Record ) ).rejects.toThrow(ContentfulError); @@ -796,9 +907,9 @@ describe('Should test Contentful actions', () => { return; } await expect( - GetAsset.api_function!( + callAction( + GetAsset as unknown as Record, { ...baseOpts, asset_id: 'nonexistent-asset-id' }, - undefined, baseContext as unknown as Record ) ).rejects.toThrow(ContentfulError); @@ -809,9 +920,9 @@ describe('Should test Contentful actions', () => { return; } await expect( - GetContentType.api_function!( + callAction( + GetContentType as unknown as Record, { ...baseOpts, content_type_id: 'nonexistent-content-type-id' }, - undefined, baseContext as unknown as Record ) ).rejects.toThrow(ContentfulError); @@ -822,9 +933,9 @@ describe('Should test Contentful actions', () => { return; } await expect( - CreateEntry.api_function!( + callAction( + CreateEntry as unknown as Record, { space_id: spaceId } as Record, - undefined, baseContext as unknown as Record ) ).rejects.toThrow(); From 30bbd077c8e9bf90590b4c421c354d44a352a32a Mon Sep 17 00:00:00 2001 From: Nick Date: Wed, 25 Mar 2026 20:06:02 +0200 Subject: [PATCH 3/5] fix: add timeout handling for notion discussions fetch and fix attio tests --- .../apps/notion/helpers/get-discussion-allowed-values.ts | 8 ++++++++ ts/src/tests/attio.test.ts | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/ts/src/apps/notion/helpers/get-discussion-allowed-values.ts b/ts/src/apps/notion/helpers/get-discussion-allowed-values.ts index ad64f3ab..1625d647 100644 --- a/ts/src/apps/notion/helpers/get-discussion-allowed-values.ts +++ b/ts/src/apps/notion/helpers/get-discussion-allowed-values.ts @@ -23,6 +23,9 @@ export const getNotionDiscussionsAllowedValues: TQoreGetAllowedValuesFunction< const notion = createNotionClient(token); const allDiscussions: IQoreAllowedValue[] = []; + const TIMEOUT_MS = 10_000; + const startTime = Date.now(); + const pagesResponse = await notion.search({ filter: { property: 'object', @@ -36,6 +39,11 @@ export const getNotionDiscussionsAllowedValues: TQoreGetAllowedValuesFunction< }); for (const page of pagesResponse.results as PageObjectResponse[]) { + if (allDiscussions.length > 0 && Date.now() - startTime >= TIMEOUT_MS) { + Debugger.log('Discussion fetch timed out after 10s, returning partial results'); + break; + } + try { const commentsResponse = await notion.comments.list({ block_id: page.id, diff --git a/ts/src/tests/attio.test.ts b/ts/src/tests/attio.test.ts index b465861a..ed8f8804 100644 --- a/ts/src/tests/attio.test.ts +++ b/ts/src/tests/attio.test.ts @@ -346,7 +346,7 @@ describe('Should test attio actions', () => { }); describe('Should test attio record based helpers', () => { - const table = 'test_objects'; + const table = 'objects'; it('Should get table list', async () => { const result = await getAttioTableList(baseContext); From 30f0b67129ad7049dc05df8edf2498555e3f03f8 Mon Sep 17 00:00:00 2001 From: Nick Date: Wed, 25 Mar 2026 21:00:22 +0200 Subject: [PATCH 4/5] add libeigen3-dev to pull request workflow dependencies --- .github/workflows/pull_request.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml index 848046e5..97481bca 100644 --- a/.github/workflows/pull_request.yml +++ b/.github/workflows/pull_request.yml @@ -354,7 +354,8 @@ jobs: libnghttp2-dev \ doxygen \ libyaml-dev \ - uuid-dev + uuid-dev \ + libeigen3-dev # Install OpenSSL 3.5+ with native QUIC support (SSL_set_quic_tls_cbs) # System OpenSSL 3.0.x lacks QUIC APIs needed by ngtcp2 for Qore's HTTP/3 support From 71f874d5cd03f387b83537d12f6b95d01d287f85 Mon Sep 17 00:00:00 2001 From: Nick Date: Thu, 26 Mar 2026 13:13:06 +0200 Subject: [PATCH 5/5] fix: update protobuf dependencies in pull request workflow --- .github/workflows/pull_request.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml index 763b3406..4c3466af 100644 --- a/.github/workflows/pull_request.yml +++ b/.github/workflows/pull_request.yml @@ -357,8 +357,8 @@ jobs: uuid-dev \ libeigen3-dev \ libprotobuf-dev \ - protobuf-compiler \ - libeigen3-dev + libprotoc-dev \ + protobuf-compiler # Install OpenSSL 3.5+ with native QUIC support (SSL_set_quic_tls_cbs) # System OpenSSL 3.0.x lacks QUIC APIs needed by ngtcp2 for Qore's HTTP/3 support