{"id":21651935,"url":"https://github.com/poweraruba/powerarubacl","last_synced_at":"2026-03-10T11:31:51.850Z","repository":{"id":47065319,"uuid":"226025968","full_name":"PowerAruba/PowerArubaCL","owner":"PowerAruba","description":"PowerShell module to managed Aruba Central (Cloud)","archived":false,"fork":false,"pushed_at":"2021-09-15T10:47:05.000Z","size":505,"stargazers_count":4,"open_issues_count":1,"forks_count":8,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-11T20:42:14.925Z","etag":null,"topics":["aruba","aruba-central","arubacloud","arubanetworks","central","hpe"],"latest_commit_sha":null,"homepage":"","language":"PowerShell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PowerAruba.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-12-05T05:49:16.000Z","updated_at":"2025-02-19T15:16:23.000Z","dependencies_parsed_at":"2022-09-11T07:11:28.413Z","dependency_job_id":null,"html_url":"https://github.com/PowerAruba/PowerArubaCL","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/PowerAruba/PowerArubaCL","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PowerAruba%2FPowerArubaCL","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PowerAruba%2FPowerArubaCL/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PowerAruba%2FPowerArubaCL/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PowerAruba%2FPowerArubaCL/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PowerAruba","download_url":"https://codeload.github.com/PowerAruba/PowerArubaCL/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PowerAruba%2FPowerArubaCL/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30332284,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-10T05:25:20.737Z","status":"ssl_error","status_checked_at":"2026-03-10T05:25:17.430Z","response_time":106,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aruba","aruba-central","arubacloud","arubanetworks","central","hpe"],"created_at":"2024-11-25T07:50:19.437Z","updated_at":"2026-03-10T11:31:51.827Z","avatar_url":"https://github.com/PowerAruba.png","language":"PowerShell","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n# PowerArubaCL\n\nThis is a Powershell module for manage Aruba Central\n\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"https://raw.githubusercontent.com/PowerAruba/PowerArubaCL/master/Medias/PowerArubaCL.png\" width=\"250\" height=\"250\" /\u003e\n\u003c/p\u003e\n\nWith this module (version 0.2.0) you can manage:\n\n- [Inventory](#Inventory) (Add/Get Devices, Add/Get/Remove Archived Devices, Get Stats)\n\nThere is some extra feature\n- [Invoke API](#Invoke-API)\n- [Multi Connection](#MultiConnection)\n- [Refresh Token](#Refresh-Token)\n\nMore functionality will be added later.\n\nTested with Aruba Central ( Region EU-1 )\n\n# Usage\n\nAll resource management functions are available with the Powershell verbs GET, ADD, SET, REMOVE.  \n\u003c!--For example, you can manage NAS (NetworkDevice) with the following commands:\n- `Get-ArubaCPNetworkDevice`\n- `Add-ArubaCPNetworkDevice`\n- `Set-ArubaCPNetworkDevice`\n- `Remove-ArubaCPNetworkDevice`\n--\u003e\n# Requirements\n\n- Powershell 5 or 6.x/7.x (Core) (If possible get the latest version)\n- An Aruba Central Account\n\n# Instructions\n### Install the module\n```powershell\n# Automated installation (Powershell 5 and later):\n    Install-Module PowerArubaCL\n\n# Import the module\n    Import-Module PowerArubaCL\n\n# Get commands in the module\n    Get-Command -Module PowerArubaCL\n\n# Get help\n    Get-Help Add-ArubaCLInventoryDevices -Full\n```\n\n# Examples\n\n### Connecting to Aruba Central using API\n\nThe first thing to do is to get API client_id/client_secret and customer_id\n\nGo on WebGUI of your Aruba Central, on API Gateway (in the Account Home Page)\n![](./Medias/api_gateway_accounthome.png)  \nGo on `My Apps \u0026 Tokens` or `System Apps \u0026 Tokens` (for Admin Account) and click on `Add Apps \u0026 Tokens`\n\n![](./Medias/api_gateway_new_token.png)  \nCreate a `New Token`\n- Application: an application name (for example PowerArubaCL)\n- Redirect URI: empty (it is optional)\n- Application: Network Operations\n\nClick on `Generate`\n\n![](./Medias/api_gateway_client_id_secret.png)  \nnow copy `Client ID` and `Client Secret`, you will need for connect\n\nGo now on the configuration for get the customer id\nit is available on the top right \n![](./Medias/central_customer_id.png)  \nCopy `Customer ID` value\n\n\nAfter connect to Aruba Central with the command `Connect-ArubaCL` :\n\n```powershell\n# Connect to the Aruba Central using Token\n    Connect-ArubaCL -region EU-1 -client_id MyClientId -client_secret MyClientSecret -customer_id MyCustomerId\n\n    PowerShell credential request\n    Please enter administrative credential for your Aruba Central\n    User: cl@poweraruba.net\n    Password for user cl@poweraruba.net: **********\n    Name                           Value\n    ----                           -----\n    session                        Microsoft.PowerShell.Commands.WebRequestSession\n    invokeParams                   {}\n    server                         eu-apigw.central.arubanetworks.com\n    access_token                   565kubYCyDEEaJ4s3zs40yvgtxGTG4Lv\n    headers                        {Content-type, Accept, Authorization}\n```\n\n### Inventory\n\nYou can get Inventory Devices\n\n```powershell\n# get IAP Devices\n    Get-ArubaCLInventoryDevices -type IAP\n\n    aruba_part_no : AP-505-RW\n    customer_id   : 987b69ccdfb03124feeb4a847b9f54d2\n    customer_name : PowerArubaCL\n    device_type   : iap\n    imei          : \n    macaddr       : B8:3A:5A:1C:22:1C\n    model         : R2H28A\n    serial        : CNJNK0N7PP\n    services      : {}\n    tier_type     :\n    ...\n\n# Add Devices (need to known Mac Address and Serial Number)\n    Add-ArubaCLInventoryDevices -mac FC:7F:F2:88:11:22 -serial CNLBAD3C5DT\n\n    success\n\n# Get Device Stats\n    Get-ArubaCLInventoryDevicesStats -type IAP -service dm\n\n    licensed total\n    -------- -----\n          44    99\n\n# Get Archived Devices\n    Get-ArubaCLInventoryDevicesArchive\n\n    aruba_part_no : AP-505-RW\n    customer_id   : 987b69ccdfb03124feeb4a847b9f54d2\n    customer_name : PowerArubaCL\n    device_type   : iap\n    imei          :\n    macaddr       : B8:3A:5A:1C:22:1C\n    model         : R2H28A\n    serial        : CNJNK0N7PP\n\n\n# Add Devices to Archive (need to known Serial Number)\n    Add-ArubaCLInventoryDevicesArchive -serial CNJNK0N7PP\n\n    success\n\n# Remove Devices to Archive (need to known Serial Number)\n    Remove-ArubaCLInventoryDevicesArchive -serial CNJNK0N7PP\n\n    success\n\n```\n\n\n### Invoke API\nfor example to get \n\n```powershell\n# get list of Group\n\n    Invoke-ArubaCLRestMethod -uri \"configuration/v2/groups?limit=20\u0026offset=0\"\n\n    data                           total\n    ----                           -----\n    {MyPowerArubaCL-Group}             1\n```\n\n\nto get API uri, go to Aruba Central Swagger (https://eu-apigw.central.arubanetworks.com/swagger/central)\n(need to be connected)\n\n### MultiConnection\n\nit is possible to connect on same times to Aruba Central account\nYou need to use -connection parameter to cmdlet\n\nFor example to get Devices for 2 different Aruba Central account\n\n```powershell\n# Connect to first Aruba Central Account\n    $cl1 = Connect-ArubaCL -Region EU-1 -DefaultConnection:$false\n\n#DefaultConnection set to false is not mandatory but only don't set the connection info on global variable\n\n# Connect to second Aruba Central Account\n    $cl2 = Connect-ArubaCL -Region EU-1 -DefaultConnection:$false\n\n# Get number of Devices of first Aruba Central Account\n    (Get-ArubaCLInventoryDevices -type IAP -connection $cl1).count\n\n    80\n\n# Get number of Devices of Second Aruba Central Account\n    (Get-ArubaCLInventoryDevices -type IAP -connection $cl2).count\n\n    90\n\n#Each cmdlet can use -connection parameter\n```\n\n### Refresh-Token\nBy default, the (access) token is valid for 7200 seconds (2 hours), PowerArubaCL store the refresh_token (valid for 14days ?)\nand automatically update (access) token when it is expired (or it will be expire on less of 15 minutes).\nIf you need to renew token before you can use _Update-ArubaCLRefreshToken_ cmdlet\n\n\n### Limit\nFollowing API call, it is possible to have a limit return result.\nFor Example Get-ArubaCLInventoryDevices return by default only the 50th first devices.\nif there is more of 50 devices, you get a warning,\n```powershell\n    (Get-ArubaCLInventoryDevices -type IAP).count\n    WARNING: There is extra items use -limit parameter to display\n    50\n```\n\nit is possible to specific the limit and the offset\n\n```powershell\n    (Get-ArubaCLInventoryDevices -type IAP -limit 1000).count\n    365\n```\n\nFor `Invoke-ArubaCLRestMethod`, you can also use limit and offset parameter\n\n### Disconnecting\n\n```powershell\n# Disconnect from Aruba Central\n    Disconnect-ArubaCL\n```\n\n\n# How to contribute\n\nContribution and feature requests are more than welcome. Please use the following methods:\n\n  * For bugs and [issues](https://github.com/PowerAruba/PowerArubaCL/issues), please use the [issues](https://github.com/PowerAruba/PowerArubaCL/issues) register with details of the problem.\n  * For Feature Requests, please use the [issues](https://github.com/PowerAruba/PowerArubaCL/issues) register with details of what's required.\n  * For code contribution (bug fixes, or feature request), please request fork [PowerArubaCL](https://github.com/PowerAruba/PowerArubaCL/fork), create a feature/fix branch, add tests if needed then submit a pull request.\n\n# Contact\n\nCurrently, [@alagoutte](#author) started this project and will keep maintaining it. Reach out to me via [Twitter](#author), Email (see top of file) or the [issues](https://github.com/PowerAruba/PowerArubaCL/issues) Page here on GitHub. If you want to contribute, also get in touch with me.\n\n\n# List of available command\n```powershell\nAdd-ArubaCLInventoryDevices\nAdd-ArubaCLInventoryDevicesArchive\nConnect-ArubaCL\nDisconnect-ArubaCL\nFormat-ArubaCLMacAddress\nGet-ArubaCLInventoryDevices\nGet-ArubaCLInventoryDevicesArchive\nGet-ArubaCLInventoryDevicesStats\nGet-ArubaCLTokenStatus\nInvoke-ArubaCLRestMethod\nRemove-ArubaCLInventoryDevicesArchive\nSet-ArubaCLCipherSSL\nShow-ArubaCLException\nUpdate-ArubaCLRefreshToken\n```\n\n# Author\n\n**Alexis La Goutte**\n- \u003chttps://github.com/alagoutte\u003e\n- \u003chttps://twitter.com/alagoutte\u003e\n\n# Contributors\n\n- Cédric Moreau\n- cmcknz77\n- Zak\n\nSort by name (*git shortlog -s*)\n\n# Special Thanks\n\n- Warren F. for his [blog post](http://ramblingcookiemonster.github.io/Building-A-PowerShell-Module/) 'Building a Powershell module'\n- Erwan Quelin for help about Powershell\n- François-Xavier Cat (@lazywinadmin) for [Format/Clean MAC Address](https://github.com/lazywinadmin/PowerShell/blob/master/TOOL-Clean-MacAddress/Clean-MacAddress.ps1)\n\n# License\n\nCopyright 2021 Alexis La Goutte and the community.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpoweraruba%2Fpowerarubacl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpoweraruba%2Fpowerarubacl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpoweraruba%2Fpowerarubacl/lists"}