@uipath/integrationservice-tool 0.1.5
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.
- package/README.md +435 -0
- package/dist/index.js +30736 -0
- package/dist/tool.js +29828 -0
- package/package.json +51 -0
package/README.md
ADDED
|
@@ -0,0 +1,435 @@
|
|
|
1
|
+
# Integration Service Tool
|
|
2
|
+
|
|
3
|
+
`uip` plugin for managing UiPath Integration Service connectors, connections, and operations.
|
|
4
|
+
|
|
5
|
+
## Overview
|
|
6
|
+
|
|
7
|
+
The Integration Service Tool provides a comprehensive CLI interface for:
|
|
8
|
+
- **Connectors**: Browse and discover available integration connectors
|
|
9
|
+
- **Connections**: Create and manage OAuth-authenticated connections
|
|
10
|
+
- **Resources**: Discover, inspect, and execute operations on connector resources
|
|
11
|
+
- **Activities**: List integration activities for workflows
|
|
12
|
+
|
|
13
|
+
## Usage
|
|
14
|
+
|
|
15
|
+
### Connectors
|
|
16
|
+
|
|
17
|
+
List and explore available integration connectors:
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
# List all available connectors
|
|
21
|
+
uip is connectors list
|
|
22
|
+
|
|
23
|
+
# Get details for a specific connector
|
|
24
|
+
uip is connectors get <connector-key>
|
|
25
|
+
|
|
26
|
+
# Examples
|
|
27
|
+
uip is connectors list --format json
|
|
28
|
+
uip is connectors get uipath-zoho-desk
|
|
29
|
+
uip is connectors get uipath-salesforce-sfdc
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
**Available Options:**
|
|
33
|
+
- `-t, --tenant <name>` - Specify tenant (optional)
|
|
34
|
+
- `--format <format>` - Output format: table, json, yaml, plain (default: table)
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
### Connections
|
|
39
|
+
|
|
40
|
+
Manage connections to external services:
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
# List connections for a connector
|
|
44
|
+
uip is connections list <connector-key> [--folder-key <key>]
|
|
45
|
+
|
|
46
|
+
# Ping a connection to check if it's active
|
|
47
|
+
uip is connections ping <connection-id>
|
|
48
|
+
|
|
49
|
+
# Create a new connection (OAuth flow)
|
|
50
|
+
uip is connections create <connector-key>
|
|
51
|
+
|
|
52
|
+
# Re-authenticate an existing connection
|
|
53
|
+
uip is connections edit <connection-id>
|
|
54
|
+
|
|
55
|
+
# Examples
|
|
56
|
+
uip is connections list uipath-outlook-365
|
|
57
|
+
uip is connections list uipath-salesforce-sfdc --folder-key my-folder-key
|
|
58
|
+
uip is connections ping 73ca047b-24dd-4789-a37e-e7afb67654cd
|
|
59
|
+
uip is connections create uipath-doist-todoist
|
|
60
|
+
uip is connections create uipath-zoho-desk --no-browser
|
|
61
|
+
uip is connections edit 73ca047b-24dd-4789-a37e-e7afb67654cd
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
**Available Options:**
|
|
65
|
+
- `--folder-key <key>` - Filter connections by folder key (optional, for list command only)
|
|
66
|
+
- `-t, --tenant <name>` - Specify tenant (optional)
|
|
67
|
+
- `--format <format>` - Output format: table, json, yaml, plain (default: table)
|
|
68
|
+
- `--refresh` - Force re-fetch from API, ignoring cache (for list command only)
|
|
69
|
+
- `--no-browser` - Don't auto-open browser (for create/edit commands only)
|
|
70
|
+
|
|
71
|
+
**Connection States:**
|
|
72
|
+
|
|
73
|
+
When listing connections, the output includes a `State` field. Only `Enabled` connections can be used for operations. If all connections are not enabled, the output will include a warning with instructions to fix them.
|
|
74
|
+
|
|
75
|
+
| State | Description | Action |
|
|
76
|
+
|-------|-------------|--------|
|
|
77
|
+
| `Enabled` | Active and ready for operations | No action needed |
|
|
78
|
+
| `Disabled` | Connection is disabled | Run `edit` to re-authenticate |
|
|
79
|
+
| `Error` | Connection has an error | Run `edit` to re-authenticate or `create` a new one |
|
|
80
|
+
|
|
81
|
+
**Connection Create Flow:**
|
|
82
|
+
1. Initiates OAuth session
|
|
83
|
+
2. Opens authentication URL in browser
|
|
84
|
+
3. Polls session status every 5 seconds
|
|
85
|
+
4. Shows connection details on success
|
|
86
|
+
|
|
87
|
+
**Connection Ping:**
|
|
88
|
+
|
|
89
|
+
Check if a connection is active before performing operations:
|
|
90
|
+
|
|
91
|
+
```bash
|
|
92
|
+
# Ping a connection to verify it's enabled
|
|
93
|
+
uip is connections ping <connection-id>
|
|
94
|
+
|
|
95
|
+
# Example
|
|
96
|
+
uip is connections ping 73ca047b-24dd-4789-a37e-e7afb67654cd
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
If the connection is not enabled, the output will instruct you to run `edit` or `create` a new connection.
|
|
100
|
+
|
|
101
|
+
**Connection Edit (Re-authenticate):**
|
|
102
|
+
|
|
103
|
+
Re-authenticate an existing connection when it becomes disabled or expired:
|
|
104
|
+
|
|
105
|
+
```bash
|
|
106
|
+
# Re-authenticate a connection
|
|
107
|
+
uip is connections edit <connection-id>
|
|
108
|
+
|
|
109
|
+
# Without auto-opening browser
|
|
110
|
+
uip is connections edit <connection-id> --no-browser
|
|
111
|
+
|
|
112
|
+
# Example
|
|
113
|
+
uip is connections edit 73ca047b-24dd-4789-a37e-e7afb67654cd
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
The edit flow is similar to create — it opens a browser for OAuth authentication and polls until complete.
|
|
117
|
+
|
|
118
|
+
---
|
|
119
|
+
|
|
120
|
+
### Activities
|
|
121
|
+
|
|
122
|
+
List integration activities for use in workflows:
|
|
123
|
+
|
|
124
|
+
```bash
|
|
125
|
+
# List non-trigger activities for a connector
|
|
126
|
+
uip is activities list <connector-key>
|
|
127
|
+
|
|
128
|
+
# Examples
|
|
129
|
+
uip is activities list uipath-zoho-desk
|
|
130
|
+
uip is activities list uipath-salesforce-sfdc --format json
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
**Available Options:**
|
|
134
|
+
- `-t, --tenant <name>` - Specify tenant (optional)
|
|
135
|
+
- `--format <format>` - Output format: table, json, yaml, plain (default: table)
|
|
136
|
+
|
|
137
|
+
**Note:** Only non-trigger activities are returned (filtered by `isTrigger: false`)
|
|
138
|
+
|
|
139
|
+
---
|
|
140
|
+
|
|
141
|
+
### Resources
|
|
142
|
+
|
|
143
|
+
Discover, inspect, and execute operations on connector resources (objects).
|
|
144
|
+
|
|
145
|
+
```
|
|
146
|
+
uip is resources --help
|
|
147
|
+
|
|
148
|
+
Commands:
|
|
149
|
+
list List available objects for a connector
|
|
150
|
+
describe Describe object fields and operations
|
|
151
|
+
execute Execute data operations on a connector
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
#### List Available Objects
|
|
155
|
+
|
|
156
|
+
List all resource objects for a connector, optionally filtered by operation type.
|
|
157
|
+
|
|
158
|
+
```bash
|
|
159
|
+
# List all objects for a connector
|
|
160
|
+
uip is resources list uipath-zoho-desk
|
|
161
|
+
|
|
162
|
+
# Filter by operation type
|
|
163
|
+
uip is resources list uipath-salesforce-sfdc --operation Create
|
|
164
|
+
uip is resources list uipath-salesforce-sfdc --operation List --connection-id <id>
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
**Available Options:**
|
|
168
|
+
- `--operation <operation>` - Filter by operation: List, Retrieve, Create, Update, Delete, Replace
|
|
169
|
+
- `--connection-id <id>` - Connection/Instance ID (optional)
|
|
170
|
+
- `-t, --tenant <name>` - Specify tenant (optional)
|
|
171
|
+
- `--format <format>` - Output format: table, json, yaml, plain (default: table)
|
|
172
|
+
|
|
173
|
+
#### Describe Object Metadata
|
|
174
|
+
|
|
175
|
+
Retrieve field metadata for a specific resource object. Use `--operation` to filter and return only the fields relevant to a specific HTTP method.
|
|
176
|
+
|
|
177
|
+
```bash
|
|
178
|
+
# Get full metadata for an object
|
|
179
|
+
uip is resources describe uipath-salesforce-sfdc Account
|
|
180
|
+
uip is resources describe uipath-zoho-desk create_ticket --connection-id <id>
|
|
181
|
+
|
|
182
|
+
# Get only Create (POST) fields in compact format
|
|
183
|
+
uip is resources describe uipath-zoho-desk tickets --operation Create
|
|
184
|
+
|
|
185
|
+
# Get only List (GET) fields in compact format
|
|
186
|
+
uip is resources describe uipath-zoho-desk departments --operation List
|
|
187
|
+
|
|
188
|
+
# Retrieve (GET by ID) fields
|
|
189
|
+
uip is resources describe uipath-zoho-desk tickets --operation Retrieve
|
|
190
|
+
|
|
191
|
+
# Combine with connection ID
|
|
192
|
+
uip is resources describe uipath-salesforce-sfdc Account --connection-id <id> --operation List
|
|
193
|
+
```
|
|
194
|
+
|
|
195
|
+
**Available Options:**
|
|
196
|
+
- `--operation <operation>` - Filter fields by operation: List, Retrieve, Create, Update, Delete, Replace
|
|
197
|
+
- `--connection-id <id>` - Connection/Instance ID (optional)
|
|
198
|
+
- `-t, --tenant <name>` - Specify tenant (optional)
|
|
199
|
+
- `--format <format>` - Output format: table, json, yaml, plain (default: json)
|
|
200
|
+
|
|
201
|
+
#### Execute Data Operations
|
|
202
|
+
|
|
203
|
+
Execute CRUD operations against live data through a connection. The `execute` subgroup provides verb-based subcommands with a consistent signature:
|
|
204
|
+
|
|
205
|
+
```
|
|
206
|
+
uip is resources execute <verb> <connector-key> <object-name> --connection-id <id> [options]
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
```
|
|
210
|
+
uip is resources execute --help
|
|
211
|
+
|
|
212
|
+
Commands:
|
|
213
|
+
create <connector-key> <object-name> Create a new record
|
|
214
|
+
list <connector-key> <object-name> List all records
|
|
215
|
+
get <connector-key> <object-name> Get a record by ID
|
|
216
|
+
update <connector-key> <object-name> Update a record
|
|
217
|
+
replace <connector-key> <object-name> Replace a record
|
|
218
|
+
delete <connector-key> <object-name> Delete a record
|
|
219
|
+
```
|
|
220
|
+
|
|
221
|
+
**Create a record:**
|
|
222
|
+
```bash
|
|
223
|
+
uip is resources execute create uipath-zoho-desk tickets \
|
|
224
|
+
--connection-id <id> \
|
|
225
|
+
--body '{"subject":"New ticket","priority":"High"}'
|
|
226
|
+
```
|
|
227
|
+
|
|
228
|
+
**List all records:**
|
|
229
|
+
```bash
|
|
230
|
+
uip is resources execute list uipath-zoho-desk tickets \
|
|
231
|
+
--connection-id <id>
|
|
232
|
+
|
|
233
|
+
# With query parameters
|
|
234
|
+
uip is resources execute list uipath-zoho-desk tickets \
|
|
235
|
+
--connection-id <id> \
|
|
236
|
+
--query "limit=10&offset=0"
|
|
237
|
+
```
|
|
238
|
+
|
|
239
|
+
**Get a record by ID:**
|
|
240
|
+
```bash
|
|
241
|
+
uip is resources execute get uipath-zoho-desk tickets \
|
|
242
|
+
--connection-id <id> \
|
|
243
|
+
--query "id=123"
|
|
244
|
+
```
|
|
245
|
+
|
|
246
|
+
**Update a record:**
|
|
247
|
+
```bash
|
|
248
|
+
uip is resources execute update uipath-zoho-desk tickets \
|
|
249
|
+
--connection-id <id> \
|
|
250
|
+
--body '{"status":"closed"}' \
|
|
251
|
+
--query "id=123"
|
|
252
|
+
```
|
|
253
|
+
|
|
254
|
+
**Replace a record:**
|
|
255
|
+
```bash
|
|
256
|
+
uip is resources execute replace uipath-zoho-desk tickets \
|
|
257
|
+
--connection-id <id> \
|
|
258
|
+
--body '{"subject":"Replaced ticket","priority":"Low"}'
|
|
259
|
+
```
|
|
260
|
+
|
|
261
|
+
**Delete a record:**
|
|
262
|
+
```bash
|
|
263
|
+
uip is resources execute delete uipath-zoho-desk tickets \
|
|
264
|
+
--connection-id <id> \
|
|
265
|
+
--query "id=123"
|
|
266
|
+
```
|
|
267
|
+
|
|
268
|
+
**Available Options (all execute subcommands):**
|
|
269
|
+
- `--connection-id <id>` - Connection/Instance ID (required)
|
|
270
|
+
- `--body <json>` - Request body as JSON string (required for create, update, replace)
|
|
271
|
+
- `--query <params>` - Query parameters as key=value pairs, separated by `&`
|
|
272
|
+
- `-t, --tenant <name>` - Specify tenant (optional)
|
|
273
|
+
- `--format <format>` - Output format: table, json, yaml, plain (default: json)
|
|
274
|
+
|
|
275
|
+
---
|
|
276
|
+
|
|
277
|
+
## Common Options
|
|
278
|
+
|
|
279
|
+
All commands support these common options:
|
|
280
|
+
|
|
281
|
+
| Option | Description | Default |
|
|
282
|
+
|--------|-------------|---------|
|
|
283
|
+
| `-t, --tenant <name>` | Specify tenant name | From login session |
|
|
284
|
+
| `--format <format>` | Output format | `table` |
|
|
285
|
+
| `-h, --help` | Show command help | - |
|
|
286
|
+
|
|
287
|
+
**Available Formats:**
|
|
288
|
+
- `table` - Formatted table output (default for most commands)
|
|
289
|
+
- `json` - JSON output
|
|
290
|
+
- `yaml` - YAML output
|
|
291
|
+
- `plain` - Plain text output
|
|
292
|
+
|
|
293
|
+
---
|
|
294
|
+
|
|
295
|
+
## Examples
|
|
296
|
+
|
|
297
|
+
### Complete Workflow Example
|
|
298
|
+
|
|
299
|
+
```bash
|
|
300
|
+
# 1. Find a connector
|
|
301
|
+
uip is connectors list --format json | grep salesforce
|
|
302
|
+
|
|
303
|
+
# 2. Get connector details
|
|
304
|
+
uip is connectors get uipath-salesforce-sfdc
|
|
305
|
+
|
|
306
|
+
# 3. List connections to get connection ID
|
|
307
|
+
uip is connections list uipath-salesforce-sfdc
|
|
308
|
+
|
|
309
|
+
# 4. If no connections exist, create one
|
|
310
|
+
uip is connections create uipath-salesforce-sfdc
|
|
311
|
+
|
|
312
|
+
# 5. Verify connection is enabled (skip if list already shows Enabled)
|
|
313
|
+
uip is connections ping <connection-id>
|
|
314
|
+
|
|
315
|
+
# 6. If connection is not enabled, re-authenticate
|
|
316
|
+
uip is connections edit <connection-id>
|
|
317
|
+
|
|
318
|
+
# 7. List available resources with connection-specific data
|
|
319
|
+
uip is resources list uipath-salesforce-sfdc --connection-id <connection-id> --operation Create
|
|
320
|
+
|
|
321
|
+
# 8. Describe the object to see required fields
|
|
322
|
+
uip is resources describe uipath-salesforce-sfdc accounts --connection-id <connection-id> --operation Create
|
|
323
|
+
|
|
324
|
+
# 9. Create a record
|
|
325
|
+
uip is resources execute create uipath-salesforce-sfdc accounts \
|
|
326
|
+
--connection-id <connection-id> \
|
|
327
|
+
--body '{"Name":"Acme Corporation","Industry":"Technology"}'
|
|
328
|
+
|
|
329
|
+
# 10. List records
|
|
330
|
+
uip is resources execute list uipath-salesforce-sfdc accounts \
|
|
331
|
+
--connection-id <connection-id>
|
|
332
|
+
|
|
333
|
+
# 11. List activities for workflow design
|
|
334
|
+
uip is activities list uipath-salesforce-sfdc
|
|
335
|
+
```
|
|
336
|
+
|
|
337
|
+
### Multi-Environment Support
|
|
338
|
+
|
|
339
|
+
```bash
|
|
340
|
+
# Use with different environments
|
|
341
|
+
uip is connectors list # Uses default from login
|
|
342
|
+
uip is connectors list -t production-tenant
|
|
343
|
+
uip is connectors list -t staging-tenant
|
|
344
|
+
```
|
|
345
|
+
|
|
346
|
+
---
|
|
347
|
+
|
|
348
|
+
## Authentication
|
|
349
|
+
|
|
350
|
+
All commands require authentication via `uip login`:
|
|
351
|
+
|
|
352
|
+
```bash
|
|
353
|
+
# Login to UiPath
|
|
354
|
+
uip login
|
|
355
|
+
|
|
356
|
+
# Login to specific environment
|
|
357
|
+
uip login --url https://alpha.uipath.com
|
|
358
|
+
uip login --url https://cloud.uipath.com
|
|
359
|
+
```
|
|
360
|
+
|
|
361
|
+
The tool automatically uses the access token from your login session.
|
|
362
|
+
|
|
363
|
+
---
|
|
364
|
+
|
|
365
|
+
## MCP Server (AI Integration)
|
|
366
|
+
|
|
367
|
+
**Claude can now invoke these commands automatically!**
|
|
368
|
+
|
|
369
|
+
The uip MCP server exposes all Integration Service commands to Claude Desktop, enabling natural language automation:
|
|
370
|
+
|
|
371
|
+
```json
|
|
372
|
+
// ~/.config/claude/claude_desktop_config.json
|
|
373
|
+
{
|
|
374
|
+
"mcpServers": {
|
|
375
|
+
"uipath-integration-service": {
|
|
376
|
+
"command": "uip",
|
|
377
|
+
"args": ["mcp", "serve"]
|
|
378
|
+
}
|
|
379
|
+
}
|
|
380
|
+
}
|
|
381
|
+
```
|
|
382
|
+
|
|
383
|
+
**Examples of what Claude can do:**
|
|
384
|
+
- **"Send a message to slack channel test-slack"** - Claude finds the channel ID, gets required fields from metadata, and sends the message
|
|
385
|
+
- **"Create a Salesforce account named 'Acme Corp'"** - Claude discovers the schema and creates the record
|
|
386
|
+
- **"List all open tickets in Zoho Desk"** - Claude executes the query and formats results
|
|
387
|
+
|
|
388
|
+
**How it works:**
|
|
389
|
+
1. Claude discovers available connectors and operations
|
|
390
|
+
2. Reads metadata to understand required fields
|
|
391
|
+
3. Looks up IDs by names (channel names → channel IDs)
|
|
392
|
+
4. Chooses default connections automatically
|
|
393
|
+
5. Executes operations with proper formatting
|
|
394
|
+
|
|
395
|
+
**📖 Full documentation:** See [MCP.md](./MCP.md) for setup, examples, and advanced workflows.
|
|
396
|
+
|
|
397
|
+
---
|
|
398
|
+
|
|
399
|
+
## API Endpoints
|
|
400
|
+
|
|
401
|
+
The tool interacts with these Integration Service APIs:
|
|
402
|
+
|
|
403
|
+
| Command | Endpoint |
|
|
404
|
+
|---------|----------|
|
|
405
|
+
| `connectors list` | `GET /connections_/api/v1/Connectors` |
|
|
406
|
+
| `connectors get` | `GET /connections_/api/v1/Connectors/{key}` |
|
|
407
|
+
| `connections list` | `GET /connections_/api/v1/Connectors/{key}/connections` |
|
|
408
|
+
| `connections create` | `POST /connections_/api/v1/Connections` |
|
|
409
|
+
| `connections ping` | `GET /connections_/api/v1/Connections/{id}/ping` |
|
|
410
|
+
| `connections edit` | `POST /connections_/api/v1/Connections/{id}/auth` |
|
|
411
|
+
| `activities list` | `GET /elements_/v3/element/elements/{key}/activities` |
|
|
412
|
+
| `resources list` | `GET /elements_/v3/element/[instances/{id}/]elements/{key}/objects` |
|
|
413
|
+
| `resources describe` | `GET /elements_/v3/element/[instances/{id}/]elements/{key}/objects/{name}/metadata` |
|
|
414
|
+
| `resources execute *` | `{METHOD} /elements_/v3/element/instances/{id}/{objectName}` |
|
|
415
|
+
|
|
416
|
+
---
|
|
417
|
+
|
|
418
|
+
## Versions
|
|
419
|
+
|
|
420
|
+
### integrationservice-tool 0.0.1
|
|
421
|
+
|
|
422
|
+
**Features:**
|
|
423
|
+
- List and get connectors
|
|
424
|
+
- List connections (with folder filtering and status warnings)
|
|
425
|
+
- Create connections (OAuth flow with browser opening)
|
|
426
|
+
- Ping connections (verify connection is active)
|
|
427
|
+
- Edit/re-authenticate connections (OAuth re-auth flow)
|
|
428
|
+
- List and describe resources (filtered by operation, with metadata caching)
|
|
429
|
+
- List activities (non-trigger only)
|
|
430
|
+
- Execute CRUD operations on resources (create, list, get, update, replace, delete)
|
|
431
|
+
- File-based metadata caching for token optimization
|
|
432
|
+
- Multi-format output (table, json, yaml, plain)
|
|
433
|
+
- Multi-environment support
|
|
434
|
+
- Query parameters and request body support
|
|
435
|
+
|