# MSP Services

Overview

The MSP API provides comprehensive management capabilities for managing multiple MSP managed tenant accounts. This API enables you to manage tenant accounts, control administrator access, customize branding, and schedule firmware upgrades.

The API is designed for managed service providers that manage multiple customer tenant accounts and need to control access delegation, branding customization, and device management operations.

What This API Does

- MSP Tenant Management: Create, retrieve, update, and delete MSP managed tenant accounts and configuration settings
- MSP Tenant Queries: Query and retrieve MSP customer or tech partner data
- MSP Administrator Access Control: Grant or revoke MSP administrator access with role based permissions, delegation capabilities, and cross tenant access control
- MSP Tenant Activation Management: Control MSP tenant status including activation, deactivation, and temporary support team access for troubleshooting
- MSP Branding Customization: Configure custom branding for MSP tenants including logo uploads and brand settings
- MSP Firmware Upgrade Scheduling: Schedule and manage firmware upgrades across managed devices
- MSP Tenant Delegations: Establish and manage delegation relationships between MSP accounts, technology partners, and customer tenants
- MSP Administrator Delegations: Manage administrator assignments and access permissions for MSP tenant accounts
- MSP Administrator Invitations: Send email invitations to MSP administrators for tenant access and onboarding

Key Capabilities

- Multi Tenant Operations: Manage multiple isolated MSP tenant accounts with independent configurations and administrator assignments
- MSP Delegation Support: Support delegation between MSP accounts, integrators, installers, and tenant administrators
- Role Based Access: Assign MSP administrators with specific roles and privilege groups for granular access control
- MSP Tenant Management: Complete MSP tenant management from creation through deactivation and deletion
- Support Access Control: Enable or disable temporary support team access to MSP tenants for assistance
- Custom Branding: Upload and manage custom logos and branding configurations for MSP service delivery
- Scheduled Upgrades: Configure firmware upgrade schedules with recurring or one time scheduling options for MSP managed devices
- Query Capabilities: Retrieve MSP tenant data

Authentication & Authorization

This API uses bearer token authentication with role based access control. MSP administrators must have appropriate permissions to perform operations on tenant accounts and delegation relationships.


Version: V0.3.3
License: RUCKUS Cloud Privacy Policy

## Servers

RUCKUS One API host for North American region.
```
https://api.ruckus.cloud
```

RUCKUS One API host for European region.
```
https://api.eu.ruckus.cloud
```

RUCKUS One API host for Asian region.
```
https://api.asia.ruckus.cloud
```

## Download OpenAPI description

[MSP Services](https://docs.ruckus.cloud/_bundle/api/mspservice-0.3.3.yaml)

## Tenant Activation Management

Supports the activation and deactivation of a managed tenant. Control support team access for managed tenants.

### Reactivate Tenant

 - [PUT /tenantActivations/{tenantId}](https://docs.ruckus.cloud/api/mspservice-0.3.3/tenant-activation-management/reactivatetenant.md): Restore login access and enable all operations for a previously deactivated tenant.

### Deactivate Tenant

 - [DELETE /tenantActivations/{tenantId}](https://docs.ruckus.cloud/api/mspservice-0.3.3/tenant-activation-management/deactivatetenant.md): Suspend login access and disable all operations for a tenant account.

### Get Support Access Status

 - [GET /tenantActivations/supportStatus/{tenantId}](https://docs.ruckus.cloud/api/mspservice-0.3.3/tenant-activation-management/getruckussupportstatus.md): Check whether support team access is currently enabled or disabled for the tenant account.

### Enable Support Access

 - [PUT /tenantActivations/supportStatus/{tenantId}](https://docs.ruckus.cloud/api/mspservice-0.3.3/tenant-activation-management/enablesupport.md): Grant support team access to assist with tenant account issues, allowing them to troubleshoot and resolve technical problems.

### Disable Support Access

 - [DELETE /tenantActivations/supportStatus/{tenantId}](https://docs.ruckus.cloud/api/mspservice-0.3.3/tenant-activation-management/disablesupport.md): Revoke support team access to the tenant account, removing their ability to view or modify tenant settings.

## View MSP

View MSP and VAR information. Note: this group of endpoints is used to view operational data. They don't provide the means to manage configuration.

### Export End Customer Inventory

 - [POST /msps/{mspTenantId}/ecInventories/query/csvFiles](https://docs.ruckus.cloud/api/mspservice-0.3.3/view-msp/exportdeviceinventory_msp.md): Export the list of networking devices installed in our end customers venues.

## Firmware Upgrade Scheduling

Manages firmware upgrade schedules for access points and switches. Supports recurring automated upgrades and one time manual scheduling options.

### Schedule Firmware Upgrade

 - [POST /firmwareUpgradeSchedules](https://docs.ruckus.cloud/api/mspservice-0.3.3/firmware-upgrade-scheduling/setscheduleforfirmwareupgrades.md): Create or update firmware upgrade schedules with automatic or manual timing options.

## Query Inventory Information

Retrieves inventory information. These endpoints are specifically designed for viewing operational data and do not facilitate configuration management.

### Query Device Inventory Data

 - [POST /tenants/inventories/query](https://docs.ruckus.cloud/api/mspservice-0.3.3/query-inventory-information/querydeviceinventorydata.md): Retrieves customer device inventory data.

## Query Delegation Information

Retrieves delegation information. These endpoints are specifically designed for viewing operational data and do not facilitate configuration management.

### Query Delegation Data

 - [POST /delegations/query](https://docs.ruckus.cloud/api/mspservice-0.3.3/query-delegation-information/querycustomerdelegationdata.md): Retrieves customer delegation data.

## Query MSP Customer Information

Retrieves customer information. These endpoints are specifically designed for viewing operational data and do not facilitate configuration management.

### Query Tenant Accounts

 - [POST /tenants/query](https://docs.ruckus.cloud/api/mspservice-0.3.3/query-msp-customer-information/querycustomerortechpartnerdatav3.md): Retrieve a list of managed tenant accounts including customer and tech partner information.

## Tenant Delegation Management

Manages delegation relationships between service provider accounts, technology partners, installers, and tenant accounts. Supports assigning tenant accounts to technology partners and controlling organizational access permissions.

### Retrieve Tenant Delegations

 - [GET /tenants/{tenantId}/tenantDelegations](https://docs.ruckus.cloud/api/mspservice-0.3.3/tenant-delegation-management/gettenantdelegations.md): Retrieve active relationships between designated accounts and their managed tenant, including delegation status and permissions.

### Update Tenant Delegations

 - [PUT /tenants/{tenantId}/tenantDelegations](https://docs.ruckus.cloud/api/mspservice-0.3.3/tenant-delegation-management/updatetenantdelegations.md): Update active relationships between designated accounts and their managed tenant, modifying access permissions and delegation settings.

### Add Designated Tenant Accounts

 - [PATCH /tenantDelegations](https://docs.ruckus.cloud/api/mspservice-0.3.3/tenant-delegation-management/patchtenantdelegations.md): Add or update MSP-EC account relationships with multiple integrator or installer accounts, enabling them to manage designated tenants.

## Administrator Access Control

Manages administrator assignments and access control for MSP tenant accounts. Supports assigning or removing administrators, configuring role based permissions and privilege groups, and managing cross tenant administrator access.

### Get Administrator Details

 - [GET /tenants/{tenantId}/admins/{adminId}](https://docs.ruckus.cloud/api/mspservice-0.3.3/administrator-access-control/gettenantadmin.md): Retrieve detailed information for a specific administrator, including their assigned roles, permissions, and contact information.

### Assign Administrator

 - [PUT /tenants/{tenantId}/admins/{adminId}](https://docs.ruckus.cloud/api/mspservice-0.3.3/administrator-access-control/updatetenantadmin.md): Assign an administrator to the tenant account with specified roles and permissions, enabling them to manage tenant resources.

### Remove Administrator

 - [DELETE /tenants/{tenantId}/admins/{adminId}](https://docs.ruckus.cloud/api/mspservice-0.3.3/administrator-access-control/deletetenantadmin.md): Remove an administrator's access from the tenant account, revoking all their roles and permissions.

### Retrieve Admin Delegations

 - [GET /tenants/{tenantId}/adminDelegations](https://docs.ruckus.cloud/api/mspservice-0.3.3/administrator-access-control/getdelegatedadmins.md): Retrieve active relationships between designated administrators and their assigned tenants.

### Update Admin Delegations

 - [PUT /tenants/{tenantId}/adminDelegations](https://docs.ruckus.cloud/api/mspservice-0.3.3/administrator-access-control/updatedelegatedadmins.md): Update active relationships between designated administrators and their managed tenant.

### Assign Administrators

 - [PATCH /adminDelegations](https://docs.ruckus.cloud/api/mspservice-0.3.3/administrator-access-control/patchadmindelegations.md): Add designated administrators to manage assigned tenants.

### List Tenant Administrators

 - [GET /tenants/{tenantId}/admins](https://docs.ruckus.cloud/api/mspservice-0.3.3/administrator-access-control/gettenantadmins.md): Retrieve a complete list of all administrators assigned to the tenant account, including their roles and permissions.

## Tenant Account Management

Manages tenant accounts including creation, retrieval, updates, and deletion. Supports sending email invitations to tenant administrators and managing account configurations.

### Retrieve Managed Tenant

 - [GET /tenants/{tenantId}](https://docs.ruckus.cloud/api/mspservice-0.3.3/tenant-account-management/gettenantaccount.md): Retrieve detailed information for a specific managed tenant account.

### Update Managed Tenant

 - [PUT /tenants/{tenantId}](https://docs.ruckus.cloud/api/mspservice-0.3.3/tenant-account-management/updatemanagedtenant.md): Update configuration settings for an existing managed tenant account.

### Remove Managed Tenant

 - [DELETE /tenants/{tenantId}](https://docs.ruckus.cloud/api/mspservice-0.3.3/tenant-account-management/deletetenant.md): Delete a managed tenant account and all associated data.

### Patch Tenant Account

 - [PATCH /tenants/{tenantId}](https://docs.ruckus.cloud/api/mspservice-0.3.3/tenant-account-management/patchmanagedtenant.md): Patch MSP-EC data.

### Send Administrator Invitation

 - [PUT /tenants/{tenantId}/invitations](https://docs.ruckus.cloud/api/mspservice-0.3.3/tenant-account-management/sendinvitationemail.md): Send or resend an email invitation to an administrator, granting them access credentials and login instructions for the tenant account.

### Create Managed Tenant

 - [POST /tenants](https://docs.ruckus.cloud/api/mspservice-0.3.3/tenant-account-management/createtenantv2.md): Create a new managed tenant account with specified configuration settings.

### Get Consolidated API Download URL

 - [GET /tenants/files/apiSpecs](https://docs.ruckus.cloud/api/mspservice-0.3.3/tenant-account-management/getconsolidatedapiurl.md): Get signed URL for downloading the consolidated API zip file.

## Brand Customization

Manages branding customization for managed service provider accounts. Supports uploading logo images, configuring contact information and portal settings such as custom domain names and support URLs.

### Retrieve Brand Details

 - [GET /brandings](https://docs.ruckus.cloud/api/mspservice-0.3.3/brand-customization/getbrandinfo.md): Retrieve MSP account branding, contact information, and portal settings.

### Update Brand Details

 - [PUT /brandings](https://docs.ruckus.cloud/api/mspservice-0.3.3/brand-customization/updatebrandinfo.md): Update MSP account branding, contact information, and portal settings.

### Create Brand Details

 - [POST /brandings](https://docs.ruckus.cloud/api/mspservice-0.3.3/brand-customization/addbrandinfo.md): Create MSP account branding, contact information, and portal settings.

### Upload Brand Logos

 - [POST /logoFiles](https://docs.ruckus.cloud/api/mspservice-0.3.3/brand-customization/uploadbrandlogofileurl.md): Upload custom logo image files for branding customization, supports JPEG, PNG, and SVG formats.

### Retrieve Brand Logo File

 - [GET /logoFiles/{fileId}](https://docs.ruckus.cloud/api/mspservice-0.3.3/brand-customization/getbrandlogofiledownloadurl.md): Retrieve download URLs and metadata for uploaded brand logo image files by file identifier.

## batch-operations-controller

### Move Devices

 - [POST /tenants/venues/devices/batches](https://docs.ruckus.cloud/api/mspservice-0.3.3/batch-operations-controller/batchoperation.md): Move Devices

### Get batch requests by batch

 - [POST /batchOps/{batchOpId}/batches/{batchId}/batchRequests/query](https://docs.ruckus.cloud/api/mspservice-0.3.3/batch-operations-controller/getbatchrequestsbybatchid.md): POST /batchOps/{batchOpId}/batches/{batchId}/batchRequests/query. Returns paged batch requests for the given batch. Validates batch belongs to batchOpId and tenant. Request body: BatchRequestsCtx.

### Get batch requests by batch operation

 - [POST /batchOps/{batchOpId}/batchRequests/query](https://docs.ruckus.cloud/api/mspservice-0.3.3/batch-operations-controller/getbatchrequestsbybatchopid.md): POST /batchOps/{batchOpId}/batchRequests/query. Returns paged batch requests for all batches under this operation. Request body: BatchRequestsCtx (pageable, sort, status, etc.).

### Update batch request status

 - [PATCH /batchOps/{batchOpId}/batches/{batchId}/batchRequests](https://docs.ruckus.cloud/api/mspservice-0.3.3/batch-operations-controller/updatebatchrequeststatus.md): PATCH /batchOps/{batchOpId}/batches/{batchId}/batchRequests. Updates selected batch requests with the fields in 'updates' (status, apiErrorMsg; more fields in future). Only provided fields are applied. All batch request IDs must belong to the given batch.

