UiPath Documentation
uipath-cli
latest
false
Guide de l'utilisateur de UiPath CLI
Important :
Ce contenu a été traduit à l'aide d'une traduction automatique. La localisation du contenu nouvellement publié peut prendre 1 à 2 semaines avant d’être disponible.

uip est le générateur de connecteurs init & Connecteur

Syntaxe et options pour l'élaboration, la modification, l'inspection et la validation d'un connecteur Integration Service local — exécution du générateur, exécution prédéfinie, suppression de l'en-tête initiaux, inspection et validation.

Une partie de la chaîne d'outils de création locale uip is connectors builder . Cette page couvre les deux verbes qui possèdent le shell disque d’un connecteur:

  • builder init — créez un nouveau connecteur ou modifiez les champs sur celui qui se résout dans le répertoire actuel. Propriétaire également de init preset apply (identifiez un bundle de configuration de base/pagination) et init header delete (supprimez un en-tête de requête globale).
  • builder inspect / builder validate — Résumé de la structure en lecture seule et ensemble de vérifications de réussite/d'échec gradable par CI. Ceux-ci se trouvent directement sous builder, sans encapsuleur connector dans le chemin de commande.

Pour les activités d’élaboration, l’authentification, les déclencheurs ou la modification de fichiers de bas niveau, consultez les pages frères.

Concepts​

  • Créer vs modifier l'envoi - init décide son mode en indiquant si un connecteur se résout à partir de --connector-dir (ou du répertoire actuel, en analysant uniquement le répertoire actuel lui-même — pas de sous-répertoires, contrairement à la résolution de secours des autres commandes de générateur). Aucun connecteur ne se résout → crée (nécessite --name, élabore une nouvelle arborescence et des fragments par défaut). Un résout → modifie (seules les indicateurs que vous transmettez; tout le reste du disque est laissé tel quel). Si plusieurs répertoires de connecteur correspondent, init échoue avec Code: "connectorAmbiguous" plutôt que de deviner - transmettez --connector-dir explicitement.
  • Pourquoi init n'analysera pas les sous-répertoires - toutes les autres commandes du générateur retourneront à l'analyse des sous-répertoires immédiats lorsqu'aucun connecteur ne se résout dans le répertoire actuel (voir Concepts sur la page parente). init ignore délibérément cette solution de secours: la numérisation risque de résoudre un répertoire de connecteurs frères au-dessous de cwd et de le modifier ou de le renommer en mode silencieux au lieu d’en créer un nouveau. Exécutez init depuis le propre répertoire du connecteur, ou transmettez --connector-dir pour en modifier un ailleurs.
  • Qu’est-ce que init se rassemble - cette commande unique remplace ce qui était auparavant séparé connector scaffold, metadata set, global set et la base/pagination de config preset , de sorte que les trois autres verbes de création (auth, activity, trigger) restent étroits. Les champs de element.json / de métadonnées détaillés ne sont pas exposés comme indicateurs ici (displayOrder, extended, typeOauth, cloneable, tags, ...) passent par state patch sur la page Déclencheur et état à la place.
  • Exigence de connexion lors de la création - la création d'un connecteur sans --organization nécessite une connexion active, car la clé d'élément (design-{org}-{slug}) tamponne l'organisation. Cela permet de vérifier le statut de connexion réel, et pas seulement si un nom d’organisation doit être mis en cache localement; une session expirée ou défaillante de rafraîchissement échoue la vérification même si uip login status indique toujours un succès. Transmettez --organization <slug> explicitement pour les builds hors ligne ou CI.
  • Création d’en-tête vs. asymétrie de suppression - l’ajout ou la mise à jour d’un en-tête global est replié dans init --header VendorName=value (répétable). La suppression de l'un est l'autre init header delete <vendor-name> - l'opération d'en-tête unique state patch ne peut pas effectuer, car elle ne peut pas adresser directement un seul élément de tableau element.json parameters[].

Synthèse​

uip is connectors builder init [--name <name>] [--connector-dir <path>] [options...]
uip is connectors builder init preset apply --kind <base|pagination> [--override <key=value>]... [--connector-dir <path>] [--force]
uip is connectors builder init header delete <vendor-name> [--connector-dir <path>]
uip is connectors builder inspect [--connector-dir <path>]
uip is connectors builder validate [--connector-dir <path>]
uip is connectors builder init [--name <name>] [--connector-dir <path>] [options...]
uip is connectors builder init preset apply --kind <base|pagination> [--override <key=value>]... [--connector-dir <path>] [--force]
uip is connectors builder init header delete <vendor-name> [--connector-dir <path>]
uip is connectors builder inspect [--connector-dir <path>]
uip is connectors builder validate [--connector-dir <path>]

uip est l'initialisation du générateur de connecteurs​

Créez ou configurez le shell d'un connecteur sur disque.

Remarque :

Utilisez cette option pour initialiser un tout nouveau connecteur (--name) ou pour définir des champs au niveau du connecteur — nom, description, catégories, URL de base, en-têtes, cycle de vie, niveau — à partir d'un connecteur qui existe déjà. Pour ajouter des ressources/activités, utilisez activity create sur la page Activité et hooks . Pour configurer l'authentification au-delà du Sugar --auth intégré, utilisez auth set sur la page Authentification . Pour modifier un champ element.json long que cette commande n'expose pas en tant qu'indicateur, utilisez state patch.

Options​

LongValeur (Value)Description
--name <name>stringNom complet, par exemple 'Acme Widgets'. Obligatoire lors de la création; la clé d'élément et le dossier par défaut en sont dérivés.
--connector-dir <path>Chemin d'accèsRépertoire des connecteurs. Voir Concepts ci-dessus pour le comportement de résolution spécifique à init.
--organization <name>Champ de données dynamiqueChamp de données dynamique de l’organisation pour la clé d’élément (design-{org}-{name}). Mode Création uniquement; la valeur par défaut est votre organisation connectée.
--description <text>stringDescription du connecteur en une ligne.
--categories <csv>csvListe de catégories séparées par des virgules. La correspondance est insensible à la casse; les valeurs approuvées sont canoniques sur leur orthographie approuvée (par exemple crm → CRM). Une catégorie non reconnue échoue rapidement ici plutôt que plus tard, à validate.
--activity-color <hex>HEXCouleur hexadécimal pour l'interface utilisateur de l'activité Studio.
--base-url <url>urlURL de base par défaut — définit l'entrée de configuration base.url. Une URL basée sur un modèle (https://{environment}/api) ancre automatiquement l'entrée de configuration d'interrogation de sauvegarde dont il a besoin.
--accept-type <value>stringAccept valeur de l'en-tête.
--content-type <value>stringContent-Type valeur de l'en-tête.
--header <kv>VendorName=valueEn-tête de requête global. Répétable.
--lifecycle-stage <stage>stringÉtape du cycle de vie, par exemple GA, BETA.
--tier <tier>stringNiveau du connecteur.
--auth <type>stringConfigurer l’authentification en ligne (mode Création uniquement): toute valeur auth set --auth-type (oauth2, customApiKey, none, jwtOauth, firstPartyService, …). Avec oauth2, --authorization-url, --token-url et --scope sont requis. Les indicateurs spécifiques à un type autres que ceux ci-dessous ont besoin de auth set.
--authorization-url <url>urlURL de connexion/de consentement OAuth2. Requis avec --auth oauth2.
--token-url <url>urlPoint de terminaison de jeton OAuth2. Requis avec --auth oauth2.
--token-refresh-url <url>urlPoint de terminaison d’actualisation OAuth2. La valeur par défaut est --token-url.
--token-revoke-url <url>urlPoint de terminaison de révocation du jeton OAuth2.
--scope <scope>stringChaîne d’étendue délimitée par des espaces OAuth2. Requis avec --auth oauth2.
--api-key-param-name <name>stringcustomApiKey — l'en-tête du fournisseur ou le nom du paramètre de requête.
--api-key-location <where>header | querycustomApiKey — où la clé est envoyée. Par défaut header.
--api-key-prefix <prefix>stringcustomApiKey — préfixe littéral.
--key-config-name <key>stringcustomApiKey — clé de configuration interne. Par défaut custom.api.key.
--key-config-display-name <name>stringcustomApiKey — Libellé de l'interface utilisateur. Par défaut API Key.
--forceDrapeauAppliquez des différences sur les entrées existantes au lieu de générer des erreurs.

Exemples​

# Create a new connector (auth configured later)
uip is connectors builder init --name 'Acme Widgets'
# Create a new connector (auth configured later)
uip is connectors builder init --name 'Acme Widgets'
# Create + OAuth2 + base URL in one call
uip is connectors builder init --name 'Acme Widgets' --base-url https://api.acme.com \
  --auth oauth2 --authorization-url https://acme.com/oauth/authorize \
  --token-url https://acme.com/oauth/token --scope 'read write'
# Create + OAuth2 + base URL in one call
uip is connectors builder init --name 'Acme Widgets' --base-url https://api.acme.com \
  --auth oauth2 --authorization-url https://acme.com/oauth/authorize \
  --token-url https://acme.com/oauth/token --scope 'read write'
# Edit an existing connector — only the passed flags change
uip is connectors builder init --description 'Acme Widgets connector' --categories crm,sales
# Edit an existing connector — only the passed flags change
uip is connectors builder init --description 'Acme Widgets connector' --categories crm,sales

Format des données (--sortie json)​

{
  "Code": "ConnectorInitialized",
  "Data": {
    "Mode": "created",
    "ElementKey": "design-myorg-acmewidgets",
    "RepoName": "acme-widgets",
    "ConnectorRoot": "/work/periodic-design-myorg-acmewidgets",
    "FilesCreated": ["app/element/element.json", "..."],
    "OrganizationName": "myorg",
    "OrganizationNameSource": "login",
    "HeadersSeeded": [],
    "BaseUrlSet": false,
    "MetadataChanges": [],
    "AuthConfigured": null
  }
}
{
  "Code": "ConnectorInitialized",
  "Data": {
    "Mode": "created",
    "ElementKey": "design-myorg-acmewidgets",
    "RepoName": "acme-widgets",
    "ConnectorRoot": "/work/periodic-design-myorg-acmewidgets",
    "FilesCreated": ["app/element/element.json", "..."],
    "OrganizationName": "myorg",
    "OrganizationNameSource": "login",
    "HeadersSeeded": [],
    "BaseUrlSet": false,
    "MetadataChanges": [],
    "AuthConfigured": null
  }
}

Mode est "created" ou "edited". Le mode édition renvoie une forme Data plus étroite: Mode, ConnectorRoot, HeadersChanged, MetadataChanges, BaseUrlSet — il n'y a pas de FilesCreated, de OrganizationName ou de AuthConfigured, car cela ne s'applique qu'à un nouvel élaboration.

uip est un générateur de connecteurs prédéfini pour s'appliquer​

Appliquez un bundle canonique d’entrées de configuration: base (URL de base plus sélectionnez/nulls/clés d’instance) ou pagination (les quatre clés de pagination).

Remarque :

Utilisez cette option pour référencer les clés de configuration de base ou de pagination dans un appel. Le bundle d'événements/interrogations est un préréglage distinct atteint via trigger create --event-kind, et non via cette commande. Pour ajouter une entrée de configuration sur mesure au lieu d'un bundle, utilisez state patch element.json/configuration/<key>.

Options​

LongValeur (Value)Description
--kind <kind>base | paginationRequis. Prédéfinis à appliquer.
--override <kv>key=valueRemplacement defaultValue par entrée. Répétable.
--connector-dir <path>Chemin d'accèsRépertoire des connecteurs.
--forceDrapeauAppliquez des différences sur les entrées existantes au lieu de générer des erreurs.

Exemple​

uip is connectors builder init preset apply --kind pagination
uip is connectors builder init preset apply --kind pagination

Format des données (--sortie json)​

{
  "Code": "ConfigPresetApplied",
  "Data": {
    "Kind": "pagination",
    "Added": ["pagination.max"],
    "Updated": [],
    "Unchanged": [],
    "ConnectorRoot": "/work/periodic-design-myorg-acmewidgets"
  }
}
{
  "Code": "ConfigPresetApplied",
  "Data": {
    "Kind": "pagination",
    "Added": ["pagination.max"],
    "Updated": [],
    "Unchanged": [],
    "ConnectorRoot": "/work/periodic-design-myorg-acmewidgets"
  }
}

uip est le générateur de connecteurs suppression de l’en-tête​

Supprimez un en-tête de demande global par nom de fournisseur.

Remarque :

Utilisez cette option pour supprimer un en-tête global que vous ne souhaitez plus envoyer. Pour en ajouter ou en mettre à jour une, utilisez init --header VendorName=value — il n'y a pas de init header create; cette opération se situe sur init.

Arguments​

NomRequisObjectif
<vendor-name>ouiNom de l'en-tête du fournisseur à supprimer.

Options​

LongValeur (Value)Description
--connector-dir <path>Chemin d'accèsRépertoire des connecteurs.

Exemple​

uip is connectors builder init header delete X-Tenant
uip is connectors builder init header delete X-Tenant

Format des données (--sortie json)​

{
  "Code": "GlobalHeaderRemoved",
  "Data": { "ConnectorRoot": "/work/periodic-design-myorg-acmewidgets", "VendorName": "X-Tenant" }
}
{
  "Code": "GlobalHeaderRemoved",
  "Data": { "ConnectorRoot": "/work/periodic-design-myorg-acmewidgets", "VendorName": "X-Tenant" }
}

uip est l'inspection du générateur de connecteurs​

Générez une vue d'ensemble structurée en lecture seule d'un connecteur: types d'authentification, configuration, ressources (avec des fichiers et des hooks de ressources standard), hooks globaux, des événements et des métadonnées.

Remarque :

Utilisez cette option pour obtenir une carte rapide d'un connecteur existant avant de le modifier, ou pour confirmer les ressources, les hooks et les types d'authentification présents. Pour des vérifications de réussite/d’échec au lieu d’un résumé de structure, utilisez validate.

Options​

LongValeur (Value)Description
--connector-dir <path>Chemin d'accèsRépertoire des connecteurs.

Exemple​

uip is connectors builder inspect --connector-dir ./my-acme-connector
uip is connectors builder inspect --connector-dir ./my-acme-connector

Format des données (--sortie json)​

{
  "Code": "ConnectorInspected",
  "Data": {
    "ConnectorRoot": "/work/my-acme-connector",
    "ElementKey": "design-myorg-acmewidgets",
    "Name": "Acme Widgets",
    "Description": "Acme Widgets connector",
    "AuthTypes": ["oauth2"],
    "ConfigCount": 5,
    "ConfigKeys": ["base.url", "..."],
    "ResourceCount": 12,
    "ResourceSummary": {
      "/auth_validation": { "Methods": ["GET"], "Type": "standard", "StandardResourceFile": "auth_validation.json", "Hooks": [] }
    },
    "GlobalHooks": [],
    "HasEvents": false,
    "EventTypes": [],
    "Categories": ["CRM"],
    "LifecycleStage": "GA",
    "Metadata": { "...": "verbatim element-metadata.json content" }
  }
}
{
  "Code": "ConnectorInspected",
  "Data": {
    "ConnectorRoot": "/work/my-acme-connector",
    "ElementKey": "design-myorg-acmewidgets",
    "Name": "Acme Widgets",
    "Description": "Acme Widgets connector",
    "AuthTypes": ["oauth2"],
    "ConfigCount": 5,
    "ConfigKeys": ["base.url", "..."],
    "ResourceCount": 12,
    "ResourceSummary": {
      "/auth_validation": { "Methods": ["GET"], "Type": "standard", "StandardResourceFile": "auth_validation.json", "Hooks": [] }
    },
    "GlobalHooks": [],
    "HasEvents": false,
    "EventTypes": [],
    "Categories": ["CRM"],
    "LifecycleStage": "GA",
    "Metadata": { "...": "verbatim element-metadata.json content" }
  }
}

ResourceSummary est clés par le chemin disque réel de la ressource (par exemple /auth_validation), et Metadata est le contenu textuel de element-metadata.json. Les deux sont exonérés de la normalisation des clés PascalCase habituelle de la CLI - les clés brutes sont conservées exactement telles qu'elles apparaissent sur le disque, de sorte qu'un sélecteur est créé à partir de cette sortie (par exemple /auth_validation, {sys_id}) correspond au chemin d'accès réel au lieu d'une variante managée /authValidation / {sysId}.

uip est la validation du générateur de connecteurs​

Exécutez l’ensemble de vérifications sur un connecteur et publiez un rapport structuré. Quitte la valeur non zéro lorsque le connecteur n’est pas valide, afin que CI puisse procéder à une passerelle.

Remarque :

Utilisez cette option pour limiter un connecteur dans CI avant l'importation ou la version et pour trouver des erreurs, des avertissements et des suggestions dans element.json, des fichiers de ressources standard, des hooks et des métadonnées. Pour parcourir la structure d'un connecteur au lieu d'exécuter des vérifications, utilisez inspect.

Options​

LongValeur (Value)Description
--connector-dir <path>Chemin d'accèsRépertoire des connecteurs.

Exemples​

uip is connectors builder validate
uip is connectors builder validate
uip is connectors builder validate --connector-dir ./my-acme-connector
uip is connectors builder validate --connector-dir ./my-acme-connector

Format des données (--sortie json)​

{
  "Code": "ConnectorValidation",
  "Data": {
    "ConnectorRoot": "/work/my-acme-connector",
    "ElementKey": "design-myorg-acmewidgets",
    "Valid": true,
    "Errors": [],
    "Warnings": [],
    "Info": ["Configuration entries: 5"],
    "Summary": "PASS: 0 error(s), 0 warning(s)"
  }
}
{
  "Code": "ConnectorValidation",
  "Data": {
    "ConnectorRoot": "/work/my-acme-connector",
    "ElementKey": "design-myorg-acmewidgets",
    "Valid": true,
    "Errors": [],
    "Warnings": [],
    "Info": ["Configuration entries: 5"],
    "Summary": "PASS: 0 error(s), 0 warning(s)"
  }
}

Le rapport est émis à la fois en cas de réussite et d'échec - un rapport en échec renvoie toujours Result: "Success" avec Valid: false dans Data (la commande elle-même n'a pas d'erreur), mais le processus se termine avec un code de sortie non nul pour que CI puisse sur le résultat sans analyser le corps.

Voir également​

Cette page vous a-t-elle été utile ?

Connecter

Besoin d'aide ? Assistance

Vous souhaitez apprendre ? UiPath Academy

Vous avez des questions ? UiPath Forum

Rester à jour