@uipath/skills 1.204.0 → 1.204.1
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/.claude-plugin/marketplace.json +1 -1
- package/.claude-plugin/plugin.json +1 -1
- package/.cursor-plugin/plugin.json +1 -1
- package/CODEOWNERS +12 -14
- package/package.json +1 -1
- package/skills/uipath-agents/references/coded/embedding-in-flows.md +1 -3
- package/skills/uipath-agents/references/coded/quickstart.md +0 -2
- package/skills/uipath-agents/references/lowcode/capabilities/inline-in-flow/inline-in-flow.md +10 -8
- package/skills/uipath-agents/references/lowcode/prompting/autonomous-agent-prompting-guide.md +1 -1
- package/skills/uipath-human-in-the-loop/SKILL.md +1 -3
- package/skills/uipath-human-in-the-loop/references/hitl-node-apptask.md +0 -2
- package/skills/uipath-human-in-the-loop/references/hitl-node-coded-action-app.md +0 -2
- package/skills/uipath-human-in-the-loop/references/hitl-node-quickform.md +2 -2
- package/skills/uipath-maestro-flow/.maintenance/README.md +265 -0
- package/skills/uipath-maestro-flow/.maintenance/check-all.sh +40 -0
- package/skills/uipath-maestro-flow/.maintenance/check-anchors.sh +101 -0
- package/skills/uipath-maestro-flow/.maintenance/check-depth.sh +132 -0
- package/skills/uipath-maestro-flow/.maintenance/check-link-text.sh +123 -0
- package/skills/uipath-maestro-flow/.maintenance/check-links.sh +73 -0
- package/skills/uipath-maestro-flow/.maintenance/check-orphans.sh +93 -0
- package/skills/uipath-maestro-flow/.maintenance/check-plugin-pairs.sh +39 -0
- package/skills/uipath-maestro-flow/.maintenance/check-template.sh +42 -0
- package/skills/uipath-maestro-flow/.maintenance/check-uip-commands.sh +270 -0
- package/skills/uipath-maestro-flow/.maintenance/check-versions.sh +160 -0
- package/skills/uipath-maestro-flow/SKILL.md +69 -886
- package/skills/uipath-maestro-flow/references/author/CAPABILITY.md +207 -0
- package/skills/uipath-maestro-flow/references/author/brownfield.md +91 -0
- package/skills/uipath-maestro-flow/references/author/editing-operations-cli.md +190 -0
- package/skills/uipath-maestro-flow/references/author/editing-operations-json.md +374 -0
- package/skills/uipath-maestro-flow/references/author/editing-operations.md +104 -0
- package/skills/uipath-maestro-flow/references/author/greenfield.md +420 -0
- package/skills/uipath-maestro-flow/references/author/planning-arch.md +364 -0
- package/skills/uipath-maestro-flow/references/author/planning-impl.md +291 -0
- package/skills/uipath-maestro-flow/references/author/plugins/agent/impl.md +237 -0
- package/skills/uipath-maestro-flow/references/author/plugins/agent/planning.md +97 -0
- package/skills/uipath-maestro-flow/references/author/plugins/agentic-process/impl.md +107 -0
- package/skills/uipath-maestro-flow/references/author/plugins/agentic-process/planning.md +61 -0
- package/skills/uipath-maestro-flow/references/author/plugins/api-workflow/impl.md +108 -0
- package/skills/uipath-maestro-flow/references/author/plugins/api-workflow/planning.md +60 -0
- package/skills/uipath-maestro-flow/references/author/plugins/batch-transform/impl.md +171 -0
- package/skills/uipath-maestro-flow/references/author/plugins/batch-transform/planning.md +72 -0
- package/skills/uipath-maestro-flow/references/author/plugins/connector/impl-inline.md +120 -0
- package/skills/uipath-maestro-flow/references/author/plugins/connector/impl.md +463 -0
- package/skills/uipath-maestro-flow/references/author/plugins/connector/planning.md +186 -0
- package/skills/uipath-maestro-flow/references/author/plugins/connector-trigger/impl.md +517 -0
- package/skills/uipath-maestro-flow/references/author/plugins/connector-trigger/planning.md +115 -0
- package/skills/uipath-maestro-flow/references/author/plugins/conversational-agent/impl.md +309 -0
- package/skills/uipath-maestro-flow/references/author/plugins/conversational-agent/planning.md +133 -0
- package/skills/uipath-maestro-flow/references/author/plugins/data-fabric/impl.md +428 -0
- package/skills/uipath-maestro-flow/references/author/plugins/data-fabric/planning.md +188 -0
- package/skills/uipath-maestro-flow/references/author/plugins/decision/impl.md +83 -0
- package/skills/uipath-maestro-flow/references/author/plugins/decision/planning.md +38 -0
- package/skills/uipath-maestro-flow/references/author/plugins/delay/impl.md +38 -0
- package/skills/uipath-maestro-flow/references/author/plugins/delay/planning.md +53 -0
- package/skills/uipath-maestro-flow/references/author/plugins/end/impl.md +56 -0
- package/skills/uipath-maestro-flow/references/author/plugins/end/planning.md +28 -0
- package/skills/uipath-maestro-flow/references/author/plugins/flow/impl.md +107 -0
- package/skills/uipath-maestro-flow/references/author/plugins/flow/planning.md +58 -0
- package/skills/uipath-maestro-flow/references/author/plugins/hitl/impl.md +181 -0
- package/skills/uipath-maestro-flow/references/author/plugins/hitl/planning.md +166 -0
- package/skills/uipath-maestro-flow/references/author/plugins/http/impl-connector.md +86 -0
- package/skills/uipath-maestro-flow/references/author/plugins/http/impl-manual.md +68 -0
- package/skills/uipath-maestro-flow/references/author/plugins/http/impl.md +173 -0
- package/skills/uipath-maestro-flow/references/author/plugins/http/planning.md +107 -0
- package/skills/uipath-maestro-flow/references/author/plugins/inline-agent/impl.md +540 -0
- package/skills/uipath-maestro-flow/references/author/plugins/inline-agent/planning.md +115 -0
- package/skills/uipath-maestro-flow/references/author/plugins/inline-voice-agent/impl.md +269 -0
- package/skills/uipath-maestro-flow/references/author/plugins/inline-voice-agent/planning.md +128 -0
- package/skills/uipath-maestro-flow/references/author/plugins/ixp/impl.md +424 -0
- package/skills/uipath-maestro-flow/references/author/plugins/ixp/planning.md +95 -0
- package/skills/uipath-maestro-flow/references/author/plugins/loop/impl.md +403 -0
- package/skills/uipath-maestro-flow/references/author/plugins/loop/planning.md +60 -0
- package/skills/uipath-maestro-flow/references/author/plugins/merge/impl.md +43 -0
- package/skills/uipath-maestro-flow/references/author/plugins/merge/planning.md +24 -0
- package/skills/uipath-maestro-flow/references/author/plugins/queue/impl.md +82 -0
- package/skills/uipath-maestro-flow/references/author/plugins/queue/planning.md +44 -0
- package/skills/uipath-maestro-flow/references/author/plugins/rpa/impl.md +117 -0
- package/skills/uipath-maestro-flow/references/author/plugins/rpa/planning.md +61 -0
- package/skills/uipath-maestro-flow/references/author/plugins/scheduled-trigger/impl.md +56 -0
- package/skills/uipath-maestro-flow/references/author/plugins/scheduled-trigger/planning.md +93 -0
- package/skills/uipath-maestro-flow/references/author/plugins/script/impl.md +98 -0
- package/skills/uipath-maestro-flow/references/author/plugins/script/planning.md +42 -0
- package/skills/uipath-maestro-flow/references/author/plugins/subflow/impl.md +164 -0
- package/skills/uipath-maestro-flow/references/author/plugins/subflow/planning.md +35 -0
- package/skills/uipath-maestro-flow/references/author/plugins/summarize/impl.md +189 -0
- package/skills/uipath-maestro-flow/references/author/plugins/summarize/planning.md +66 -0
- package/skills/uipath-maestro-flow/references/author/plugins/switch/impl.md +72 -0
- package/skills/uipath-maestro-flow/references/author/plugins/switch/planning.md +34 -0
- package/skills/uipath-maestro-flow/references/author/plugins/terminate/impl.md +48 -0
- package/skills/uipath-maestro-flow/references/author/plugins/terminate/planning.md +29 -0
- package/skills/uipath-maestro-flow/references/author/plugins/transform/impl.md +252 -0
- package/skills/uipath-maestro-flow/references/author/plugins/transform/planning.md +47 -0
- package/skills/uipath-maestro-flow/references/diagnose/CAPABILITY.md +73 -0
- package/skills/uipath-maestro-flow/references/diagnose/failure-modes.md +353 -0
- package/skills/uipath-maestro-flow/references/diagnose/troubleshooting-guide.md +174 -0
- package/skills/uipath-maestro-flow/references/evaluate/CAPABILITY.md +134 -0
- package/skills/uipath-maestro-flow/references/evaluate/commands-reference.md +376 -0
- package/skills/uipath-maestro-flow/references/evaluate/eval-sets-guide.md +227 -0
- package/skills/uipath-maestro-flow/references/evaluate/evaluators-guide.md +143 -0
- package/skills/uipath-maestro-flow/references/evaluate/running-guide.md +215 -0
- package/skills/uipath-maestro-flow/references/evaluate/upload-safety.md +94 -0
- package/skills/uipath-maestro-flow/references/operate/CAPABILITY.md +77 -0
- package/skills/uipath-maestro-flow/references/operate/manage.md +39 -0
- package/skills/uipath-maestro-flow/references/operate/run.md +121 -0
- package/skills/uipath-maestro-flow/references/operate/ship.md +57 -0
- package/skills/uipath-maestro-flow/references/shared/action-nodes.md +100 -0
- package/skills/uipath-maestro-flow/references/shared/cli-commands.md +269 -0
- package/skills/uipath-maestro-flow/references/shared/cli-conventions.md +178 -0
- package/skills/uipath-maestro-flow/references/shared/file-format.md +582 -0
- package/skills/uipath-maestro-flow/references/shared/node-output-wiring.md +86 -0
- package/skills/uipath-maestro-flow/references/shared/ux-narration-and-todos.md +113 -0
- package/skills/uipath-maestro-flow/references/shared/variables-and-expressions.md +787 -0
- package/skills/uipath-platform/references/integration-service/activities.md +2 -2
- package/skills/uipath-platform/references/integration-service/activity-generation.md +8 -1
- package/skills/uipath-platform/references/integration-service/triggers.md +1 -3
- package/version-manifest.json +1 -1
- package/skills/uipath-maestro-flow/examples/AquariumSafetyStop.flow.ts +0 -26
- package/skills/uipath-maestro-flow/examples/ArchiveCardExtract.flow.ts +0 -38
- package/skills/uipath-maestro-flow/examples/BakeOffEntryForm.flow.ts +0 -27
- package/skills/uipath-maestro-flow/examples/BeeHiveLedger.flow.ts +0 -61
- package/skills/uipath-maestro-flow/examples/BeltProgression.flow.ts +0 -53
- package/skills/uipath-maestro-flow/examples/BirdCountLookup.flow.ts +0 -24
- package/skills/uipath-maestro-flow/examples/ClubDirectory.flow.ts +0 -56
- package/skills/uipath-maestro-flow/examples/ConcertSoundcheck.flow.ts +0 -59
- package/skills/uipath-maestro-flow/examples/DoorbellLog.flow.ts +0 -45
- package/skills/uipath-maestro-flow/examples/FestivalMapScaffold.flow.ts +0 -22
- package/skills/uipath-maestro-flow/examples/FieldTripQuickForm.flow.ts +0 -45
- package/skills/uipath-maestro-flow/examples/FossilCatalogEnrich.flow.ts +0 -26
- package/skills/uipath-maestro-flow/examples/GallerySubmission.flow.ts +0 -67
- package/skills/uipath-maestro-flow/examples/GreenhouseWatering.flow.ts +0 -39
- package/skills/uipath-maestro-flow/examples/HarbourRadioLine.flow.ts +0 -31
- package/skills/uipath-maestro-flow/examples/HerbariumDispatch.flow.ts +0 -34
- package/skills/uipath-maestro-flow/examples/KilnReview.flow.ts +0 -38
- package/skills/uipath-maestro-flow/examples/LibraryDeskChat.flow.ts +0 -39
- package/skills/uipath-maestro-flow/examples/LighthouseSignal.flow.ts +0 -30
- package/skills/uipath-maestro-flow/examples/MeteorShowerPages.flow.ts +0 -39
- package/skills/uipath-maestro-flow/examples/NeighborhoodWalkPlanner.flow.ts +0 -27
- package/skills/uipath-maestro-flow/examples/ObservatorySeeing.flow.ts +0 -51
- package/skills/uipath-maestro-flow/examples/OralHistoryDigest.flow.ts +0 -31
- package/skills/uipath-maestro-flow/examples/PlanetariumConfirmation.flow.ts +0 -34
- package/skills/uipath-maestro-flow/examples/PlantNameAdvisor.flow.ts +0 -28
- package/skills/uipath-maestro-flow/examples/PostcardCaption.flow.ts +0 -44
- package/skills/uipath-maestro-flow/examples/PotteryStudioCallback.flow.ts +0 -41
- package/skills/uipath-maestro-flow/examples/RecipeScaler.flow.ts +0 -62
- package/skills/uipath-maestro-flow/examples/SeedPacketReader.flow.ts +0 -49
- package/skills/uipath-maestro-flow/examples/TideTableConverter.flow.ts +0 -35
- package/skills/uipath-maestro-flow/examples/TrailLogSummary.flow.ts +0 -75
- package/skills/uipath-maestro-flow/examples/WorkshopInventory.flow.ts +0 -27
- package/skills/uipath-maestro-flow/examples/bindings.json +0 -85
- package/skills/uipath-maestro-flow/references/CLI-LOOP.md +0 -309
- package/skills/uipath-maestro-flow/references/agent-resources.md +0 -74
- package/skills/uipath-maestro-flow/references/agent.md +0 -175
- package/skills/uipath-maestro-flow/references/agentic-process.md +0 -41
- package/skills/uipath-maestro-flow/references/api-workflow.md +0 -29
- package/skills/uipath-maestro-flow/references/author.md +0 -178
- package/skills/uipath-maestro-flow/references/batch-transform.md +0 -23
- package/skills/uipath-maestro-flow/references/bindings.md +0 -178
- package/skills/uipath-maestro-flow/references/branch.md +0 -18
- package/skills/uipath-maestro-flow/references/brownfield.md +0 -152
- package/skills/uipath-maestro-flow/references/connector-params.md +0 -624
- package/skills/uipath-maestro-flow/references/conversational.md +0 -77
- package/skills/uipath-maestro-flow/references/data-fabric.md +0 -268
- package/skills/uipath-maestro-flow/references/delay.md +0 -26
- package/skills/uipath-maestro-flow/references/diagnose.md +0 -141
- package/skills/uipath-maestro-flow/references/document-pipeline.md +0 -47
- package/skills/uipath-maestro-flow/references/error-handling.md +0 -75
- package/skills/uipath-maestro-flow/references/evaluate.md +0 -168
- package/skills/uipath-maestro-flow/references/event-trigger.md +0 -155
- package/skills/uipath-maestro-flow/references/form-trigger.md +0 -41
- package/skills/uipath-maestro-flow/references/hitl.md +0 -169
- package/skills/uipath-maestro-flow/references/http.md +0 -105
- package/skills/uipath-maestro-flow/references/inline-agent.md +0 -132
- package/skills/uipath-maestro-flow/references/ixp.md +0 -167
- package/skills/uipath-maestro-flow/references/loops.md +0 -77
- package/skills/uipath-maestro-flow/references/manual-trigger.md +0 -39
- package/skills/uipath-maestro-flow/references/operate.md +0 -204
- package/skills/uipath-maestro-flow/references/or-processes.md +0 -91
- package/skills/uipath-maestro-flow/references/parallel-merge.md +0 -21
- package/skills/uipath-maestro-flow/references/placeholder.md +0 -70
- package/skills/uipath-maestro-flow/references/published-function.md +0 -66
- package/skills/uipath-maestro-flow/references/queue.md +0 -53
- package/skills/uipath-maestro-flow/references/return.md +0 -20
- package/skills/uipath-maestro-flow/references/rpa-workflow.md +0 -27
- package/skills/uipath-maestro-flow/references/scheduled-trigger.md +0 -34
- package/skills/uipath-maestro-flow/references/script.md +0 -52
- package/skills/uipath-maestro-flow/references/subflow.md +0 -33
- package/skills/uipath-maestro-flow/references/summarize.md +0 -20
- package/skills/uipath-maestro-flow/references/switch.md +0 -20
- package/skills/uipath-maestro-flow/references/terminate.md +0 -22
- package/skills/uipath-maestro-flow/references/transform.md +0 -32
- package/skills/uipath-maestro-flow/references/voice.md +0 -70
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
# Connector Activity Nodes — Planning
|
|
2
|
+
|
|
3
|
+
Connector activity nodes call external services (Jira, Slack, Salesforce, Outlook, etc.) via UiPath Integration Service. They are dynamically loaded — not built-in — and appear in the registry after `uip login` + `uip maestro flow registry pull`.
|
|
4
|
+
|
|
5
|
+
## When to Use
|
|
6
|
+
|
|
7
|
+
Use a connector activity node when the flow needs to **call an external service that has a pre-built UiPath connector**. Connectors handle auth (OAuth, API keys), token refresh, and error formatting automatically at runtime. Note: design-time reference resolution (looking up records by name during authoring) still requires the agent to paginate — see [impl.md](impl.md).
|
|
8
|
+
|
|
9
|
+
### Decision Order
|
|
10
|
+
|
|
11
|
+
Prefer higher tiers when connecting to external services:
|
|
12
|
+
|
|
13
|
+
| Tier | Approach | When to Use |
|
|
14
|
+
| --- | --- | --- |
|
|
15
|
+
| 1 | **IS connector activity** (this node type) | A connector exists and its activities cover the use case |
|
|
16
|
+
| 2 | **Non-catalog activity generation** | A connector exists but lacks the curated activity, **and the connector reports `V4Compatible`** — uses the connector's IS connection for auth. Invoke the `uipath-platform` skill's activity generation (sanctioned exception to [SKILL.md rule #4](../../../../SKILL.md#critical-rules-universal) — no user prompt once the gap and flag are confirmed), then author the node per [impl-inline.md](impl-inline.md). Never skip to Tier 3 on a `V4Compatible` connector |
|
|
17
|
+
| 3 | **Managed HTTP Request** (`core.action.http.v2`) | A connector exists but lacks the curated activity, and does **not** report `V4Compatible` — uses the connector's IS connection for auth |
|
|
18
|
+
| 4 | **Managed HTTP Request — manual mode** (`core.action.http.v2`) | No connector exists — you provide the full URL manually |
|
|
19
|
+
| 5 | **RPA workflow** | Target system has no API at all (legacy desktop apps, terminals) |
|
|
20
|
+
|
|
21
|
+
**Tiers 2 and 3 answer the same question — the connector is there, the activity is
|
|
22
|
+
not. Establish the gap FIRST, the same way you always have**
|
|
23
|
+
([Sanity-check before deciding "no connector activity exists"](#sanity-check-before-deciding-no-connector-activity-exists)):
|
|
24
|
+
`registry search`, and if it returns triggers but no activities, `registry pull
|
|
25
|
+
--force` and search again. Only when the second search still shows no activity is
|
|
26
|
+
the gap real.
|
|
27
|
+
|
|
28
|
+
**Then** one connector metadata call decides which fallback:
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
uip is connectors metadata <connector-key> --output json
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
Read `Data[0].Flags.V4Compatible`:
|
|
35
|
+
|
|
36
|
+
| value | route |
|
|
37
|
+
|---|---|
|
|
38
|
+
| `true` | **Tier 2** — generate a non-catalog activity |
|
|
39
|
+
| `false`, or the key is **absent** | **Tier 3** — Managed HTTP Request |
|
|
40
|
+
|
|
41
|
+
The key is PascalCase in CLI output: `--output-filter "[0].Flags.v4Compatible"` (lowercase `v`) returns `Data: []`, which reads as "flag absent" and misroutes a Tier 2 connector to Managed HTTP — filter on `Flags` or `Flags.V4Compatible`. Test for the value, not for the presence of `Flags`. `Flags` is `{}` on most
|
|
42
|
+
connectors rather than missing, so `Flags && …` passes while
|
|
43
|
+
`Flags.V4Compatible` is `undefined`. Measured: `uipath-salesforce-slack`
|
|
44
|
+
returns `{"V4Compatible": true}`; `uipath-atlassian-jira`,
|
|
45
|
+
`uipath-microsoft-teams` and `uipath-google-drive` all return `{}`.
|
|
46
|
+
|
|
47
|
+
The flag is a **capability hint for choosing a node type, not an authorization
|
|
48
|
+
decision** — it says the connector can host a generated activity, not that the
|
|
49
|
+
caller may call anything. Auth is still the connector's IS connection, enforced
|
|
50
|
+
at runtime.
|
|
51
|
+
|
|
52
|
+
### Prerequisites
|
|
53
|
+
|
|
54
|
+
- `uip login` required — connector nodes only appear in the registry after authentication
|
|
55
|
+
- A healthy IS connection must exist for the connector — if none exists, the user must create one before proceeding
|
|
56
|
+
- `uip maestro flow registry pull` must be run to cache connector node types locally
|
|
57
|
+
|
|
58
|
+
### When NOT to Use
|
|
59
|
+
|
|
60
|
+
- **No connector exists for the service** — use `core.action.http.v2` manual mode instead
|
|
61
|
+
- **Simple GET request with no auth** — `core.action.http.v2` (manual mode) is simpler and faster to configure
|
|
62
|
+
- **The operation needs desktop/browser interaction** — use an RPA resource node
|
|
63
|
+
- **The task requires reasoning or judgment** — use an agent node
|
|
64
|
+
|
|
65
|
+
## Node Type Pattern
|
|
66
|
+
|
|
67
|
+
`uipath.connector.<connector-key>.<activity>`
|
|
68
|
+
|
|
69
|
+
Examples:
|
|
70
|
+
- `uipath.connector.uipath-salesforce-slack.send-message`
|
|
71
|
+
- `uipath.connector.uipath-atlassian-jira.create-issue`
|
|
72
|
+
|
|
73
|
+
## Discovery
|
|
74
|
+
|
|
75
|
+
```bash
|
|
76
|
+
uip maestro flow registry search <service> --output json \
|
|
77
|
+
--output-filter "[*].{NodeType:NodeType,DisplayName:DisplayName,Description:Description,AvailableOnTenant:AvailableOnTenant}"
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
`registry search` returns `Data` as a flat array, and each row uses PascalCase fields (`NodeType`, `DisplayName`, `Description`, `AvailableOnTenant`). Do **not** parse `Data.Nodes`, lowercase `type`, or lowercase `category`; those shapes do not exist in the CLI JSON output.
|
|
81
|
+
|
|
82
|
+
For connector activities, use `NodeType` as the source of truth:
|
|
83
|
+
|
|
84
|
+
- Activity rows start with `uipath.connector.<connector-key>.`
|
|
85
|
+
- Trigger rows start with `uipath.connector.trigger.` and belong to the connector-trigger guide
|
|
86
|
+
- `NodeType` is the exact value to pass to `registry get` and `node add`
|
|
87
|
+
- `Category` can be tenant/internal metadata such as `connector.<id>` and is not a reliable connector-key source
|
|
88
|
+
|
|
89
|
+
If the connector key fails, list all connectors:
|
|
90
|
+
|
|
91
|
+
```bash
|
|
92
|
+
uip is connectors list --output json
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
Keys are often prefixed — e.g., `uipath-salesforce-slack` not `slack`.
|
|
96
|
+
|
|
97
|
+
### Sanity-check before deciding "no connector activity exists"
|
|
98
|
+
|
|
99
|
+
A `registry search <service>` that returns **only `uipath.connector.trigger.*`** entries — zero activity entries — is **suspicious, not authoritative**. Connector activities and triggers are independent fetches against different typecache endpoints; the registry cache can transiently miss the activity branch when one of those endpoints flakes (TTL: 30 min). Falling through to managed HTTP at this point produces a flow that *validates* but skips the real connector node — a silent topology mistake.
|
|
100
|
+
|
|
101
|
+
When `registry search` returns triggers but **no activities** for a service whose connector you've already confirmed exists (`uip is connectors list`), or returns nothing at all for a well-known connector, **force a fresh pull before falling back**:
|
|
102
|
+
|
|
103
|
+
```bash
|
|
104
|
+
uip maestro flow registry pull --force
|
|
105
|
+
uip maestro flow registry search <service> --output json
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
If the second search still returns no activities for that connector, falling through is legitimate — to Tier 2 or Tier 3 depending on `V4Compatible`, as above. If the second search now lists activities, the cache was stale — proceed with the connector activity node as Tier 1.
|
|
109
|
+
|
|
110
|
+
> **Why this matters**: a partial registry pull is an indirect failure — `registry pull` reports `Success` even when one node-source branch silently dropped its contribution. The shape (`triggers > 0 && activities == 0`) is the only local signal you have. Treat it like a stale-cache symptom, not a topology fact.
|
|
111
|
+
|
|
112
|
+
### Disambiguation — when search returns multiple connectors for the same intent
|
|
113
|
+
|
|
114
|
+
`uip maestro flow registry search <keyword>` routinely returns multiple connectors for the same user intent (e.g. searching `databricks` returns both the native AI-serving connector and the JDBC gateway). **Never silently pick the first match.**
|
|
115
|
+
|
|
116
|
+
Apply the canonical disambiguation ladder owned by Integration Service:
|
|
117
|
+
|
|
118
|
+
- [/uipath:uipath-platform — Integration Service — connectors.md — Connector Disambiguation](../../../../../uipath-platform/references/integration-service/connectors.md#connector-disambiguation) — classify catalog/custom/mock, intent-match by `Description`, count remaining candidates (1 → silent, >1 → AskUser, 0 catalog → STOP).
|
|
119
|
+
- [/uipath:uipath-platform — Integration Service — connectors.md — JDBC Gateway — Database SQL Intent](../../../../../uipath-platform/references/integration-service/connectors.md#jdbc-gateway--database-sql-intent) — special handling when the user's intent is a database SQL operation (native connector vs JDBC gateway, connection-name keyword matching, decision matrix, lifecycle disclosure).
|
|
120
|
+
|
|
121
|
+
Lock the chosen connector key in the planning notes — never re-derive per node within the same flow.
|
|
122
|
+
|
|
123
|
+
### Check Connector Connections
|
|
124
|
+
|
|
125
|
+
For each connector found in registry search, verify a healthy connection exists. Extract the connector key from the node type name (e.g., `uipath.connector.uipath-microsoft-outlook365.get-newest-email` -> key is `uipath-microsoft-outlook365`).
|
|
126
|
+
|
|
127
|
+
**Never type a connector key from memory.** Use the key from the `registry search` node type only. The registry key is frequently prefixed or qualified differently than the service's brand name (e.g. an Outlook connector keys as `uipath-microsoft-outlook365`, not `outlook`), so a guessed key silently misses the real connector and makes `connections list` return a false "No connections found."
|
|
128
|
+
|
|
129
|
+
```bash
|
|
130
|
+
uip is connections list "<connector-key>" --all-folders --output json
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
> `--all-folders` is mandatory. Without it the CLI returns the active folder only and hides connections in other folders the user can see. Plain `uip is connections list "<connector-key>"` is forbidden for discovery.
|
|
134
|
+
|
|
135
|
+
- Filter to `State: Enabled`, then record the connection ID for implementation planning. `IsDefault: Yes` is a tenant-wide preference, not a suitability signal.
|
|
136
|
+
- Record which connection a reference lookup resolved against. Before concluding a user-supplied value does not exist, see [impl.md — Step 4](impl.md#step-4--resolve-reference-fields).
|
|
137
|
+
- **If the result is empty, do not conclude "no connection exists."** An empty `connections list` is suspicious, not authoritative. Three things must hold before you treat it as real: (a) the key came from `registry search`, not memory; (b) the call used `--all-folders`; (c) a `--refresh` retry was still empty. Only then surface it in **Open Questions** so the user can create one while reviewing. Never ask the user a connection-creation question on an unverified empty result. See [impl.md](impl.md) for the platform-skill empty-result recovery path shared with implementation.
|
|
138
|
+
|
|
139
|
+
## Ports
|
|
140
|
+
|
|
141
|
+
| Input Port | Output Port(s) |
|
|
142
|
+
| --- | --- |
|
|
143
|
+
| `input` | `success`, `error` |
|
|
144
|
+
|
|
145
|
+
The `error` port is the implicit error port shared with all action nodes — see [Implicit error port on action nodes](../../../shared/file-format.md#implicit-error-port-on-action-nodes).
|
|
146
|
+
|
|
147
|
+
## Output Variables
|
|
148
|
+
|
|
149
|
+
- `$vars.{nodeId}.output` — the connector response (structure depends on the operation)
|
|
150
|
+
- `$vars.{nodeId}.error` — error details if the call fails
|
|
151
|
+
|
|
152
|
+
## HTTP Fallback (Managed HTTP Request)
|
|
153
|
+
|
|
154
|
+
When a connector exists but lacks the specific curated activity **and does not
|
|
155
|
+
report `V4Compatible`** (Tier 3 — check the connector metadata first, see
|
|
156
|
+
[Decision Order](#decision-order)), use `core.action.http.v2` (Managed HTTP
|
|
157
|
+
Request). This node proxies through the `uipath-uipath-http` connector and uses
|
|
158
|
+
the **target connector's** IS connection for authentication — you supply the API
|
|
159
|
+
URL and payload.
|
|
160
|
+
|
|
161
|
+
If the connector *does* report `V4Compatible`, prefer Tier 2 instead: a
|
|
162
|
+
generated non-catalog activity keeps the operation as a first-class activity
|
|
163
|
+
node rather than a hand-supplied URL. The activity comes from the
|
|
164
|
+
`uipath-platform` skill's [activity-generation.md](../../../../../uipath-platform/references/integration-service/activity-generation.md).
|
|
165
|
+
Invoking that skill for this purpose is an explicit exception to
|
|
166
|
+
[SKILL.md rule #4](../../../../SKILL.md#critical-rules-universal): once the
|
|
167
|
+
gap is established and `V4Compatible` is `true`, invoke it directly rather
|
|
168
|
+
than stopping to ask — but follow its guide, do not reimplement its
|
|
169
|
+
`uip is activities` steps here. The node is then authored per
|
|
170
|
+
[impl-inline.md](impl-inline.md). Fall back to this Tier 3 Managed HTTP path
|
|
171
|
+
on a `V4Compatible` connector only when the `uipath-platform` skill is
|
|
172
|
+
unavailable in the session, and say so in the final report.
|
|
173
|
+
|
|
174
|
+
> **Do NOT use individual connector HTTP request nodes** (e.g., `uipath.connector.<key>.http-request`). Always use the unified `core.action.http.v2` Managed HTTP Request node for non-curated API calls.
|
|
175
|
+
|
|
176
|
+
> **Do NOT use `core.action.http` (v1) with `authenticationType: "connection"` for this.** The v1 node does not pass IS credentials at runtime. Always use `core.action.http.v2`.
|
|
177
|
+
|
|
178
|
+
See [http/planning.md](../http/planning.md) for full selection heuristics and [http/impl.md](../http/impl.md) for configuration via `uip maestro flow node configure`.
|
|
179
|
+
|
|
180
|
+
Note as `managed-http: <service> — <operation>` during planning.
|
|
181
|
+
|
|
182
|
+
## Planning Annotation
|
|
183
|
+
|
|
184
|
+
In the architectural plan, annotate connector nodes as:
|
|
185
|
+
- `connector: <service-name>` with the intended operation (e.g., "connector: Jira — create issue")
|
|
186
|
+
- If discovery found no connector, fall back to `core.action.http.v2` (manual mode) or flag the gap in Open Questions
|