UiPath Documentation
uipath-cli
latest
false
Guía del usuario de UiPath CLI
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.

organizaciones de administración de uip & inquilinos

Sintaxis y opciones para `organizaciones de administración de UIP` y `tenants de administración de UIP`, que gestionan la organización de la persona que llama, sus servicios aprovisionables y el ciclo de vida de los tenants dentro de ella.

uip admin organizations lee y actualiza el registro de la organización de la persona que llama, inspecciona las operaciones asíncronas de OMS (Servicio de gestión de la organización) y gestiona el aprovisionamiento de servicios a nivel de organización. uip admin tenants gestiona el ciclo de vida de los tenants dentro de esa organización (crear, enumerar, obtener, actualizar, eliminar temporalmente, habilitar/deshabilitar), además del aprovisionamiento de servicios en el nivel de tenant. Ambos grupos de comandos forman parte de uip admin (paquete @uipath/admin-tool), que registra todos los comandos de sus subpaquetes directamente en el comando de nivel superior admin sin anidar más: la invocación real siempre es uip admin <verb>.

Conceptos​

  • Una organización por inicio de sesión. No hay ningún argumento <organization-id> en ningún lugar de este grupo: cada comando resuelve la organización a partir de tu contexto de inicio de sesión actual. Cambie de organización iniciando sesión de nuevo en una diferente.
  • El ID de tenant es el tenant de inicio de sesión predeterminado. Cada verbo tenants que toma un ID de tenant lo acepta como argumento posicional opcional (o --tenant-id en los subcomandos services ); omítelo y el comando utiliza el tenant al que se refiere tu sesión de inicio de sesión. Si tu inicio de sesión no está limitado a ningún tenant y no pasas uno, el comando falla con un error explícito en lugar de adivinar silenciosamente.
  • La eliminación siempre es suave. tenants delete eliminaciones temporales (reversibles a través de un flujo de restauración en otro lugar de la plataforma): no hay ningún marcador --hard en este grupo.
  • Operaciones asíncronas. tenants create, update y delete son asíncronos: devuelven un operationId inmediatamente; sondéelo con organizations operation get. tenants enable/disable y todos los verbos services son síncronos.
  • Catálogo de servicios frente a servicios aprovisionados. services list-available el catálogo de servicios que podrían aprovisionarse (a nivel de organización o tenant, filtrable por región); services list devuelve lo que realmente está aprovisionado en este momento. El aprovisionamiento de un servicio utiliza services add/enable, no un verbo create.
  • Filtrado del lado del cliente. Varios marcadores de lista/filtro (--service, --region en services list; --filter, --environment en tenants list) se aplican en el lado del cliente después de obtener el conjunto de resultados completo: los puntos finales de OMS subyacentes no tienen servidor filtros laterales para la mayoría de estos. --status en tenants list se envía como un parámetro de consulta y se vuelve a aplicar en el lado del cliente, porque el servicio actualmente ignora el parámetro de consulta.
  • Las etiquetas de entorno obsoletas tienen el valor predeterminado Production. Los tenants creados antes de que se enviara la característica de etiqueta de entorno tienen un campo environment nulo; tenants list/get lo normaliza a "Production" antes de volver, para que el filtrado --environment y los consumidores posteriores vean un valor coherente.

Sinopsis​

uip admin organizations get [--full]
uip admin organizations update [--name <name>] [--logical-name <name>] [--language <code>] [--file <path>]
uip admin organizations regions list
uip admin organizations operation get <operationId>
uip admin organizations services list [--service <type>] [--status <status>] [--region <region>]
uip admin organizations services list-available

uip admin tenants list [--filter <fragment>] [--service <type>] [--status <status>] [--environment <env>] [--include-services]
uip admin tenants get [tenant-id]
uip admin tenants create [--name <name>] [--region <region>] [--environment <env>] [--file <path>]
uip admin tenants update [tenant-id] [--name <name>] [--region <region>] [--environment <env>] [--file <path>]
uip admin tenants delete [tenant-id]
uip admin tenants enable [tenant-id]
uip admin tenants disable [tenant-id] [--reason <text>]
uip admin tenants services list [--tenant-id <guid>] [--service <type>] [--region <region>]
uip admin tenants services list-available --region <region>
uip admin tenants services add [--tenant-id <guid>] [--service <type> | --file <path>]
uip admin tenants services remove [--tenant-id <guid>] [--service <type> | --file <path>]
uip admin tenants services enable [--tenant-id <guid>] --service <type>
uip admin tenants services disable [--tenant-id <guid>] --service <type>
uip admin organizations get [--full]
uip admin organizations update [--name <name>] [--logical-name <name>] [--language <code>] [--file <path>]
uip admin organizations regions list
uip admin organizations operation get <operationId>
uip admin organizations services list [--service <type>] [--status <status>] [--region <region>]
uip admin organizations services list-available

uip admin tenants list [--filter <fragment>] [--service <type>] [--status <status>] [--environment <env>] [--include-services]
uip admin tenants get [tenant-id]
uip admin tenants create [--name <name>] [--region <region>] [--environment <env>] [--file <path>]
uip admin tenants update [tenant-id] [--name <name>] [--region <region>] [--environment <env>] [--file <path>]
uip admin tenants delete [tenant-id]
uip admin tenants enable [tenant-id]
uip admin tenants disable [tenant-id] [--reason <text>]
uip admin tenants services list [--tenant-id <guid>] [--service <type>] [--region <region>]
uip admin tenants services list-available --region <region>
uip admin tenants services add [--tenant-id <guid>] [--service <type> | --file <path>]
uip admin tenants services remove [--tenant-id <guid>] [--service <type> | --file <path>]
uip admin tenants services enable [--tenant-id <guid>] --service <type>
uip admin tenants services disable [--tenant-id <guid>] --service <type>

Cada verbo también acepta --login-validity <minutes> (anula la duración del token de inicio de sesión interactivo para esa llamada; rara vez es necesario).

las organizaciones de administración de uip obtienen​

Obtener el registro de la organización de la persona que llama.

Opciones​

LargoValorDescripción
--fullMarcaDevuelve el paquete más completo (organización + tenants + catálogo de servicios disponible + logotipos) en una llamada en lugar del registro de organización desnudo.

Ejemplos​

uip admin organizations get
uip admin organizations get
uip admin organizations get --full
uip admin organizations get --full

Forma de datos (--json de salida)​

{
  "Code": "OmsOrganizationGet",
  "Data": {
    "id": "<org-guid>",
    "name": "Acme",
    "logicalName": "acme",
    "country": "US",
    "region": "UnitedStates",
    "status": "Active",
    "tenantsUrl": "https://cloud.uipath.com/acme",
    "language": "en-US",
    "createdOn": "<iso-date>",
    "organizationServiceInstances": []
  }
}
{
  "Code": "OmsOrganizationGet",
  "Data": {
    "id": "<org-guid>",
    "name": "Acme",
    "logicalName": "acme",
    "country": "US",
    "region": "UnitedStates",
    "status": "Active",
    "tenantsUrl": "https://cloud.uipath.com/acme",
    "language": "en-US",
    "createdOn": "<iso-date>",
    "organizationServiceInstances": []
  }
}

Con --full, Data es { organization, tenants, services, logos } en su lugar.

actualización de las organizaciones de administración de uip​

Actualizar los campos editables de la organización de la persona que llama: --name, --logical-name, --language en línea o --file <path> con el cuerpo completo de UpdateOrganizationCommand. Los marcadores en línea y --file son mutuamente excluyentes; pasar ninguno falla antes de cualquier llamada de red.

Opciones​

LargoValorDescripción
--name <name>StringNuevo nombre para mostrar.
--logical-name <name>StringNuevo nombre lógico (slug de URL).
--language <code>StringNuevo código de idioma, por ejemplo en-US, fr-FR.
--file <path>RutaCuerpo JSON UpdateOrganizationCommand completo. Mutuamente exclusivo con los marcadores en línea.

Ejemplos​

uip admin organizations update --name "New Org Name"
uip admin organizations update --name "New Org Name"
uip admin organizations update --file ./org-patch.json
uip admin organizations update --file ./org-patch.json

Forma de datos (--json de salida)​

{ "Code": "OmsOrganizationUpdated", "Data": {} }
{ "Code": "OmsOrganizationUpdated", "Data": {} }

lista de regiones de organizaciones de administrador de uip​

Enumere las regiones en las que se puede aprovisionar Portal para la empresa de la persona que llama.

Ejemplo​

uip admin organizations regions list
uip admin organizations regions list

Forma de datos (--json de salida)​

{ "Code": "OmsRegionsList", "Data": [{ "region": "UnitedStates" }, { "region": "Europe" }] }
{ "Code": "OmsRegionsList", "Data": [{ "region": "UnitedStates" }, { "region": "Europe" }] }

Operación de organizaciones de administración de UIP​

Inspeccionar operaciones OMS asíncronas (el tipo tenants create/update/delete devuelve un operationId para).

operación get de organizaciones de administrador de uip​

Argumentos​
NombreObligatorioPropósito
<operationId>SíUUID de operación devuelto de una llamada asíncrona anterior.
Ejemplo​
uip admin organizations operation get 11111111-2222-3333-4444-555555555555
uip admin organizations operation get 11111111-2222-3333-4444-555555555555
Forma de datos (--json de salida)​
{
  "Code": "OmsOperationGet",
  "Data": {
    "id": "11111111-2222-3333-4444-555555555555",
    "entityType": "Tenant",
    "entityId": "<entity-guid>",
    "operationStatus": "Completed",
    "errorMessage": null
  }
}
{
  "Code": "OmsOperationGet",
  "Data": {
    "id": "11111111-2222-3333-4444-555555555555",
    "entityType": "Tenant",
    "entityId": "<entity-guid>",
    "operationStatus": "Completed",
    "errorMessage": null
  }
}

Servicios de organizaciones de administración de UIP​

Gestionar servicios a nivel de organización (aprovisionamiento, catálogo, estado).

lista de servicios de organizaciones de administrador de uip​

Enumerar las instancias de servicio a nivel de organización actualmente aprovisionadas.

Opciones​
LargoValorDescripción
--service <type>StringCoincidencia exacta en serviceType (por ejemplo orchestrator). Filtro del lado del cliente.
--status <status>ENUMCoincidencia exacta en el estado de la instancia de servicio. Filtro del lado del cliente.
--region <region>ENUMCoincidencia exacta en la región de instancia de servicio. Filtro del lado del cliente.
Ejemplo​
uip admin organizations services list
uip admin organizations services list
Forma de datos (--json de salida)​
{
  "Code": "OmsOrgServicesList",
  "Data": [
    {
      "id": "<service-instance-guid>",
      "serviceType": "orchestrator",
      "region": "UnitedStates",
      "status": "Enabled",
      "url": "https://cloud.uipath.com/acme/portal_",
      "isVisible": true
    }
  ]
}
{
  "Code": "OmsOrgServicesList",
  "Data": [
    {
      "id": "<service-instance-guid>",
      "serviceType": "orchestrator",
      "region": "UnitedStates",
      "status": "Enabled",
      "url": "https://cloud.uipath.com/acme/portal_",
      "isVisible": true
    }
  ]
}

Lista de servicios de organizaciones de administrador de UIP disponibles​

Enumera el catálogo de servicios que se pueden aprovisionar a nivel de organización. Sin opciones.

Ejemplo​
uip admin organizations services list-available
uip admin organizations services list-available
Forma de datos (--json de salida)​
{
  "Code": "OmsOrgServicesAvailable",
  "Data": [
    {
      "id": "<service-guid>",
      "name": "orchestrator",
      "provisioningMode": "Implicit",
      "supportedRegions": ["UnitedStates", "Europe"],
      "defaultRegion": "UnitedStates",
      "isVisible": true,
      "isAlwaysProvision": false
    }
  ]
}
{
  "Code": "OmsOrgServicesAvailable",
  "Data": [
    {
      "id": "<service-guid>",
      "name": "orchestrator",
      "provisioningMode": "Implicit",
      "supportedRegions": ["UnitedStates", "Europe"],
      "defaultRegion": "UnitedStates",
      "isVisible": true,
      "isAlwaysProvision": false
    }
  ]
}

lista de tenants de administrador de uip​

Enumera los tenants en la organización de la persona que llama. Utilízalo para buscar el UUID de un tenant por nombre antes de llamar a get/update/delete/etc.

Opciones​

LargoValorDescripción
--filter <fragment>StringFiltro de subcadena que no distingue entre mayúsculas y minúsculas en el nombre del tenant. Del lado del cliente.
--service <type>StringSolo los tenants que tienen el servicio determinado aprovisionado. Del lado del servidor.
--status <status>enumeración: Enabled, Disabled, Updating, Failed, Maintenance, DeletedSolo tenants cuyo estado del ciclo de vida coincida. Enviado como parámetro de consulta y vuelto a aplicar en el lado del cliente, ya que el servicio actualmente ignora el parámetro de consulta.
--environment <env>enumeración: Production, Staging, DevelopmentSolo tenants con la etiqueta de entorno dada. Lado del cliente; las etiquetas faltantes/nulas se establecen de forma predeterminada en Production antes del filtrado.
--include-servicesMarcaIncluye la matriz services de cada tenant en línea en la respuesta.

Ejemplos​

uip admin tenants list
uip admin tenants list
uip admin tenants list --filter Default
uip admin tenants list --filter Default
uip admin tenants list --status Enabled --service orchestrator --include-services
uip admin tenants list --status Enabled --service orchestrator --include-services

Forma de datos (--json de salida)​

{
  "Code": "OmsTenantsList",
  "Data": [
    {
      "id": "<tenant-guid>",
      "name": "DefaultTenant",
      "color": "#1f8feb",
      "region": "UnitedStates",
      "status": "Enabled",
      "tenantUrl": "https://cloud.uipath.com/acme/DefaultTenant",
      "environment": "Production",
      "isCanaryTenant": false,
      "createdBy": "<user-guid>",
      "createdOn": "<iso-date>"
    }
  ]
}
{
  "Code": "OmsTenantsList",
  "Data": [
    {
      "id": "<tenant-guid>",
      "name": "DefaultTenant",
      "color": "#1f8feb",
      "region": "UnitedStates",
      "status": "Enabled",
      "tenantUrl": "https://cloud.uipath.com/acme/DefaultTenant",
      "environment": "Production",
      "isCanaryTenant": false,
      "createdBy": "<user-guid>",
      "createdOn": "<iso-date>"
    }
  ]
}

los tenants de administración de uip obtienen​

Obtener un solo tenant por ID.

Argumentos​

NombreObligatorioPropósito
[tenant-id]NoUUID del tenant. El valor predeterminado es el tenant del inicio de sesión actual.

Ejemplo​

uip admin tenants get 11111111-2222-3333-4444-555555555555
uip admin tenants get 11111111-2222-3333-4444-555555555555

Forma de datos (--json de salida)​

{
  "Code": "OmsTenantGet",
  "Data": {
    "id": "11111111-2222-3333-4444-555555555555",
    "name": "DefaultTenant",
    "color": "#1f8feb",
    "region": "UnitedStates",
    "status": "Enabled",
    "tenantUrl": "https://cloud.uipath.com/acme/DefaultTenant",
    "environment": "Production",
    "isCanaryTenant": false,
    "createdBy": "<user-guid>",
    "createdOn": "<iso-date>",
    "updatedBy": "<user-guid>",
    "updatedOn": "<iso-date>",
    "tenantServiceInstances": []
  }
}
{
  "Code": "OmsTenantGet",
  "Data": {
    "id": "11111111-2222-3333-4444-555555555555",
    "name": "DefaultTenant",
    "color": "#1f8feb",
    "region": "UnitedStates",
    "status": "Enabled",
    "tenantUrl": "https://cloud.uipath.com/acme/DefaultTenant",
    "environment": "Production",
    "isCanaryTenant": false,
    "createdBy": "<user-guid>",
    "createdOn": "<iso-date>",
    "updatedBy": "<user-guid>",
    "updatedOn": "<iso-date>",
    "tenantServiceInstances": []
  }
}

creación de tenants de administrador de uip​

Crea un tenant en la organización de la persona que llama. Asíncrono: sondea el operationId devuelto a través de organizations operation get.

Opciones​

LargoValorDescripción
--name <name>StringNombre para mostrar del tenant. Obligatorio en modo en línea.
--region <region>ENUMRegión en la que aprovisionar el tenant.
--environment <env>enumeración: Production, Staging, DevelopmentEtiqueta de entorno.
--file <path>RutaCuerpo completo CreateTenantRequestDto: necesario para los campos no expuestos en línea (services[], customProperties, color, isDefaultTenant). Mutuamente exclusivo con los marcadores en línea.

Ejemplo​

uip admin tenants create --file ./tenant.json
uip admin tenants create --file ./tenant.json

Forma de datos (--json de salida)​

{
  "Code": "OmsTenantCreated",
  "Data": { "id": "<new-tenant-guid>", "name": "<name>", "status": "Updating", "operationId": "<operation-guid>" }
}
{
  "Code": "OmsTenantCreated",
  "Data": { "id": "<new-tenant-guid>", "name": "<name>", "status": "Updating", "operationId": "<operation-guid>" }
}

actualización de tenants de administrador de UIP​

Parche los campos editables de un tenant. Asíncrono: sondeo operationId.

Argumentos​

NombreObligatorioPropósito
[tenant-id]NoUUID del tenant. El valor predeterminado es el tenant del inicio de sesión actual.

Opciones​

LargoValorDescripción
--name <name>StringNuevo nombre para mostrar.
--region <region>ENUMNueva región.
--environment <env>ENUMNueva etiqueta de entorno.
--file <path>RutaCuerpo completo TenantUpdateDto: necesario para services{}, customProperties, color. Mutuamente exclusivo con los marcadores en línea.

Ejemplo​

uip admin tenants update 11111111-2222-3333-4444-555555555555 --file ./tenant-patch.json
uip admin tenants update 11111111-2222-3333-4444-555555555555 --file ./tenant-patch.json

Forma de datos (--json de salida)​

{ "Code": "OmsTenantUpdated", "Data": { "operationId": "<operation-guid>" } }
{ "Code": "OmsTenantUpdated", "Data": { "operationId": "<operation-guid>" } }

Eliminar tenants de administrador de UIP​

Elimina temporalmente un tenant por ID (reversible a través del flujo de restauración). Asíncrono: sondeo operationId. No hay opción de eliminación definitiva.

Argumentos​

NombreObligatorioPropósito
[tenant-id]NoUUID del tenant. El valor predeterminado es el tenant del inicio de sesión actual.

Ejemplo​

uip admin tenants delete 11111111-2222-3333-4444-555555555555
uip admin tenants delete 11111111-2222-3333-4444-555555555555

Forma de datos (--json de salida)​

{ "Code": "OmsTenantDeleted", "Data": { "operationId": "<operation-guid>" } }
{ "Code": "OmsTenantDeleted", "Data": { "operationId": "<operation-guid>" } }

habilitación/deshabilitación de tenants de administración de UIP​

Habilitar o deshabilitar un tenant. Síncrono (a diferencia de create/update/delete).

Argumentos​

NombreObligatorioPropósito
[tenant-id]NoUUID del tenant. El valor predeterminado es el tenant del inicio de sesión actual.

Opciones (solo deshabilitar)​

LargoValorDescripción
--reason <text>StringRazón de texto libre registrada con la acción de deshabilitación.

Ejemplos​

uip admin tenants enable 11111111-2222-3333-4444-555555555555
uip admin tenants enable 11111111-2222-3333-4444-555555555555
uip admin tenants disable 11111111-2222-3333-4444-555555555555 --reason "scheduled maintenance"
uip admin tenants disable 11111111-2222-3333-4444-555555555555 --reason "scheduled maintenance"

Forma de datos (--json de salida)​

{ "Code": "OmsTenantEnabled", "Data": {} }
{ "Code": "OmsTenantEnabled", "Data": {} }

Code es OmsTenantDisabled para disable.

servicios de tenants de administración de UIP​

Gestiona los servicios a nivel de tenant (aprovisionamiento, estado, catálogo por región). Todos los verbos aceptan --tenant-id <guid>, por defecto el tenant del inicio de sesión actual.

lista de servicios de tenants de administración de uip​

Opciones​
LargoValorDescripción
--tenant-id <guid>GUIDTenant de destino. El valor predeterminado es iniciar sesión en el tenant.
--service <type>StringCoincidencia exacta en serviceType. Del lado del cliente.
--region <region>ENUMCoincidencia exacta en la región. Del lado del cliente.
Ejemplo​
uip admin tenants services list --tenant-id 11111111-2222-3333-4444-555555555555
uip admin tenants services list --tenant-id 11111111-2222-3333-4444-555555555555
Forma de datos (--json de salida)​
{
  "Code": "OmsTenantServicesList",
  "Data": [
    { "serviceType": "orchestrator", "region": "UnitedStates", "organizationId": "<org-guid>", "serviceInstanceSettings": {}, "licenseList": [] }
  ]
}
{
  "Code": "OmsTenantServicesList",
  "Data": [
    { "serviceType": "orchestrator", "region": "UnitedStates", "organizationId": "<org-guid>", "serviceInstanceSettings": {}, "licenseList": [] }
  ]
}

Lista de servicios de tenants de administración de UIP disponibles​

Opciones​
LargoValorObligatorioDescripción
--region <region>ENUMSíRegión cuyo catálogo de servicios consultar.
Ejemplo​
uip admin tenants services list-available --region UnitedStates
uip admin tenants services list-available --region UnitedStates
Forma de datos (--json de salida)​
{
  "Code": "OmsTenantServicesAvailable",
  "Data": [
    { "id": "<service-guid>", "name": "orchestrator", "provisioningMode": "Implicit", "supportedRegions": ["UnitedStates"], "defaultRegion": "UnitedStates", "isVisible": true, "isAlwaysProvision": false }
  ]
}
{
  "Code": "OmsTenantServicesAvailable",
  "Data": [
    { "id": "<service-guid>", "name": "orchestrator", "provisioningMode": "Implicit", "supportedRegions": ["UnitedStates"], "defaultRegion": "UnitedStates", "isVisible": true, "isAlwaysProvision": false }
  ]
}

servicios de tenants de administrador de uip añadir/eliminar​

Aprovisionar o eliminar de forma suave servicios en el nivel de tenant. Sincrónico. --service (único) y --file (múltiple, cuerpo de AddRemoveTenantServiceRequestDto: { "services": { "<type>": true|false } }) son mutuamente excluyentes; un --file para add debe tener todos los valores true, y para remove cada valor false: un valor no coincidente falla en el lado del cliente antes de la llamada.

Opciones​
LargoValorDescripción
--tenant-id <guid>GUIDTenant de destino. El valor predeterminado es iniciar sesión en el tenant.
--service <type>StringTipo de servicio único para añadir/eliminar.
--file <path>RutaCuerpo AddRemoveTenantServiceRequestDto multiservicio.
Ejemplos​
uip admin tenants services add --tenant-id 11111111-2222-3333-4444-555555555555 --service orchestrator
uip admin tenants services add --tenant-id 11111111-2222-3333-4444-555555555555 --service orchestrator
uip admin tenants services remove --tenant-id 11111111-2222-3333-4444-555555555555 --file ./remove-services.json
uip admin tenants services remove --tenant-id 11111111-2222-3333-4444-555555555555 --file ./remove-services.json
Forma de datos (--json de salida)​
{ "Code": "OmsTenantServicesAdded", "Data": {} }
{ "Code": "OmsTenantServicesAdded", "Data": {} }

Code es OmsTenantServicesRemoved para remove.

Habilitar/deshabilitar los servicios de los tenants de administración de UIP​

Habilita o deshabilita una instancia de servicio en el nivel de tenant. Sincrónico.

Opciones​
LargoValorObligatorioDescripción
--tenant-id <guid>GUIDNoTenant de destino. El valor predeterminado es iniciar sesión en el tenant.
--service <type>StringSíIdentificador de tipo de servicio, por ejemplo orchestrator.
Ejemplos​
uip admin tenants services enable --tenant-id 11111111-2222-3333-4444-555555555555 --service orchestrator
uip admin tenants services enable --tenant-id 11111111-2222-3333-4444-555555555555 --service orchestrator
uip admin tenants services disable --tenant-id 11111111-2222-3333-4444-555555555555 --service orchestrator
uip admin tenants services disable --tenant-id 11111111-2222-3333-4444-555555555555 --service orchestrator
Forma de datos (--json de salida)​
{ "Code": "OmsTenantServiceEnabled", "Data": {} }
{ "Code": "OmsTenantServiceEnabled", "Data": {} }

Code es OmsTenantServiceDisabled para disable.

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