Skip to content

MSP Services (V0.3.3)

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.

Download OpenAPI description
Languages
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

Tenant Activation Management

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

Operations

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.

Operations

Firmware Upgrade Scheduling

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

Operations

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.

Operations

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.

Operations

Tenant Account Management

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

Operations

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.

Operations

Deprecated

Operations

Query Customer Data for MSP-ECDeprecated

Request

Retrieves customer details for managed service providers end customers. This method will be removed no sooner than 08/31/2026. The following URL POST /tenants/query can be used for this content.

Query
delegationstring
Bodyrequired
multiSortFieldsArray of strings

List of fields to sort by with their sort order for multiple field sorting.

matchFieldsArray of objects(MatchFieldDto)

List of field filters to match documents where fields equal specific values.

rangeFilterobject(RangeFilterDto)

Range filter to match documents where field values fall within specified numeric ranges.

rangeDateFilterobject(RangeFilterDto)

Date range filter to match documents within a specific date or time range.

mustNotMatchFieldArray of objects(MustNotMatchFieldDto)

List of field filters to exclude documents where fields equal specific values.

sortFieldstring

Primary field name to sort the query results by.

sortOrderstring

Sort order for the primary sort field (ASC for ascending, DESC for descending).

pageinteger(int32)
pageByDateobject

Indicates whether pagination should be based on date fields instead of standard pagination.

pageSizeinteger(int32)

Maximum number of results to return per page.

fieldsArray of stringsunique

List of specific fields to include in the query results for projection.

search_afterArray of strings

Pagination cursor for retrieving results after a specific point in the result set.

searchTargetFieldsArray of strings

List of fields to search within when performing text based searches.

searchStringstring

Text string to search for across the specified target fields.

filtersobject

Additional custom filters to apply to the query for advanced filtering scenarios.

mustHaveFieldsArray of strings

List of fields that must exist in documents for them to be included in results.

mustNotHaveFieldsArray of strings

List of fields that must not exist in documents for them to be included in results.

termFieldobject(TermFieldDto)

Field name for term based filtering to match specific term values.

termsobject

List of term values to match against the specified term field.

existsstring

Field name to check for existence in documents.

groupBystring

Field name to group query results by for aggregation purposes.

{ "multiSortFields": [ "string" ], "matchFields": [ {} ], "rangeFilter": { "field": "string", "gte": 0, "lte": 0, "lt": 0 }, "rangeDateFilter": { "field": "string", "gte": 0, "lte": 0, "lt": 0 }, "mustNotMatchField": [ {} ], "sortField": "string", "sortOrder": "string", "page": 0, "pageByDate": { "value": "string", "key": "string" }, "pageSize": 0, "fields": [ "string" ], "search_after": [ "string" ], "searchTargetFields": [ "string" ], "searchString": "string", "filters": { "property1": [], "property2": [] }, "mustHaveFields": [ "string" ], "mustNotHaveFields": [ "string" ], "termField": { "field": "string", "value": "string" }, "terms": { "property1": [], "property2": [] }, "exists": "string", "groupBy": "string" }

Responses

Successful operation.

Body
fieldsArray of stringsunique

List of MSP-EC account objects returned in the query response.

totalCountinteger(int64)

Total number of MSP-EC accounts matching the query criteria across all pages.

pageinteger(int32)
objectIdstring

Unique identifier for the query response object.

dataArray of objects(MspEcDto)
errorMessagestring

Error message if the query execution failed, null if successful.

subsequentQueriesArray of objects(SubsequentQuery)

Pagination links for retrieving subsequent pages of query results.

Response
{ "fields": [ "string" ], "totalCount": 0, "page": 0, "objectId": "string", "data": [ {} ], "errorMessage": "string", "subsequentQueries": [ {} ] }

List Managed TenantsDeprecated

Request

Retrieve a list of all managed tenant accounts. This method will be removed no sooner than 08/31/2026. The following URL POST /tenants/query can be used for this content.

No request payload

Responses

Ok

Bodyapplication/jsonArray [
msp_labelstring

Label identifying the parent MSP.

Example: "msp-label"
namestring

The name of MSP-EC account.

Example: "Acme Sales"
street_addressstring

The street address of MSP-EC account.

Example: 350
statestring

The state of MSP-EC account.

Example: "CA"
countrystring

The country of MSP-EC account.

Example: "US"
postal_codestring

The postal code of MSP-EC account.

Example: 95089
phone_numberstring

The phone number of MSP-EC account.

Example: "650-123-4567"
fax_numberstring

The fax number of MSP-EC account.

Example: "650-123-9999"
citystring

The city of MSP-EC account.

Example: "Sunnyvale"
mapping_urlstring

The map URL of MSP-EC account.

Example: "https//map.gogle.com/zsdweews"
service_effective_datestring

The effective date of MSP-EC account.

Example: "2019-09-14 01:12:51Z"
service_expiration_datestring

The expiration date of MSP-EC account.

Example: "2020-09-14 01:12:51Z"
is_activestring

Active state of MSP-EC account.

Example: true
tenant_idstring

Tenant ID.

Example: "6173ca160495421c95be47b42b349067"
parent_tenant_idstring

Parent tenant ID.

Example: "6173ca160495421c95be47b42b349067"
tenant_typestring

The tenant type of the MSP EC administrator.

Example: "MSP, MSP_INTEGRATOR, MSP_INSTALLER"
account_idstring

Account ID.

Example: "_53997fe0-dffb-4bac-bcc1-e21c689a320f_kodzLWdS"
tierstring

Service tier of the account.

Example: "_53997fe0-dffb-4bac-bcc1-e21c689a320f_kodzLWdS"
logo_urlstring

URL to access the MSP customer account's logo file.

privacyFeaturesArray of objects(PrivacyFeatureResponse)unique

Privacy features for the account.

]
Response
application/json
[ { "msp_label": "msp-label", "name": "Acme Sales", "street_address": 350, "state": "CA", "country": "US", "postal_code": 95089, "phone_number": "650-123-4567", "fax_number": "650-123-9999", "city": "Sunnyvale", "mapping_url": "https//map.gogle.com/zsdweews", "service_effective_date": "2019-09-14 01:12:51Z", "service_expiration_date": "2020-09-14 01:12:51Z", "is_active": true, "tenant_id": "6173ca160495421c95be47b42b349067", "parent_tenant_id": "6173ca160495421c95be47b42b349067", "tenant_type": "MSP, MSP_INTEGRATOR, MSP_INSTALLER", "account_id": "_53997fe0-dffb-4bac-bcc1-e21c689a320f_kodzLWdS", "tier": "_53997fe0-dffb-4bac-bcc1-e21c689a320f_kodzLWdS", "logo_url": "string", "privacyFeatures": [] } ]

Create Managed TenantDeprecated

Request

Create a new managed tenant account with specified configuration settings. This method will be removed no sooner than 08/31/2026. The following URL POST /tenants can be used for this content.

Bodyrequired
account_idstring[ 0 .. 255 ] characters
namestring[ 2 .. 255 ] characters

The name of MSP-EC account.

Example: "Acme Sales"
street_addressstring[ 0 .. 255 ] characters

The MSP-EC mailing address' street name and number.

Example: 350
statestring[ 0 .. 255 ] characters

The MSP-EC mailing address' geographical state.

Example: "CA"
countrystring[ 0 .. 255 ] characters

The MSP-EC mailing address' country.

Example: "US"
postal_codestring[ 0 .. 255 ] characters

The MSP-EC mailing address' postal code.

Example: 95089
phone_numberstring[ 0 .. 255 ] characters

The MSP-EC's phone number.

Example: "650-123-4567"
fax_numberstring[ 0 .. 255 ] characters

The MSP-EC's fax number.

Example: "650-123-9999"
citystring[ 0 .. 255 ] characters

The MSP-EC mailing address' city.

Example: "Sunnyvale"
mapping_urlstring[ 0 .. 255 ] characters

The map URL corresponding to the MSP-EC's mailing address.

Example: "https//map.gogle.com/zsdweews"
service_effective_datestring

The date when the MSP-EC's service started.

Example: "2019-09-14 01:12:51Z"
service_expiration_datestring

The date when the MSP-EC's service terminates/terminated.

Example: "2020-09-14 01:12:51Z"
admin_emailstring[ 0 .. 255 ] characters

The email address of the first MSP-EC administrator added to the account by the MSP.

Example: "john.wang@sampledomain.com"
admin_firstnamestring[ 0 .. 64 ] characters

The first name of the first MSP-EC administrator added to the account by the MSP.

Example: "John"
admin_lastnamestring[ 0 .. 64 ] characters

The last name of the first MSP-EC administrator added to the account by the MSP.

Example: "Wang"
admin_rolestring[ 0 .. 255 ] characters

The admin role of the first MSP-EC administrator.

Example: "PRIME_ADMIN,ADMIN,READ_ONLY"
tenant_typestring[ 0 .. 25 ] characters

The tenant type of the MSP EC administrator.

Example: "MSP, MSP_INTEGRATOR, MSP_INSTALLER"
licensesobject(License)

License information for the account.

delegationsArray of objects(EcDelegation)unique

Grant or revoke access to tenants to manage the customer.

admin_delegationsArray of objects(MspAdminRole)unique

Grant or revoke access to admins to manage the customer.

tierstring

Service tier information for MSP-EC.

Example: "GOLD, PLATINUM"
{ "account_id": "string", "name": "Acme Sales", "street_address": 350, "state": "CA", "country": "US", "postal_code": 95089, "phone_number": "650-123-4567", "fax_number": "650-123-9999", "city": "Sunnyvale", "mapping_url": "https//map.gogle.com/zsdweews", "service_effective_date": "2019-09-14 01:12:51Z", "service_expiration_date": "2020-09-14 01:12:51Z", "admin_email": "john.wang@sampledomain.com", "admin_firstname": "John", "admin_lastname": "Wang", "admin_role": "PRIME_ADMIN,ADMIN,READ_ONLY", "tenant_type": "MSP, MSP_INTEGRATOR, MSP_INSTALLER", "licenses": { "trialAction": "ACTIVATE", "assignments": [], "subscription_start_date": "string", "subscription_end_date": "string" }, "delegations": [ {} ], "admin_delegations": [ {} ], "tier": "GOLD, PLATINUM" }

Responses

Accepted

Body
requestIdstringrequired

Unique identifier for tracking the API request.

tenantIdstring

Tenant identifier associated with the request.

Response
{ "requestId": "string", "tenantId": "string" }