- Überblick
- Erste Schritte
- Konzepte
- Verwenden der UiPath CLI
- Anleitungen
- CI/CD-Rezepte
- Befehlsreferenz
- Überblick
- Exitcodes
- Globale Optionen
- UIP-codierter Agent
- uip coder
- uip context-grounding
- UIP-Dokumentation
- uip function
- uip guardrails
- uip llm-configuration
- uip llm-gateway
- uip model-hub
- Add-Test-Data-Entität
- Add-Test-Data-Queue
- Add-Test-Data-Variation
- Analysieren
- Erstellen
- Ein Projekt erstellen
- Diff
- Suchaktivitäten
- Get-Analyse-Regeln
- get-standard-aktivität-xaml
- Fehler abrufen
- Manuelle-Testfälle erhalten
- Manuelle-Testschritte erhalten
- get-library-object-repository
- get-object-repository
- Get-Versionen
- Beispiel für einen Workflow abrufen
- Anwendung anzeigen
- Anzeigeelement
- Inspektionspaket
- install-data-fabric-entities
- Pakete installieren oder aktualisieren
- list-data-fabric-entities
- list-instances
- Beispiele für Listenworkflows
- Packen
- Veröffentlichen
- remote
- restore
- run, debug & execution
- Ausführungsdatei installieren
- Suchvorlagen
- Studio starten
- Ausführung anhalten
- tm
- UIA
- uip tasks
- UIP-Ablaufverfolgungen
- uip traces feedback
- Migration
- Referenz und Support
Syntax and options for `uip admin external-apps`, which manages OAuth2 client registrations and their federated credentials for external application integrations.
uip admin external-apps manages OAuth2 client registrations — external applications and services that authenticate against UiPath using their own client ID/secret (or workload identity federation) rather than a user's own login. Each app is either confidential (server-side, has a secret) or non-confidential (public, e.g. a SPA or mobile app, no secret). A nested federated-credentials group manages workload-identity-federation bindings (e.g. GitHub Actions OIDC) that let an external app authenticate without a static secret at all.
Zusammenfassung
uip admin external-apps list
uip admin external-apps get <client-id>
uip admin external-apps create <name> [--redirect-uri <uri>] [--user-scope <scopes>] [--app-scope <scopes>] [--non-confidential] [--no-secret]
uip admin external-apps update <client-id> [--name <name>] [--redirect-uri <uri>] [--user-scope <scopes>] [--app-scope <scopes>]
uip admin external-apps delete <client-id>
uip admin external-apps generate-secret <client-id> [--description <text>] [--expiration <date>]
uip admin external-apps delete-secret <secret-id>
uip admin external-apps federated-credentials list <client-id>
uip admin external-apps federated-credentials get <client-id> <credential-id>
uip admin external-apps federated-credentials create <client-id> --name <name> --issuer <url> --audience <audience> --subject <subject>
uip admin external-apps federated-credentials update <client-id> <credential-id> --name <name> --issuer <url> --audience <audience> --subject <subject>
uip admin external-apps federated-credentials delete <client-id> <credential-id>
uip admin external-apps list
uip admin external-apps get <client-id>
uip admin external-apps create <name> [--redirect-uri <uri>] [--user-scope <scopes>] [--app-scope <scopes>] [--non-confidential] [--no-secret]
uip admin external-apps update <client-id> [--name <name>] [--redirect-uri <uri>] [--user-scope <scopes>] [--app-scope <scopes>]
uip admin external-apps delete <client-id>
uip admin external-apps generate-secret <client-id> [--description <text>] [--expiration <date>]
uip admin external-apps delete-secret <secret-id>
uip admin external-apps federated-credentials list <client-id>
uip admin external-apps federated-credentials get <client-id> <credential-id>
uip admin external-apps federated-credentials create <client-id> --name <name> --issuer <url> --audience <audience> --subject <subject>
uip admin external-apps federated-credentials update <client-id> <credential-id> --name <name> --issuer <url> --audience <audience> --subject <subject>
uip admin external-apps federated-credentials delete <client-id> <credential-id>
Verben
| „Gruppieren“ (Group) | Verb | Zweck |
|---|---|---|
external-apps | list | List external apps in the partition. |
external-apps | get | Get an app's details by client ID. |
external-apps | create | Register a new OAuth2 client. |
external-apps | update | Update an app's name, redirect URI, or scopes. |
external-apps | delete | Delete an app by client ID. |
external-apps | generate-secret | Generate a new client secret. |
external-apps | delete-secret | Delete a specific client secret. |
federated-credentials | list | List an app's federated credentials. |
federated-credentials | get | Get a federated credential by ID. |
federated-credentials | create | Bind an external identity provider (e.g. GitHub Actions OIDC) to the app. |
federated-credentials | update | Update a federated credential. |
federated-credentials | delete | Remove a federated credential. |
Konzepte
- Confidential vs. non-confidential. Default is confidential (server-side, gets a client secret).
--non-confidentialcreates a public client with no secret — it only supports--user-scope(delegated) scopes, never--app-scope; passing--app-scopeon a non-confidential app fails client-side. - Scopes are split by grant type.
--user-scope(delegated, requires a signed-in user) and--app-scope(app-only, client-credentials grant) are independent lists — pass either or both. At least one is required oncreate. Seeuip admin scopes listfor the full catalog of available scope names. --scopeis a deprecated alias for--app-scope. If both are given,--app-scopewins; a blank value on either (an empty or whitespace-only string) is rejected rather than silently treated as "no scopes."- A redirect URI is required whenever user scopes are involved — either because the app is non-confidential, or because
--user-scopewas passed — since both need the OAuth2 authorization-code flow. An app that's confidential and app-scope-only doesn't need one. updatere-derives scopes from resources when you don't pass any — if you omit both--user-scopeand--app-scope, the command re-sends the app's existing scopes unchanged rather than clearing them; the same non-confidential/redirect-URI validation ascreatestill applies to whatever the final scope set and redirect URI end up being.- Secrets are shown once.
generate-secret's returned value cannot be retrieved again — store it immediately.
uip admin external-apps list
List external apps in the partition. No filtering/pagination options.
Beispiel
uip admin external-apps list
uip admin external-apps list
Datenform (--output json)
{ "Code": "ExternalClientList", "Data": [{ "id": "my-app", "name": "My Application", "isConfidential": true }] }
{ "Code": "ExternalClientList", "Data": [{ "id": "my-app", "name": "My Application", "isConfidential": true }] }
uip admin external-apps get
Get external app details by client ID.
Argumente
| Name | Erforderlich | Zweck |
|---|---|---|
<client-id> | ja | External app ID. Find it with external-apps list. |
Beispiel
uip admin external-apps get my-app
uip admin external-apps get my-app
Datenform (--output json)
{ "Code": "ExternalClientDetails", "Data": { "id": "my-app", "name": "My Application", "isConfidential": true, "redirectUri": "https://example.com/callback" } }
{ "Code": "ExternalClientDetails", "Data": { "id": "my-app", "name": "My Application", "isConfidential": true, "redirectUri": "https://example.com/callback" } }
uip admin external-apps create
Create an external app (confidential by default).
Argumente
| Name | Erforderlich | Zweck |
|---|---|---|
<name> | ja | App display name. |
Optionen
| Long | Wert | Beschreibung |
|---|---|---|
--redirect-uri <uri> | comma-separated | Redirect URI(s) for the OAuth2 flow. Required when non-confidential or when --user-scope is set. |
--user-scope <scopes> | comma- or space-separated | Delegated (user) scopes. |
--app-scope <scopes> | comma- or space-separated | Application (app-only) scopes. Not allowed on a non-confidential app. |
--scope <scopes> | comma- or space-separated | Deprecated alias for --app-scope. |
--non-confidential | Markieren | Create a public client (no secret). |
--no-secret | Markieren | Skip generating a client secret on creation (confidential apps only). |
At least one of --user-scope/--app-scope is required.
Beispiele
# Confidential app with application scopes only
uip admin external-apps create "My App" --app-scope "OR.Folders,OR.Assets"
# Confidential app with application scopes only
uip admin external-apps create "My App" --app-scope "OR.Folders,OR.Assets"
# Confidential app with both user and app scopes
uip admin external-apps create "My App" --user-scope "OR.Folders" --app-scope "OR.Jobs" --redirect-uri "https://example.com/callback"
# Confidential app with both user and app scopes
uip admin external-apps create "My App" --user-scope "OR.Folders" --app-scope "OR.Jobs" --redirect-uri "https://example.com/callback"
# Public client (SPA) with user scopes
uip admin external-apps create "My SPA" --non-confidential --user-scope "OR.Folders" --redirect-uri "http://localhost:3000/callback"
# Public client (SPA) with user scopes
uip admin external-apps create "My SPA" --non-confidential --user-scope "OR.Folders" --redirect-uri "http://localhost:3000/callback"
Datenform (--output json)
{ "Code": "ExternalClientCreated", "Data": { "id": "my-app", "name": "My App", "isConfidential": true, "secret": "generated-secret-value" } }
{ "Code": "ExternalClientCreated", "Data": { "id": "my-app", "name": "My App", "isConfidential": true, "secret": "generated-secret-value" } }
secret is present only for a confidential app created without --no-secret.
uip admin external-apps update
Update an app's name, redirect URI, or scopes. At least one of --name/--redirect-uri/--user-scope/--app-scope is required.
Argumente
| Name | Erforderlich | Zweck |
|---|---|---|
<client-id> | ja | External app ID. |
Optionen
| Long | Short | Wert | Beschreibung |
|---|---|---|---|
--name <name> | -n | string | Neuer Anzeigename. |
--redirect-uri <uri> | comma-separated | New redirect URI(s). | |
--user-scope <scopes> | comma- or space-separated | New delegated scopes. | |
--app-scope <scopes> | comma- or space-separated | New application scopes. | |
--scope <scopes> | comma- or space-separated | Deprecated alias for --app-scope. |
Beispiel
uip admin external-apps update my-app-id --name "Updated App" --app-scope "OR.Folders"
uip admin external-apps update my-app-id --name "Updated App" --app-scope "OR.Folders"
Datenform (--output json)
{ "Code": "ExternalClientUpdated" }
{ "Code": "ExternalClientUpdated" }
uip admin external-apps delete
Delete an external app by client ID.
Argumente
| Name | Erforderlich | Zweck |
|---|---|---|
<client-id> | ja | External app ID. |
Beispiel
uip admin external-apps delete my-app-id
uip admin external-apps delete my-app-id
Datenform (--output json)
{ "Code": "ExternalClientDeleted", "Data": { "Id": "my-app-id", "Status": "Deleted successfully" } }
{ "Code": "ExternalClientDeleted", "Data": { "Id": "my-app-id", "Status": "Deleted successfully" } }
uip admin external-apps generate-secret
Generate a new secret for an external app. The secret value is shown only once.
Argumente
| Name | Erforderlich | Zweck |
|---|---|---|
<client-id> | ja | External app ID. |
Optionen
| Long | Wert | Beschreibung |
|---|---|---|
--description <text> | string | Description for the secret. |
--expiration <date> | ISO 8601 | Expiration date. |
Beispiel
uip admin external-apps generate-secret my-app
uip admin external-apps generate-secret my-app
Datenform (--output json)
{ "Code": "ExternalClientSecretGenerated", "Data": { "id": 1, "secret": "generated-secret-value" } }
{ "Code": "ExternalClientSecretGenerated", "Data": { "id": 1, "secret": "generated-secret-value" } }
uip admin external-apps delete-secret
Delete a specific secret from an external app — an app can have multiple active secrets; this removes just one.
Argumente
| Name | Erforderlich | Zweck |
|---|---|---|
<secret-id> | ja | Secret ID (numeric). Find it via external-apps get. |
Beispiel
uip admin external-apps delete-secret 12345
uip admin external-apps delete-secret 12345
Datenform (--output json)
{ "Code": "ExternalClientSecretDeleted", "Data": { "Id": "12345", "Status": "Deleted successfully" } }
{ "Code": "ExternalClientSecretDeleted", "Data": { "Id": "12345", "Status": "Deleted successfully" } }
uip admin external-apps federated-credentials list
List federated credentials for an external app.
Argumente
| Name | Erforderlich | Zweck |
|---|---|---|
<client-id> | ja | External app ID. |
Beispiel
uip admin external-apps federated-credentials list my-app-id
uip admin external-apps federated-credentials list my-app-id
Datenform (--output json)
{ "Code": "FederatedCredentialList", "Data": [{ "id": "fc000000-0000-0000-0000-000000000001", "name": "GitHub Actions", "issuer": "https://token.actions.githubusercontent.com" }] }
{ "Code": "FederatedCredentialList", "Data": [{ "id": "fc000000-0000-0000-0000-000000000001", "name": "GitHub Actions", "issuer": "https://token.actions.githubusercontent.com" }] }
uip admin external-apps federated-credentials get
Get a federated credential by ID.
Argumente
| Name | Erforderlich | Zweck |
|---|---|---|
<client-id> | ja | External app ID. |
<credential-id> | ja | Federated credential ID (UUID). |
Beispiel
uip admin external-apps federated-credentials get my-app-id fc000000-0000-0000-0000-000000000001
uip admin external-apps federated-credentials get my-app-id fc000000-0000-0000-0000-000000000001
Datenform (--output json)
{
"Code": "FederatedCredentialDetails",
"Data": {
"id": "fc000000-0000-0000-0000-000000000001",
"name": "GitHub Actions",
"issuer": "https://token.actions.githubusercontent.com",
"audience": "api://AzureADTokenExchange",
"subject": "repo:org/repo:ref:refs/heads/main"
}
}
{
"Code": "FederatedCredentialDetails",
"Data": {
"id": "fc000000-0000-0000-0000-000000000001",
"name": "GitHub Actions",
"issuer": "https://token.actions.githubusercontent.com",
"audience": "api://AzureADTokenExchange",
"subject": "repo:org/repo:ref:refs/heads/main"
}
}
uip admin external-apps federated-credentials create
Bind an external identity provider to the app — enables workload identity federation (e.g. a GitHub Actions workflow authenticating without a stored secret).
Argumente
| Name | Erforderlich | Zweck |
|---|---|---|
<client-id> | ja | External app ID. |
Optionen
| Long | Short | Wert | Erforderlich | Beschreibung |
|---|---|---|---|---|
--name <name> | -n | string | ja | Credential name. |
--issuer <url> | url | ja | Token issuer URL, e.g. https://token.actions.githubusercontent.com. | |
--audience <audience> | string | ja | Expected audience claim, e.g. api://AzureADTokenExchange. | |
--subject <subject> | string | ja | Expected subject claim, e.g. repo:org/repo:ref:refs/heads/main. | |
--description <text> | string | nein | Beschreibung. |
Beispiel
uip admin external-apps federated-credentials create my-app-id \
--name "GitHub Actions" \
--issuer "https://token.actions.githubusercontent.com" \
--audience "api://AzureADTokenExchange" \
--subject "repo:org/repo:ref:refs/heads/main"
uip admin external-apps federated-credentials create my-app-id \
--name "GitHub Actions" \
--issuer "https://token.actions.githubusercontent.com" \
--audience "api://AzureADTokenExchange" \
--subject "repo:org/repo:ref:refs/heads/main"
Datenform (--output json)
{ "Code": "FederatedCredentialCreated" }
{ "Code": "FederatedCredentialCreated" }
uip admin external-apps federated-credentials update
Update a federated credential — all four identity fields are required on every call (no partial update).
Argumente
| Name | Erforderlich | Zweck |
|---|---|---|
<client-id> | ja | External app ID. |
<credential-id> | ja | Federated credential ID (UUID). |
Optionen
| Long | Short | Wert | Erforderlich | Beschreibung |
|---|---|---|---|---|
--name <name> | -n | string | ja | Credential name. |
--issuer <url> | url | ja | Token issuer URL. | |
--audience <audience> | string | ja | Expected audience claim. | |
--subject <subject> | string | ja | Expected subject claim. | |
--description <text> | string | nein | Beschreibung. |
Beispiel
uip admin external-apps federated-credentials update my-app-id fc000000-0000-0000-0000-000000000001 \
--name "GitHub Actions (prod)" \
--issuer "https://token.actions.githubusercontent.com" \
--audience "api://AzureADTokenExchange" \
--subject "repo:org/repo:environment:production"
uip admin external-apps federated-credentials update my-app-id fc000000-0000-0000-0000-000000000001 \
--name "GitHub Actions (prod)" \
--issuer "https://token.actions.githubusercontent.com" \
--audience "api://AzureADTokenExchange" \
--subject "repo:org/repo:environment:production"
Datenform (--output json)
{ "Code": "FederatedCredentialUpdated" }
{ "Code": "FederatedCredentialUpdated" }
uip admin external-apps federated-credentials delete
Delete a federated credential from an external app.
Argumente
| Name | Erforderlich | Zweck |
|---|---|---|
<client-id> | ja | External app ID. |
<credential-id> | ja | Federated credential ID (UUID). |
Beispiel
uip admin external-apps federated-credentials delete my-app-id fc000000-0000-0000-0000-000000000001
uip admin external-apps federated-credentials delete my-app-id fc000000-0000-0000-0000-000000000001
Datenform (--output json)
{ "Code": "FederatedCredentialDeleted", "Data": { "Id": "fc000000-0000-0000-0000-000000000001", "Status": "Deleted successfully" } }
{ "Code": "FederatedCredentialDeleted", "Data": { "Id": "fc000000-0000-0000-0000-000000000001", "Status": "Deleted successfully" } }
Zugehörig
uip admin robot-accounts/pat/scopes— the shared OAuth2 scope catalog these apps draw from.uip admin users— directory users and groups.uip admin smtp— organization email configuration.
Siehe auch
- Zusammenfassung
- Verben
- Konzepte
- uip admin external-apps list
- Beispiel
- Datenform (--output json)
- uip admin external-apps get
- Argumente
- Beispiel
- Datenform (--output json)
- uip admin external-apps create
- Argumente
- Optionen
- Beispiele
- Datenform (--output json)
- uip admin external-apps update
- Argumente
- Optionen
- Beispiel
- Datenform (--output json)
- uip admin external-apps delete
- Argumente
- Beispiel
- Datenform (--output json)
- uip admin external-apps generate-secret
- Argumente
- Optionen
- Beispiel
- Datenform (--output json)
- uip admin external-apps delete-secret
- Argumente
- Beispiel
- Datenform (--output json)
- uip admin external-apps federated-credentials list
- Argumente
- Beispiel
- Datenform (--output json)
- uip admin external-apps federated-credentials get
- Argumente
- Beispiel
- Datenform (--output json)
- uip admin external-apps federated-credentials create
- Argumente
- Optionen
- Beispiel
- Datenform (--output json)
- uip admin external-apps federated-credentials update
- Argumente
- Optionen
- Beispiel
- Datenform (--output json)
- uip admin external-apps federated-credentials delete
- Argumente
- Beispiel
- Datenform (--output json)
- Zugehörig
- Siehe auch