UiPath Documentation
uipath-cli
latest
false
Importante :
Este contenido se ha traducido mediante traducción automática. La localización de contenidos recién publicados puede tardar entre una y dos semanas en estar disponible.

Guía del usuario de UiPath CLI

Nodo de flujo de UIP y borde de flujo de UIP

Un flujo es un gráfico. Los nodos son los vértices (desencadenadores, actividades, conectores, agentes); los bordes son las conexiones dirigidas entre ellos. Los comandos uip flow node y uip flow edge editan un archivo .flow in situ: añaden, configuran, enumeran y eliminan ambos.

Esta página también cubre tres grupos de comandos complementarios que editan el archivo .flow de la misma manera: variable, variable-update y binding.

Sinopsis

uip flow node add       <file> <node-type> [-i <json>] [--position <x,y>] [--label <label>] [--source <uuid>]
uip flow node configure <file> <node-id> --detail <json>
uip flow node list      <file>
uip flow node delete    <file> <node-id>

uip flow edge add    <file> <source-id> <target-id> [--source-port <port>] [--target-port <port>]
uip flow edge list   <file>
uip flow edge delete <file> <edge-id>
uip flow node add       <file> <node-type> [-i <json>] [--position <x,y>] [--label <label>] [--source <uuid>]
uip flow node configure <file> <node-id> --detail <json>
uip flow node list      <file>
uip flow node delete    <file> <node-id>

uip flow edge add    <file> <source-id> <target-id> [--source-port <port>] [--target-port <port>]
uip flow edge list   <file>
uip flow edge delete <file> <edge-id>

Prevalece las opciones globales. Los códigos de salida siguen el contrato estándar.


adición de nodo de flujo de uip

Añade un nodo a un archivo .flow . El tipo de nodo debe existir en el registro: utiliza uip flow registry search para descubrir valores <node-type> válidos.

Argumentos

  • <file> (obligatorio) : ruta al archivo .flow .
  • <node-type> (obligatorio) : identificador de tipo de nodo (p. ej. core.trigger.manual, uipath.connector.slack.send-message).

Opciones

OpciónDescripción
-i, --input <json>Objeto JSON de valores de entrada para establecer en el nodo (por ejemplo '{"script":"…"}'). Debe ser un objeto JSON, no una matriz o escalar. Para los nodos de conector (tipo uipath.connector.*), no pase --input aquí; ejecute node configure después.
--position <x,y>Posición del lienzo, p. ej. 250,150. Tanto x como y son números obligatorios.
--label <label>Mostrar etiqueta para el nodo.
--source <uuid>Identificador de origen para nodos de agente en línea ( model.source).

Ejemplo

uip flow node add invoice-flow.flow uipath.connector.slack.send-message --label "Notify team"
uip flow node add invoice-flow.flow uipath.connector.slack.send-message --label "Notify team"

Data shape (--output json)

{
  "Code": "NodeAddSuccess",
  "Data": {
    "Node": { "id": "node_a1b2c3d4", "type": "uipath.connector.slack.send-message" },
    "DefinitionAdded": true,
    "BindingsCreated": 0,
    "VariableCount": 0
  }
}
{
  "Code": "NodeAddSuccess",
  "Data": {
    "Node": { "id": "node_a1b2c3d4", "type": "uipath.connector.slack.send-message" },
    "DefinitionAdded": true,
    "BindingsCreated": 0,
    "VariableCount": 0
  }
}

DefinitionAdded es true en la primera inserción de un node-type dado: se crea la entrada correspondiente en la matriz .flow definitions[] .


Configuración del nodo de flujo UIP

Rellene inputs.detail en un nodo ya añadido y cree los enlaces de flujo de trabajo que necesita. Ejecuta esto después de node add para los nodos de conector y HTTP gestionados.

Argumentos

  • <file> (obligatorio) : ruta al archivo .flow .
  • (obligatorio) <node-id> ID del nodo a configurar (encuéntralo con node list).

Opciones

  • --detail <json> (obligatorio) : JSON de configuración. La forma depende del tipo de nodo:

Nodos de conector (uipath.connector.*)

Obtener method y endpoint de connectorMethodInfo en la salida registry get .

  • Requerido: connectionId, folderKey, method, endpoint
  • Opcional: bodyParameters, queryParameters, pathParameters
uip flow node configure invoice-flow.flow node_a1b2c3d4 --detail '{
  "connectionId": "b2c3d4e5-0000-0000-0000-000000000001",
  "folderKey":    "c3d4e5f6-0000-0000-0000-000000000001",
  "method":       "POST",
  "endpoint":     "/issues",
  "bodyParameters": { "summary": "Bug" }
}'
uip flow node configure invoice-flow.flow node_a1b2c3d4 --detail '{
  "connectionId": "b2c3d4e5-0000-0000-0000-000000000001",
  "folderKey":    "c3d4e5f6-0000-0000-0000-000000000001",
  "method":       "POST",
  "endpoint":     "/issues",
  "bodyParameters": { "summary": "Bug" }
}'

Nodos HTTP gestionados (core.action.http.v2)

Dos modos de autenticación:

Modo de conector (authentication: "connector"): utiliza una conexión de Integration Service para la autenticación:

  • Requerido: authentication, method, connectionId, folderKey, targetConnector
  • methodGET, POST, PUT, PATCH, DELETE, OPTIONS, HEAD
  • Opcional: url (ruta adjunta a la URL base del conector), headers, query, body
uip flow node configure invoice-flow.flow node_abc --detail '{
  "authentication":  "connector",
  "targetConnector": "uipath-microsoft-outlook365",
  "connectionId":    "…",
  "folderKey":       "…",
  "method":          "GET",
  "url":             "/me"
}'
uip flow node configure invoice-flow.flow node_abc --detail '{
  "authentication":  "connector",
  "targetConnector": "uipath-microsoft-outlook365",
  "connectionId":    "…",
  "folderKey":       "…",
  "method":          "GET",
  "url":             "/me"
}'

Modo manual (authentication: "manual"): sin autenticación de conector, proporciona tú mismo la URL completa y cualquier encabezado de autenticación:

  • Obligatorio: authentication, method, url (URL completa)
  • Opcional: headers, query, body (cadena; puede ser una expresión, por ejemplo =js:({…}))
uip flow node configure invoice-flow.flow node_abc --detail '{
  "authentication": "manual",
  "method":         "GET",
  "url":            "https://api.example.com/data",
  "headers":        { "Authorization": "Bearer <token>" }
}'
uip flow node configure invoice-flow.flow node_abc --detail '{
  "authentication": "manual",
  "method":         "GET",
  "url":            "https://api.example.com/data",
  "headers":        { "Authorization": "Bearer <token>" }
}'

Data shape (--output json)

{
  "Code": "NodeConfigureSuccess",
  "Data": {
    "NodeId": "node_a1b2c3d4",
    "BindingsCreated": 2,
    "DetailPopulated": true
  }
}
{
  "Code": "NodeConfigureSuccess",
  "Data": {
    "NodeId": "node_a1b2c3d4",
    "BindingsCreated": 2,
    "DetailPopulated": true
  }
}

lista de nodos de flujo de uip

Enumera todos los nodos en un archivo .flow .

Argumentos

  • <file> (obligatorio) : ruta al archivo .flow .

Data shape (--output json)

{
  "Code": "NodeListSuccess",
  "Data": {
    "Nodes": [
      { "id": "start",          "type": "core.trigger.manual" },
      { "id": "node_a1b2c3d4",  "type": "core.action.http.v2" }
    ],
    "Count": 2
  }
}
{
  "Code": "NodeListSuccess",
  "Data": {
    "Nodes": [
      { "id": "start",          "type": "core.trigger.manual" },
      { "id": "node_a1b2c3d4",  "type": "core.action.http.v2" }
    ],
    "Count": 2
  }
}

Cada entrada incluye como mínimo id y type; el servicio también adjunta metadatos de visualización de la matriz .flow definitions[] .


eliminación de nodo de flujo de uip

Eliminar un nodo y todo lo que posee. Elimina:

  • Bordes conectados
  • Vinculaciones huérfanas
  • Definiciones huérfanas
  • Variables de nodo propiedad del nodo eliminado
  • Actualizaciones de variables propiedad del nodo eliminado

Argumentos

  • <file> (obligatorio) : ruta al archivo .flow .
  • <node-id> obligatorio) : ID del nodo a eliminar.

Data shape (--output json)

{
  "Code": "NodeDeleteSuccess",
  "Data": {
    "DeletedNode":           { "id": "node_a1b2c3d4", "type": "core.action.http.v2" },
    "EdgesRemoved":          1,
    "BindingsRemoved":       0,
    "DefinitionsRemoved":    0,
    "VariablesRemoved":      0,
    "VariableUpdatesRemoved": 0
  }
}
{
  "Code": "NodeDeleteSuccess",
  "Data": {
    "DeletedNode":           { "id": "node_a1b2c3d4", "type": "core.action.http.v2" },
    "EdgesRemoved":          1,
    "BindingsRemoved":       0,
    "DefinitionsRemoved":    0,
    "VariablesRemoved":      0,
    "VariableUpdatesRemoved": 0
  }
}

adición de borde de flujo de uip

Añade un borde entre dos nodos.

Argumentos

  • <file> (obligatorio) : ruta al archivo .flow .
  • <source-id> obligatorio) : ID del nodo de origen.
  • <target-id> obligatorio) : ID del nodo de destino.

Opciones

  • --source-port <port> — nombre del puerto de origen (predeterminado: output).
  • --target-port <port> : nombre del puerto de destino (predeterminado: input).

Data shape (--output json)

{
  "Code": "EdgeAddSuccess",
  "Data": {
    "Edge": {
      "id":         "edge_a1b2c3d4",
      "source":     "Node_1",
      "target":     "Node_2",
      "sourcePort": "output",
      "targetPort": "input"
    }
  }
}
{
  "Code": "EdgeAddSuccess",
  "Data": {
    "Edge": {
      "id":         "edge_a1b2c3d4",
      "source":     "Node_1",
      "target":     "Node_2",
      "sourcePort": "output",
      "targetPort": "input"
    }
  }
}

lista de bordes de flujo de uip

{
  "Code": "EdgeListSuccess",
  "Data": {
    "Edges": [
      { "id": "edge_a1b2c3d4", "source": "Node_1", "target": "Node_2" }
    ],
    "Count": 1
  }
}
{
  "Code": "EdgeListSuccess",
  "Data": {
    "Edges": [
      { "id": "edge_a1b2c3d4", "source": "Node_1", "target": "Node_2" }
    ],
    "Count": 1
  }
}

Eliminar borde de flujo de UIP

Eliminar un solo borde por ID. edge list para encontrar el ID.

{
  "Code": "EdgeDeleteSuccess",
  "Data": {
    "DeletedEdge": { "id": "edge_a1b2c3d4", "source": "Node_1", "target": "Node_2" }
  }
}
{
  "Code": "EdgeDeleteSuccess",
  "Data": {
    "DeletedEdge": { "id": "edge_a1b2c3d4", "source": "Node_1", "target": "Node_2" }
  }
}

Variables y actualizaciones de variables

Dos grupos de comandos complementarios (aún no en la barra lateral) editan los subárboles variables y actualización de variables de un archivo .flow .

variable de flujo uip

uip flow variable add    <file> <variable-id> -d <direction> [-t <type>] [--default-value <val>] [--description <text>] [--schema <json>] [--sub-type <type>]
uip flow variable list   <file>
uip flow variable delete <file> <variable-id>
uip flow variable add    <file> <variable-id> -d <direction> [-t <type>] [--default-value <val>] [--description <text>] [--schema <json>] [--sub-type <type>]
uip flow variable list   <file>
uip flow variable delete <file> <variable-id>
  • directionin, out, inout (obligatorio).
  • typestring, number, boolean, object, array, file (predeterminado string).
  • --default-value se analiza por --type : los valores object/array deben ser JSON válidos de la forma coincidente.
  • --schema debe ser un objeto JSON (por ejemplo '{"type":"string"}').

Formas de datos: VariableAddSuccess (Data.Variable), VariableListSuccess (Data.Variables[], Count), VariableDeleteSuccess (Data.DeletedVariable).

Actualización de variable de flujo de UIP

Adjunta una expresión JS a un nodo que se ejecuta al finalizar y se asigna a una variable global (que debe ser out o inout).

uip flow variable-update add    <file> --node-id <id> --variable-id <id> --expression <expr>
uip flow variable-update list   <file> [--node-id <id>]
uip flow variable-update delete <file> <node-id> <variable-id>
uip flow variable-update add    <file> --node-id <id> --variable-id <id> --expression <expr>
uip flow variable-update list   <file> [--node-id <id>]
uip flow variable-update delete <file> <node-id> <variable-id>

La expresión se prefija automáticamente con =js: si falta. Ejemplo: --expression "=js:ctx.output".

Formas de datos: VariableUpdateAddSuccess (Data.VariableUpdate), VariableUpdateListSuccess (Data.VariableUpdates[], Count), VariableUpdateDeleteSuccess (Data.DeletedUpdate).


Bindings

Las vinculaciones declaran los recursos externos que necesita un flujo en el momento de la publicación/implementación (un proceso de destino, un agente, una conexión, una cola, etc.) y a qué propiedad de nodo se conectan.

uip flow binding add    <file> <name> <resource> <default-value> [--resource-key <key>] [--property-attribute <attr>] [--resource-sub-type <type>]
uip flow binding list   <file>
uip flow binding delete <file> <resource-key>
uip flow binding add    <file> <name> <resource> <default-value> [--resource-key <key>] [--property-attribute <attr>] [--resource-sub-type <type>]
uip flow binding list   <file>
uip flow binding delete <file> <resource-key>
  • <resource> debe ser uno de los VALID_RESOURCE_TYPES del servicio (que se muestra en el mensaje de error del comando add si se pasa un valor no válido).
  • --property-attribute es la propiedad del nodo de destino que rellena la vinculación (p. ej. name, folderPath, connection).
  • --resource-sub-type proporciona subclasificación (p. ej. Agent, Process).
  • binding delete elimina todas las vinculaciones con la clave de recurso dada, no una sola entrada por ID.

Formas de datos: BindingAddSuccess (Data.Binding), BindingListSuccess (Data.Bindings[], Count), BindingDeleteSuccess (Data.DeletedBindings[], Count).


flujo de UIP ordenado

Diseño automático: reposiciona los nodos en un archivo .flow para eliminar las superposiciones y organizar el gráfico de forma limpia.

uip flow tidy <file>
uip flow tidy <file>

Forma de datos: Code: "FlowTidy", Data: { File, NodesTotal, EdgesTotal, NodesRepositioned }.

Ver también

¿Te ha resultado útil esta página?

Conectar

¿Necesita ayuda? Soporte

¿Quiere aprender? UiPath Academy

¿Tiene alguna pregunta? Foro de UiPath

Manténgase actualizado