Create an MSP Partner

This procedure outlines how to create an MSP partner account.

Note

Note

The attributes in this topic are a representative sample of what is a available. For a complete list of attributes, elements, and resources, see the main documentation of the REST API. The documentation resides in a user interface that is accessed using this URL: http://api.extremenetworks.com/extremecloud/rest_api/index.html

To create a new MSP partner:

  1. Log in to the REST API server (api.ezcloudx.com) using MSP Power Admin privileges. You must also forward the credentials with each API call.
  2. Verify that the partner does not already exist by checking your list of current partner using the GET method:
    GET HTTP://ipAddress/v1/msppartners
    Example: Response
    [ {
      "custId" : "MspPartner-id-hcA0LpP5WfsDWs1p",
      "id" : null,
      "accountName" : "msp-partner-01",
      "country" : null,
      "timeZone" : null,
      "mspContact" : {
        "custId" : null,
        "id" : null,
        "contactEmail" : "msp-partner-01@test.com",
        "contactName" : "msp-partner-01",
        "contactPhoneNumber" : "1234567890"
      }
    } ]
  3. Create the new partner using the POST method:
    POST HTTP://ipAddress/v1/msppartners

    When you POST or PUT data to the REST API, at minimum set the Content-Type header to application/json. However, you should generally specify two headers when you post the log in request.

    Example:
    • content-type: application/json ;charset=UTF-8
      
    • accept: application/json, text/plain, */*
    Any of the following Accept headers are allowed with the Content-Type header request header:
    • accept: application/json
    • accept-encoding: gzip, deflate, br
    • accept-language: en-US,en;q=0.8,und;q=0.6
    Click to expand in new window

    Request Attributes

    Attribute Data Type Description
    accountName String The user-defined account name of the MSP tenant. Validation: Not null and the length must range from 1 to 64.
    entitlements array of MSPDeviceEntitlementElements This list contains the devices and the associated entitlement IDs and hardware serial numbers that the MSP partner will manage. The list can be empty during creation and can be updated at any time using the UI or REST API. The device and entitlement IDs must exist and be assigned to the MSP in order for this API call to be able to assign them to a partner.
    entitlementId String The unique identifier of the entitlement being applied. Valid character set: Alphanumeric and special characters, except semi-colon, colon, and ampersand.
    serialNumber String The unique identifier of the instance of hardware to which this entitlement applies. Valid character set: Alphanumeric and special characters, except semi-colon, colon, and ampersand.
    mspContact MSPContactElement The contact details of the MSP partner. Every MSP and MSP partner is required to have a contact name,phone number, and email address.
    contactEmail String The email address of the MSP for business notifications and for service alerts. Validation: A valid email address.
    contactName String The contact person for the MSP. Validation: It must be within the range of 1 - 128 characters. Allows alphanumeric and special characters, except semi-colon, colon, and ampersand.
    contactPhoneNumber String The phone number of the MSP for business notifications and for service alerts. Validation: None
    timeZone String The timezone of the MSP tenant location. Validation: A valid timezone.
    tenants Array of strings The list of associated tenants.
    userId String The first power administrator user ID, it must be an email address and must be unique across all of ExtremeCloud. Validation: The user ID must be a not null and non-empty string (email ID) between 1 and 128 characters long. The string will have 63 characters for the local part (the account/name) and 64 for the domain, the @ sign will be counted extra so that sums to 128. Example: {63}@{64}. Valid character set: Alphanumeric and special characters, except semi-colon, colon, and ampersand.

Example: POST Request

{
    "accountName":"msp-partner-01",
    "mspContact":{"contactEmail":"msp-partner-01@test.com","contactName":"msp-partner-01","contactPhoneNumber":"22222222"},
    "tenants":[],
    "entitlements":[],
    "userId":"msp-partner-01@test.com"
}

Example: Response


{
  "custId" : "Msp-tenantid-Nc5YXfsVtOKdMmsj",
  "id" : null,
  "accountName" : "msp-partner-01",
  "mspContact" : {
    "custId" : null,
    "id" : null,
    "contactEmail" : "msp-partner-01@test.com",
    "contactName" : "msp-partner-01",
    "contactPhoneNumber" : "22222222"
  },
  "userId" : "msp-partner-01@test.com",
  "tenants" : [ ],
  "entitlements" : [ ]
}

Example: Error

{
  "errors" : [ {
    "errorMessage" : "The phone number entered is invalid. Limits: maximum 15 digits.",
    "resource" : "MSPPartnerElement.mspContact.contactPhoneNumber",
    "errorCode" : 422,
    "messageKey" : "exolcore.restapi.elements.MSPContactElement.contactPhoneNumber.isValid",
    "substParams" : [ ],
    "invalidValue" : "222222222222222222"
  } ]
}