@bonsae/node-red-salesforce 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/README.md +126 -0
  2. package/examples/1-soql-query.json +103 -0
  3. package/examples/10-streaming-platform-events.json +73 -0
  4. package/examples/11-streaming-change-data-capture.json +73 -0
  5. package/examples/2-dml-create.json +106 -0
  6. package/examples/3-dml-read.json +83 -0
  7. package/examples/4-dml-update.json +83 -0
  8. package/examples/5-dml-delete.json +83 -0
  9. package/examples/6-describe.json +97 -0
  10. package/examples/7-apex-rest.json +99 -0
  11. package/examples/8-bulk-insert.json +63 -0
  12. package/examples/9-bulk-query.json +63 -0
  13. package/icons/salesforce-apex.png +0 -0
  14. package/icons/salesforce-bulk.png +0 -0
  15. package/icons/salesforce-connection.png +0 -0
  16. package/icons/salesforce-describe.png +0 -0
  17. package/icons/salesforce-dml.png +0 -0
  18. package/icons/salesforce-soql.png +0 -0
  19. package/icons/salesforce-streaming.png +0 -0
  20. package/index.d.ts +268 -0
  21. package/index.html +2 -0
  22. package/index.js +14 -0
  23. package/index.mjs +913 -0
  24. package/index.mjs.map +1 -0
  25. package/locales/de/index.html +226 -0
  26. package/locales/de/index.json +154 -0
  27. package/locales/en-US/index.html +226 -0
  28. package/locales/en-US/index.json +154 -0
  29. package/locales/es-ES/index.html +226 -0
  30. package/locales/es-ES/index.json +154 -0
  31. package/locales/fr/index.html +226 -0
  32. package/locales/fr/index.json +154 -0
  33. package/locales/ja/index.html +226 -0
  34. package/locales/ja/index.json +154 -0
  35. package/locales/ko/index.html +226 -0
  36. package/locales/ko/index.json +154 -0
  37. package/locales/pt-BR/index.html +226 -0
  38. package/locales/pt-BR/index.json +154 -0
  39. package/locales/ru/index.html +226 -0
  40. package/locales/ru/index.json +154 -0
  41. package/locales/zh-CN/index.html +226 -0
  42. package/locales/zh-CN/index.json +154 -0
  43. package/locales/zh-TW/index.html +226 -0
  44. package/locales/zh-TW/index.json +154 -0
  45. package/package.json +52 -0
  46. package/resources/index.CfTW8fjc.js +1 -0
@@ -0,0 +1,226 @@
1
+ <script type="text/html" data-help-name="salesforce-connection">
2
+ <p>Управляет подключением к организации Salesforce с использованием OAuth 2.0 с PKCE. Обеспечивает аутентификацию и управление токенами для других узлов Salesforce.</p>
3
+ <h3>Свойства</h3>
4
+ <div style="overflow-x:auto">
5
+ <table width="100%" style="min-width:500px">
6
+ <thead><tr><th>Метка</th><th>Свойство</th><th>Тип</th><th>Обязательно</th><th>По умолчанию</th><th style="width:35%">Описание</th></tr></thead>
7
+ <tbody>
8
+ <tr><td>URL входа</td><td>loginUrl</td><td>string</td><td>Да</td><td><code>"https://login.salesforce.com"</code></td><td></td></tr>
9
+ <tr><td>ID клиента</td><td>clientId</td><td>string</td><td>Да</td><td><code>""</code></td><td></td></tr>
10
+ <tr><td>Версия API</td><td>apiVersion</td><td></td><td>Да</td><td><code>"62.0"</code></td><td></td></tr>
11
+ <tr><td>URL обратного вызова</td><td>callbackUrl</td><td>string</td><td>Нет</td><td><code>""</code></td><td></td></tr>
12
+ </tbody>
13
+ </table>
14
+ </div>
15
+
16
+ <h3>Учётные данные</h3>
17
+ <div style="overflow-x:auto">
18
+ <table width="100%" style="min-width:500px">
19
+ <thead><tr><th>Метка</th><th>Свойство</th><th>Тип</th><th>Обязательно</th><th>По умолчанию</th><th style="width:35%">Описание</th></tr></thead>
20
+ <tbody>
21
+ <tr><td>Токен доступа</td><td>accessToken</td><td>string</td><td>Да</td><td><code>""</code></td><td></td></tr>
22
+ <tr><td>Токен обновления</td><td>refreshToken</td><td>string</td><td>Да</td><td><code>""</code></td><td></td></tr>
23
+ <tr><td>URL экземпляра</td><td>instanceUrl</td><td>string</td><td>Да</td><td><code>""</code></td><td></td></tr>
24
+ </tbody>
25
+ </table>
26
+ </div>
27
+ </script>
28
+ <script type="text/html" data-help-name="salesforce-soql">
29
+ <p>Выполняет SOQL-запрос к Salesforce и возвращает совпадающие записи.</p>
30
+ <h3>Свойства</h3>
31
+ <div style="overflow-x:auto">
32
+ <table width="100%" style="min-width:500px">
33
+ <thead><tr><th>Метка</th><th>Свойство</th><th>Тип</th><th>Обязательно</th><th>По умолчанию</th><th style="width:35%">Описание</th></tr></thead>
34
+ <tbody>
35
+ <tr><td>Connection</td><td>connection</td><td>NodeRef → salesforce-connection [format: node-id]</td><td>Да</td><td></td><td>Reference to salesforce-connection</td></tr>
36
+ <tr><td>Запрос</td><td>query</td><td>TypedInput</td><td>Да</td><td><code>{"type":"str","value":""}</code></td><td>Represents a Node-RED TypedInput value and its type.</td></tr>
37
+ </tbody>
38
+ </table>
39
+ </div>
40
+
41
+ <h3>Вход</h3>
42
+ <div style="overflow-x:auto">
43
+ <table width="100%" style="min-width:500px">
44
+ <thead><tr><th>Метка</th><th>Свойство</th><th>Тип</th><th>Обязательно</th><th style="width:35%">Описание</th></tr></thead>
45
+ <tbody>
46
+ <tr><td>Входные данные</td><td>payload</td><td></td><td>Да</td><td></td></tr>
47
+ </tbody>
48
+ </table>
49
+ </div>
50
+
51
+ <h3>Выход</h3>
52
+ <div style="overflow-x:auto">
53
+ <table width="100%" style="min-width:500px">
54
+ <thead><tr><th>Метка</th><th>Свойство</th><th>Тип</th><th>Обязательно</th><th style="width:35%">Описание</th></tr></thead>
55
+ <tbody>
56
+ <tr><td>Записи результата запроса</td><td>payload</td><td>array</td><td>Да</td><td></td></tr>
57
+ <tr><td>Общее количество совпадающих записей</td><td>totalSize</td><td>number</td><td>Да</td><td></td></tr>
58
+ <tr><td>Все ли записи были получены</td><td>done</td><td>boolean</td><td>Да</td><td></td></tr>
59
+ </tbody>
60
+ </table>
61
+ </div>
62
+ </script>
63
+ <script type="text/html" data-help-name="salesforce-dml">
64
+ <p>Выполняет операции создания, чтения, обновления, удаления или upsert над SObject-объектами Salesforce.</p>
65
+ <h3>Свойства</h3>
66
+ <div style="overflow-x:auto">
67
+ <table width="100%" style="min-width:500px">
68
+ <thead><tr><th>Метка</th><th>Свойство</th><th>Тип</th><th>Обязательно</th><th>По умолчанию</th><th style="width:35%">Описание</th></tr></thead>
69
+ <tbody>
70
+ <tr><td>Connection</td><td>connection</td><td>NodeRef → salesforce-connection [format: node-id]</td><td>Да</td><td></td><td>Reference to salesforce-connection</td></tr>
71
+ <tr><td>Операция</td><td>operation</td><td></td><td>Да</td><td><code>"create"</code></td><td></td></tr>
72
+ <tr><td>Тип SObject</td><td>sObjectType</td><td>TypedInput</td><td>Да</td><td><code>{"type":"str","value":""}</code></td><td>Represents a Node-RED TypedInput value and its type.</td></tr>
73
+ <tr><td></td><td>record</td><td>TypedInput</td><td>Да</td><td><code>{"type":"str","value":""}</code></td><td>Represents a Node-RED TypedInput value and its type.</td></tr>
74
+ <tr><td>Поле внешнего ID</td><td>externalIdField</td><td>string</td><td>Нет</td><td><code>""</code></td><td></td></tr>
75
+ </tbody>
76
+ </table>
77
+ </div>
78
+
79
+ <h3>Вход</h3>
80
+ <div style="overflow-x:auto">
81
+ <table width="100%" style="min-width:500px">
82
+ <thead><tr><th>Метка</th><th>Свойство</th><th>Тип</th><th>Обязательно</th><th style="width:35%">Описание</th></tr></thead>
83
+ <tbody>
84
+ <tr><td>Данные записи или ID</td><td>payload</td><td></td><td>Да</td><td></td></tr>
85
+ </tbody>
86
+ </table>
87
+ </div>
88
+
89
+ <h3>Выход</h3>
90
+ <div style="overflow-x:auto">
91
+ <table width="100%" style="min-width:500px">
92
+ <thead><tr><th>Метка</th><th>Свойство</th><th>Тип</th><th>Обязательно</th><th style="width:35%">Описание</th></tr></thead>
93
+ <tbody>
94
+ <tr><td>Результат операции</td><td>payload</td><td></td><td>Да</td><td></td></tr>
95
+ </tbody>
96
+ </table>
97
+ </div>
98
+ </script>
99
+ <script type="text/html" data-help-name="salesforce-bulk">
100
+ <p>Выполняет массовые операции с использованием Salesforce Bulk API 2.0 для больших объёмов данных.</p>
101
+ <h3>Свойства</h3>
102
+ <div style="overflow-x:auto">
103
+ <table width="100%" style="min-width:500px">
104
+ <thead><tr><th>Метка</th><th>Свойство</th><th>Тип</th><th>Обязательно</th><th>По умолчанию</th><th style="width:35%">Описание</th></tr></thead>
105
+ <tbody>
106
+ <tr><td>Connection</td><td>connection</td><td>NodeRef → salesforce-connection [format: node-id]</td><td>Да</td><td></td><td>Reference to salesforce-connection</td></tr>
107
+ <tr><td>Операция</td><td>operation</td><td></td><td>Да</td><td><code>"insert"</code></td><td></td></tr>
108
+ <tr><td>Тип SObject</td><td>sObjectType</td><td>TypedInput</td><td>Да</td><td><code>{"type":"str","value":""}</code></td><td>Represents a Node-RED TypedInput value and its type.</td></tr>
109
+ <tr><td>Поле внешнего ID</td><td>externalIdField</td><td>string</td><td>Нет</td><td><code>""</code></td><td></td></tr>
110
+ <tr><td></td><td>assignmentRuleId</td><td>string</td><td>Нет</td><td><code>""</code></td><td></td></tr>
111
+ <tr><td></td><td>columnDelimiter</td><td></td><td>Да</td><td><code>"COMMA"</code></td><td></td></tr>
112
+ <tr><td></td><td>lineEnding</td><td></td><td>Да</td><td><code>"LF"</code></td><td></td></tr>
113
+ <tr><td></td><td>pollInterval</td><td>number [min: 1000]</td><td>Да</td><td><code>5000</code></td><td></td></tr>
114
+ <tr><td></td><td>pollTimeout</td><td>number [min: 5000]</td><td>Да</td><td><code>60000</code></td><td></td></tr>
115
+ <tr><td></td><td>emitJobCreated</td><td>boolean</td><td>Да</td><td><code>false</code></td><td></td></tr>
116
+ <tr><td></td><td>outputs</td><td>number</td><td>Да</td><td><code>2</code></td><td></td></tr>
117
+ </tbody>
118
+ </table>
119
+ </div>
120
+
121
+ <h3>Вход</h3>
122
+ <div style="overflow-x:auto">
123
+ <table width="100%" style="min-width:500px">
124
+ <thead><tr><th>Метка</th><th>Свойство</th><th>Тип</th><th>Обязательно</th><th style="width:35%">Описание</th></tr></thead>
125
+ <tbody>
126
+ <tr><td>Массив записей или SOQL-запрос</td><td>payload</td><td></td><td>Да</td><td></td></tr>
127
+ </tbody>
128
+ </table>
129
+ </div>
130
+ </script>
131
+ <script type="text/html" data-help-name="salesforce-describe">
132
+ <p>Получает метаданные SObject-объекта Salesforce, включая поля, связи и типы записей.</p>
133
+ <h3>Свойства</h3>
134
+ <div style="overflow-x:auto">
135
+ <table width="100%" style="min-width:500px">
136
+ <thead><tr><th>Метка</th><th>Свойство</th><th>Тип</th><th>Обязательно</th><th>По умолчанию</th><th style="width:35%">Описание</th></tr></thead>
137
+ <tbody>
138
+ <tr><td>Connection</td><td>connection</td><td>NodeRef → salesforce-connection [format: node-id]</td><td>Да</td><td></td><td>Reference to salesforce-connection</td></tr>
139
+ <tr><td>Тип SObject</td><td>sObjectType</td><td>TypedInput</td><td>Да</td><td><code>{"type":"str","value":""}</code></td><td>Represents a Node-RED TypedInput value and its type.</td></tr>
140
+ </tbody>
141
+ </table>
142
+ </div>
143
+
144
+ <h3>Вход</h3>
145
+ <div style="overflow-x:auto">
146
+ <table width="100%" style="min-width:500px">
147
+ <thead><tr><th>Метка</th><th>Свойство</th><th>Тип</th><th>Обязательно</th><th style="width:35%">Описание</th></tr></thead>
148
+ <tbody>
149
+ <tr><td>Входные данные</td><td>payload</td><td></td><td>Да</td><td></td></tr>
150
+ </tbody>
151
+ </table>
152
+ </div>
153
+
154
+ <h3>Выход</h3>
155
+ <div style="overflow-x:auto">
156
+ <table width="100%" style="min-width:500px">
157
+ <thead><tr><th>Метка</th><th>Свойство</th><th>Тип</th><th>Обязательно</th><th style="width:35%">Описание</th></tr></thead>
158
+ <tbody>
159
+ <tr><td>Метаданные описания SObject</td><td>payload</td><td>object</td><td>Да</td><td></td></tr>
160
+ </tbody>
161
+ </table>
162
+ </div>
163
+ </script>
164
+ <script type="text/html" data-help-name="salesforce-streaming">
165
+ <p>Подписывается на события платформы Salesforce и события захвата изменений данных через Pub/Sub API (gRPC).</p>
166
+ <h3>Свойства</h3>
167
+ <div style="overflow-x:auto">
168
+ <table width="100%" style="min-width:500px">
169
+ <thead><tr><th>Метка</th><th>Свойство</th><th>Тип</th><th>Обязательно</th><th>По умолчанию</th><th style="width:35%">Описание</th></tr></thead>
170
+ <tbody>
171
+ <tr><td>Connection</td><td>connection</td><td>NodeRef → salesforce-connection [format: node-id]</td><td>Да</td><td></td><td>Reference to salesforce-connection</td></tr>
172
+ <tr><td>Канал</td><td>channelName</td><td>string</td><td>Да</td><td><code>""</code></td><td></td></tr>
173
+ <tr><td>Подписаться с</td><td>subscribeType</td><td></td><td>Да</td><td><code>"LATEST"</code></td><td></td></tr>
174
+ <tr><td>ID воспроизведения</td><td>replayId</td><td>string</td><td>Нет</td><td><code>""</code></td><td></td></tr>
175
+ <tr><td>Размер пакета</td><td>numRequested</td><td>number [min: 1, max: 100]</td><td>Да</td><td><code>100</code></td><td></td></tr>
176
+ </tbody>
177
+ </table>
178
+ </div>
179
+
180
+ <h3>Выход</h3>
181
+ <div style="overflow-x:auto">
182
+ <table width="100%" style="min-width:500px">
183
+ <thead><tr><th>Метка</th><th>Свойство</th><th>Тип</th><th>Обязательно</th><th style="width:35%">Описание</th></tr></thead>
184
+ <tbody>
185
+ <tr><td>Данные события</td><td>payload</td><td></td><td>Да</td><td></td></tr>
186
+ <tr><td>ID воспроизведения события</td><td>replayId</td><td></td><td>Да</td><td></td></tr>
187
+ <tr><td>Имя канала</td><td>channel</td><td>string</td><td>Да</td><td></td></tr>
188
+ <tr><td>Имя темы</td><td>topic</td><td>string</td><td>Да</td><td></td></tr>
189
+ </tbody>
190
+ </table>
191
+ </div>
192
+ </script>
193
+ <script type="text/html" data-help-name="salesforce-apex">
194
+ <p>Вызывает конечную точку Salesforce Apex REST.</p>
195
+ <h3>Свойства</h3>
196
+ <div style="overflow-x:auto">
197
+ <table width="100%" style="min-width:500px">
198
+ <thead><tr><th>Метка</th><th>Свойство</th><th>Тип</th><th>Обязательно</th><th>По умолчанию</th><th style="width:35%">Описание</th></tr></thead>
199
+ <tbody>
200
+ <tr><td>Connection</td><td>connection</td><td>NodeRef → salesforce-connection [format: node-id]</td><td>Да</td><td></td><td>Reference to salesforce-connection</td></tr>
201
+ <tr><td>Метод</td><td>method</td><td></td><td>Да</td><td><code>"POST"</code></td><td></td></tr>
202
+ <tr><td>Путь</td><td>path</td><td>TypedInput</td><td>Да</td><td><code>{"type":"str","value":""}</code></td><td>Represents a Node-RED TypedInput value and its type.</td></tr>
203
+ </tbody>
204
+ </table>
205
+ </div>
206
+
207
+ <h3>Вход</h3>
208
+ <div style="overflow-x:auto">
209
+ <table width="100%" style="min-width:500px">
210
+ <thead><tr><th>Метка</th><th>Свойство</th><th>Тип</th><th>Обязательно</th><th style="width:35%">Описание</th></tr></thead>
211
+ <tbody>
212
+ <tr><td>Тело запроса</td><td>payload</td><td></td><td>Да</td><td></td></tr>
213
+ </tbody>
214
+ </table>
215
+ </div>
216
+
217
+ <h3>Выход</h3>
218
+ <div style="overflow-x:auto">
219
+ <table width="100%" style="min-width:500px">
220
+ <thead><tr><th>Метка</th><th>Свойство</th><th>Тип</th><th>Обязательно</th><th style="width:35%">Описание</th></tr></thead>
221
+ <tbody>
222
+ <tr><td>Ответ Apex</td><td>payload</td><td></td><td>Да</td><td></td></tr>
223
+ </tbody>
224
+ </table>
225
+ </div>
226
+ </script>
@@ -0,0 +1,154 @@
1
+ {
2
+ "salesforce-apex": {
3
+ "$schema": "https://unpkg.com/@bonsae/nrg/schemas/labels.schema.json",
4
+ "label": "Apex",
5
+ "description": "Вызывает конечную точку Salesforce Apex REST.",
6
+ "inputLabels": "Запрос",
7
+ "outputLabels": [
8
+ "Ответ"
9
+ ],
10
+ "configs": {
11
+ "connection": "Connection",
12
+ "method": "Метод",
13
+ "path": "Путь"
14
+ },
15
+ "input": {
16
+ "payload": "Тело запроса"
17
+ },
18
+ "outputs": [
19
+ {
20
+ "payload": "Ответ Apex"
21
+ }
22
+ ]
23
+ },
24
+ "salesforce-bulk": {
25
+ "$schema": "https://unpkg.com/@bonsae/nrg/schemas/labels.schema.json",
26
+ "label": "Bulk",
27
+ "description": "Выполняет массовые операции с использованием Salesforce Bulk API 2.0 для больших объёмов данных.",
28
+ "inputLabels": "Записи или запрос",
29
+ "outputLabels": [
30
+ "Запись",
31
+ "Задание Завершено"
32
+ ],
33
+ "configs": {
34
+ "connection": "Connection",
35
+ "operation": "Операция",
36
+ "sObjectType": "Тип SObject",
37
+ "externalIdField": "Поле внешнего ID"
38
+ },
39
+ "input": {
40
+ "payload": "Массив записей или SOQL-запрос"
41
+ },
42
+ "outputs": [
43
+ {
44
+ "payload": "Результаты массовой операции"
45
+ }
46
+ ]
47
+ },
48
+ "salesforce-connection": {
49
+ "$schema": "https://unpkg.com/@bonsae/nrg/schemas/labels.schema.json",
50
+ "label": "Connection",
51
+ "description": "Управляет подключением к организации Salesforce с использованием OAuth 2.0 с PKCE. Обеспечивает аутентификацию и управление токенами для других узлов Salesforce.",
52
+ "configs": {
53
+ "loginUrl": "URL входа",
54
+ "clientId": "ID клиента",
55
+ "apiVersion": "Версия API",
56
+ "callbackUrl": "URL обратного вызова"
57
+ },
58
+ "credentials": {
59
+ "accessToken": "Токен доступа",
60
+ "refreshToken": "Токен обновления",
61
+ "instanceUrl": "URL экземпляра"
62
+ }
63
+ },
64
+ "salesforce-describe": {
65
+ "$schema": "https://unpkg.com/@bonsae/nrg/schemas/labels.schema.json",
66
+ "label": "Describe",
67
+ "description": "Получает метаданные SObject-объекта Salesforce, включая поля, связи и типы записей.",
68
+ "inputLabels": "Имя SObject",
69
+ "outputLabels": [
70
+ "Метаданные SObject"
71
+ ],
72
+ "configs": {
73
+ "connection": "Connection",
74
+ "sObjectType": "Тип SObject"
75
+ },
76
+ "input": {
77
+ "payload": "Входные данные"
78
+ },
79
+ "outputs": [
80
+ {
81
+ "payload": "Метаданные описания SObject"
82
+ }
83
+ ]
84
+ },
85
+ "salesforce-dml": {
86
+ "$schema": "https://unpkg.com/@bonsae/nrg/schemas/labels.schema.json",
87
+ "label": "DML",
88
+ "description": "Выполняет операции создания, чтения, обновления, удаления или upsert над SObject-объектами Salesforce.",
89
+ "inputLabels": "Данные записи",
90
+ "outputLabels": [
91
+ "Результат операции"
92
+ ],
93
+ "configs": {
94
+ "connection": "Connection",
95
+ "operation": "Операция",
96
+ "sObjectType": "Тип SObject",
97
+ "externalIdField": "Поле внешнего ID"
98
+ },
99
+ "input": {
100
+ "payload": "Данные записи или ID"
101
+ },
102
+ "outputs": [
103
+ {
104
+ "payload": "Результат операции"
105
+ }
106
+ ]
107
+ },
108
+ "salesforce-soql": {
109
+ "$schema": "https://unpkg.com/@bonsae/nrg/schemas/labels.schema.json",
110
+ "label": "SOQL",
111
+ "description": "Выполняет SOQL-запрос к Salesforce и возвращает совпадающие записи.",
112
+ "inputLabels": "Ввод запроса",
113
+ "outputLabels": [
114
+ "Результаты запроса"
115
+ ],
116
+ "configs": {
117
+ "connection": "Connection",
118
+ "query": "Запрос"
119
+ },
120
+ "input": {
121
+ "payload": "Входные данные"
122
+ },
123
+ "outputs": [
124
+ {
125
+ "payload": "Записи результата запроса",
126
+ "totalSize": "Общее количество совпадающих записей",
127
+ "done": "Все ли записи были получены"
128
+ }
129
+ ]
130
+ },
131
+ "salesforce-streaming": {
132
+ "$schema": "https://unpkg.com/@bonsae/nrg/schemas/labels.schema.json",
133
+ "label": "Streaming",
134
+ "description": "Подписывается на события платформы Salesforce и события захвата изменений данных через Pub/Sub API (gRPC).",
135
+ "outputLabels": [
136
+ "Событие"
137
+ ],
138
+ "configs": {
139
+ "connection": "Connection",
140
+ "channelName": "Канал",
141
+ "subscribeType": "Подписаться с",
142
+ "replayId": "ID воспроизведения",
143
+ "numRequested": "Размер пакета"
144
+ },
145
+ "outputs": [
146
+ {
147
+ "payload": "Данные события",
148
+ "replayId": "ID воспроизведения события",
149
+ "channel": "Имя канала",
150
+ "topic": "Имя темы"
151
+ }
152
+ ]
153
+ }
154
+ }
@@ -0,0 +1,226 @@
1
+ <script type="text/html" data-help-name="salesforce-connection">
2
+ <p>使用带有PKCE的OAuth 2.0管理与Salesforce组织的连接。为其他Salesforce节点提供身份验证和令牌管理。</p>
3
+ <h3>属性</h3>
4
+ <div style="overflow-x:auto">
5
+ <table width="100%" style="min-width:500px">
6
+ <thead><tr><th>标签</th><th>属性</th><th>类型</th><th>必填</th><th>默认值</th><th style="width:35%">描述</th></tr></thead>
7
+ <tbody>
8
+ <tr><td>登录URL</td><td>loginUrl</td><td>string</td><td>是</td><td><code>"https://login.salesforce.com"</code></td><td></td></tr>
9
+ <tr><td>客户端ID</td><td>clientId</td><td>string</td><td>是</td><td><code>""</code></td><td></td></tr>
10
+ <tr><td>API版本</td><td>apiVersion</td><td></td><td>是</td><td><code>"62.0"</code></td><td></td></tr>
11
+ <tr><td>回调URL</td><td>callbackUrl</td><td>string</td><td>否</td><td><code>""</code></td><td></td></tr>
12
+ </tbody>
13
+ </table>
14
+ </div>
15
+
16
+ <h3>凭证</h3>
17
+ <div style="overflow-x:auto">
18
+ <table width="100%" style="min-width:500px">
19
+ <thead><tr><th>标签</th><th>属性</th><th>类型</th><th>必填</th><th>默认值</th><th style="width:35%">描述</th></tr></thead>
20
+ <tbody>
21
+ <tr><td>访问令牌</td><td>accessToken</td><td>string</td><td>是</td><td><code>""</code></td><td></td></tr>
22
+ <tr><td>刷新令牌</td><td>refreshToken</td><td>string</td><td>是</td><td><code>""</code></td><td></td></tr>
23
+ <tr><td>实例URL</td><td>instanceUrl</td><td>string</td><td>是</td><td><code>""</code></td><td></td></tr>
24
+ </tbody>
25
+ </table>
26
+ </div>
27
+ </script>
28
+ <script type="text/html" data-help-name="salesforce-soql">
29
+ <p>对Salesforce执行SOQL查询并返回匹配的记录。</p>
30
+ <h3>属性</h3>
31
+ <div style="overflow-x:auto">
32
+ <table width="100%" style="min-width:500px">
33
+ <thead><tr><th>标签</th><th>属性</th><th>类型</th><th>必填</th><th>默认值</th><th style="width:35%">描述</th></tr></thead>
34
+ <tbody>
35
+ <tr><td>Connection</td><td>connection</td><td>NodeRef → salesforce-connection [format: node-id]</td><td>是</td><td></td><td>Reference to salesforce-connection</td></tr>
36
+ <tr><td>查询</td><td>query</td><td>TypedInput</td><td>是</td><td><code>{"type":"str","value":""}</code></td><td>Represents a Node-RED TypedInput value and its type.</td></tr>
37
+ </tbody>
38
+ </table>
39
+ </div>
40
+
41
+ <h3>输入</h3>
42
+ <div style="overflow-x:auto">
43
+ <table width="100%" style="min-width:500px">
44
+ <thead><tr><th>标签</th><th>属性</th><th>类型</th><th>必填</th><th style="width:35%">描述</th></tr></thead>
45
+ <tbody>
46
+ <tr><td>输入负载</td><td>payload</td><td></td><td>是</td><td></td></tr>
47
+ </tbody>
48
+ </table>
49
+ </div>
50
+
51
+ <h3>输出</h3>
52
+ <div style="overflow-x:auto">
53
+ <table width="100%" style="min-width:500px">
54
+ <thead><tr><th>标签</th><th>属性</th><th>类型</th><th>必填</th><th style="width:35%">描述</th></tr></thead>
55
+ <tbody>
56
+ <tr><td>查询结果记录</td><td>payload</td><td>array</td><td>是</td><td></td></tr>
57
+ <tr><td>匹配记录总数</td><td>totalSize</td><td>number</td><td>是</td><td></td></tr>
58
+ <tr><td>是否已获取所有记录</td><td>done</td><td>boolean</td><td>是</td><td></td></tr>
59
+ </tbody>
60
+ </table>
61
+ </div>
62
+ </script>
63
+ <script type="text/html" data-help-name="salesforce-dml">
64
+ <p>对Salesforce SObject执行创建、读取、更新、删除或upsert操作。</p>
65
+ <h3>属性</h3>
66
+ <div style="overflow-x:auto">
67
+ <table width="100%" style="min-width:500px">
68
+ <thead><tr><th>标签</th><th>属性</th><th>类型</th><th>必填</th><th>默认值</th><th style="width:35%">描述</th></tr></thead>
69
+ <tbody>
70
+ <tr><td>Connection</td><td>connection</td><td>NodeRef → salesforce-connection [format: node-id]</td><td>是</td><td></td><td>Reference to salesforce-connection</td></tr>
71
+ <tr><td>操作</td><td>operation</td><td></td><td>是</td><td><code>"create"</code></td><td></td></tr>
72
+ <tr><td>SObject类型</td><td>sObjectType</td><td>TypedInput</td><td>是</td><td><code>{"type":"str","value":""}</code></td><td>Represents a Node-RED TypedInput value and its type.</td></tr>
73
+ <tr><td></td><td>record</td><td>TypedInput</td><td>是</td><td><code>{"type":"str","value":""}</code></td><td>Represents a Node-RED TypedInput value and its type.</td></tr>
74
+ <tr><td>外部ID字段</td><td>externalIdField</td><td>string</td><td>否</td><td><code>""</code></td><td></td></tr>
75
+ </tbody>
76
+ </table>
77
+ </div>
78
+
79
+ <h3>输入</h3>
80
+ <div style="overflow-x:auto">
81
+ <table width="100%" style="min-width:500px">
82
+ <thead><tr><th>标签</th><th>属性</th><th>类型</th><th>必填</th><th style="width:35%">描述</th></tr></thead>
83
+ <tbody>
84
+ <tr><td>记录数据或ID</td><td>payload</td><td></td><td>是</td><td></td></tr>
85
+ </tbody>
86
+ </table>
87
+ </div>
88
+
89
+ <h3>输出</h3>
90
+ <div style="overflow-x:auto">
91
+ <table width="100%" style="min-width:500px">
92
+ <thead><tr><th>标签</th><th>属性</th><th>类型</th><th>必填</th><th style="width:35%">描述</th></tr></thead>
93
+ <tbody>
94
+ <tr><td>操作结果</td><td>payload</td><td></td><td>是</td><td></td></tr>
95
+ </tbody>
96
+ </table>
97
+ </div>
98
+ </script>
99
+ <script type="text/html" data-help-name="salesforce-bulk">
100
+ <p>使用Salesforce Bulk API 2.0对大数据量执行批量操作。</p>
101
+ <h3>属性</h3>
102
+ <div style="overflow-x:auto">
103
+ <table width="100%" style="min-width:500px">
104
+ <thead><tr><th>标签</th><th>属性</th><th>类型</th><th>必填</th><th>默认值</th><th style="width:35%">描述</th></tr></thead>
105
+ <tbody>
106
+ <tr><td>Connection</td><td>connection</td><td>NodeRef → salesforce-connection [format: node-id]</td><td>是</td><td></td><td>Reference to salesforce-connection</td></tr>
107
+ <tr><td>操作</td><td>operation</td><td></td><td>是</td><td><code>"insert"</code></td><td></td></tr>
108
+ <tr><td>SObject类型</td><td>sObjectType</td><td>TypedInput</td><td>是</td><td><code>{"type":"str","value":""}</code></td><td>Represents a Node-RED TypedInput value and its type.</td></tr>
109
+ <tr><td>外部ID字段</td><td>externalIdField</td><td>string</td><td>否</td><td><code>""</code></td><td></td></tr>
110
+ <tr><td></td><td>assignmentRuleId</td><td>string</td><td>否</td><td><code>""</code></td><td></td></tr>
111
+ <tr><td></td><td>columnDelimiter</td><td></td><td>是</td><td><code>"COMMA"</code></td><td></td></tr>
112
+ <tr><td></td><td>lineEnding</td><td></td><td>是</td><td><code>"LF"</code></td><td></td></tr>
113
+ <tr><td></td><td>pollInterval</td><td>number [min: 1000]</td><td>是</td><td><code>5000</code></td><td></td></tr>
114
+ <tr><td></td><td>pollTimeout</td><td>number [min: 5000]</td><td>是</td><td><code>60000</code></td><td></td></tr>
115
+ <tr><td></td><td>emitJobCreated</td><td>boolean</td><td>是</td><td><code>false</code></td><td></td></tr>
116
+ <tr><td></td><td>outputs</td><td>number</td><td>是</td><td><code>2</code></td><td></td></tr>
117
+ </tbody>
118
+ </table>
119
+ </div>
120
+
121
+ <h3>输入</h3>
122
+ <div style="overflow-x:auto">
123
+ <table width="100%" style="min-width:500px">
124
+ <thead><tr><th>标签</th><th>属性</th><th>类型</th><th>必填</th><th style="width:35%">描述</th></tr></thead>
125
+ <tbody>
126
+ <tr><td>记录数组或SOQL查询</td><td>payload</td><td></td><td>是</td><td></td></tr>
127
+ </tbody>
128
+ </table>
129
+ </div>
130
+ </script>
131
+ <script type="text/html" data-help-name="salesforce-describe">
132
+ <p>检索Salesforce SObject的元数据,包括字段、关系和记录类型。</p>
133
+ <h3>属性</h3>
134
+ <div style="overflow-x:auto">
135
+ <table width="100%" style="min-width:500px">
136
+ <thead><tr><th>标签</th><th>属性</th><th>类型</th><th>必填</th><th>默认值</th><th style="width:35%">描述</th></tr></thead>
137
+ <tbody>
138
+ <tr><td>Connection</td><td>connection</td><td>NodeRef → salesforce-connection [format: node-id]</td><td>是</td><td></td><td>Reference to salesforce-connection</td></tr>
139
+ <tr><td>SObject类型</td><td>sObjectType</td><td>TypedInput</td><td>是</td><td><code>{"type":"str","value":""}</code></td><td>Represents a Node-RED TypedInput value and its type.</td></tr>
140
+ </tbody>
141
+ </table>
142
+ </div>
143
+
144
+ <h3>输入</h3>
145
+ <div style="overflow-x:auto">
146
+ <table width="100%" style="min-width:500px">
147
+ <thead><tr><th>标签</th><th>属性</th><th>类型</th><th>必填</th><th style="width:35%">描述</th></tr></thead>
148
+ <tbody>
149
+ <tr><td>输入负载</td><td>payload</td><td></td><td>是</td><td></td></tr>
150
+ </tbody>
151
+ </table>
152
+ </div>
153
+
154
+ <h3>输出</h3>
155
+ <div style="overflow-x:auto">
156
+ <table width="100%" style="min-width:500px">
157
+ <thead><tr><th>标签</th><th>属性</th><th>类型</th><th>必填</th><th style="width:35%">描述</th></tr></thead>
158
+ <tbody>
159
+ <tr><td>SObject描述元数据</td><td>payload</td><td>object</td><td>是</td><td></td></tr>
160
+ </tbody>
161
+ </table>
162
+ </div>
163
+ </script>
164
+ <script type="text/html" data-help-name="salesforce-streaming">
165
+ <p>使用Pub/Sub API(gRPC)订阅Salesforce平台事件和变更数据捕获事件。</p>
166
+ <h3>属性</h3>
167
+ <div style="overflow-x:auto">
168
+ <table width="100%" style="min-width:500px">
169
+ <thead><tr><th>标签</th><th>属性</th><th>类型</th><th>必填</th><th>默认值</th><th style="width:35%">描述</th></tr></thead>
170
+ <tbody>
171
+ <tr><td>Connection</td><td>connection</td><td>NodeRef → salesforce-connection [format: node-id]</td><td>是</td><td></td><td>Reference to salesforce-connection</td></tr>
172
+ <tr><td>频道</td><td>channelName</td><td>string</td><td>是</td><td><code>""</code></td><td></td></tr>
173
+ <tr><td>订阅起点</td><td>subscribeType</td><td></td><td>是</td><td><code>"LATEST"</code></td><td></td></tr>
174
+ <tr><td>重播ID</td><td>replayId</td><td>string</td><td>否</td><td><code>""</code></td><td></td></tr>
175
+ <tr><td>批次大小</td><td>numRequested</td><td>number [min: 1, max: 100]</td><td>是</td><td><code>100</code></td><td></td></tr>
176
+ </tbody>
177
+ </table>
178
+ </div>
179
+
180
+ <h3>输出</h3>
181
+ <div style="overflow-x:auto">
182
+ <table width="100%" style="min-width:500px">
183
+ <thead><tr><th>标签</th><th>属性</th><th>类型</th><th>必填</th><th style="width:35%">描述</th></tr></thead>
184
+ <tbody>
185
+ <tr><td>事件负载</td><td>payload</td><td></td><td>是</td><td></td></tr>
186
+ <tr><td>事件重播ID</td><td>replayId</td><td></td><td>是</td><td></td></tr>
187
+ <tr><td>频道名称</td><td>channel</td><td>string</td><td>是</td><td></td></tr>
188
+ <tr><td>主题名称</td><td>topic</td><td>string</td><td>是</td><td></td></tr>
189
+ </tbody>
190
+ </table>
191
+ </div>
192
+ </script>
193
+ <script type="text/html" data-help-name="salesforce-apex">
194
+ <p>调用Salesforce Apex REST端点。</p>
195
+ <h3>属性</h3>
196
+ <div style="overflow-x:auto">
197
+ <table width="100%" style="min-width:500px">
198
+ <thead><tr><th>标签</th><th>属性</th><th>类型</th><th>必填</th><th>默认值</th><th style="width:35%">描述</th></tr></thead>
199
+ <tbody>
200
+ <tr><td>Connection</td><td>connection</td><td>NodeRef → salesforce-connection [format: node-id]</td><td>是</td><td></td><td>Reference to salesforce-connection</td></tr>
201
+ <tr><td>方法</td><td>method</td><td></td><td>是</td><td><code>"POST"</code></td><td></td></tr>
202
+ <tr><td>路径</td><td>path</td><td>TypedInput</td><td>是</td><td><code>{"type":"str","value":""}</code></td><td>Represents a Node-RED TypedInput value and its type.</td></tr>
203
+ </tbody>
204
+ </table>
205
+ </div>
206
+
207
+ <h3>输入</h3>
208
+ <div style="overflow-x:auto">
209
+ <table width="100%" style="min-width:500px">
210
+ <thead><tr><th>标签</th><th>属性</th><th>类型</th><th>必填</th><th style="width:35%">描述</th></tr></thead>
211
+ <tbody>
212
+ <tr><td>请求正文</td><td>payload</td><td></td><td>是</td><td></td></tr>
213
+ </tbody>
214
+ </table>
215
+ </div>
216
+
217
+ <h3>输出</h3>
218
+ <div style="overflow-x:auto">
219
+ <table width="100%" style="min-width:500px">
220
+ <thead><tr><th>标签</th><th>属性</th><th>类型</th><th>必填</th><th style="width:35%">描述</th></tr></thead>
221
+ <tbody>
222
+ <tr><td>Apex响应</td><td>payload</td><td></td><td>是</td><td></td></tr>
223
+ </tbody>
224
+ </table>
225
+ </div>
226
+ </script>