Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Applies to: Partner Center | Partner Center operated by 21Vianet
This document shows how indirect providers can create Sandbox Indirect Resellers and enable end-to-end testing using APIs.
Prerequisites
- Credentials as described in Partner Center Authentication. This scenario supports authentication with App + User credentials.
- You can have up to five Sandbox indirect resellers at a time per Sandbox indirect provider.
- You can use the same PartnerID to create multiple Sandbox indirect reseller accounts, as long as the country/region for the PartnerID and the Sandbox indirect reseller are the same. If you have a test PartnerID available, you can use it, or you can get a list of PartnerIDs through our Yammer channel. If you don't have access to Yammer, Yammer prompts you to request access.
- Only 75 customers are allowed per Sandbox indirect provider.
CSP Indirect Provider
Sandbox indirect providers can create a Reseller Sandbox account through the Partner Center. This account helps indirect providers perform the following actions for indirect resellers in Sandbox through Partner Center:
- CSP indirect providers can create a CSP Reseller Sandbox account through their own Tier 2 Sandbox account in Partner Center.
- CSP indirect resellers can explore views of indirect resellers (for example, view customers by indirect providers).
- CSP indirect resellers can manage the customer account using granular delegated admin permissions.
- CSP indirect providers can invite CSP indirect resellers.
- CSP indirect providers can delete a CSP indirect reseller Sandbox account through their own Tier 2 Sandbox account in Partner Center.
- As a Sandbox indirect provider, when you delete the relationship with a Sandbox indirect reseller, check if the indirect reseller has any other relationship with other providers. If so, only the relationship with that specific indirect provider is removed.
- If it's the only relationship for the indirect reseller, the indirect reseller is deleted.
- CSP indirect providers can delete a CSP indirect reseller.
This Sandbox-only feature gives Sandbox indirect providers the ability to delete Sandbox indirect resellers.
Prerequisites for deleting a Sandbox indirect reseller:
- Suspend the subscriptions for each customer of Sandbox indirect reseller.
- Delete all customers of the indirect reseller.
Production capabilities | Sandbox capabilities |
---|---|
Sells through the indirect reseller to the end customer | Supported |
Owns all sales, billing, provisioning, and management/support | Supported |
Request a partnership with the resellers | Supported |
View customers by Reseller | Supported |
Add new customers by resellers | Supported |
Invite customers | Customer relationship request not supported in Sandbox |
Sandbox Indirect Provider can select Sandbox IR (PartnerID) as the Partner of Record (POR) while placing the transaction | Supported |
Not supported in production | Sandbox Indirect Provider can create Sandbox Indirect Reseller |
Sandbox PartnerID should be entered, the production PartnerID doesn't work | Not supported in production |
Not supported in production | Sandbox Indirect Provider can delete Sandbox Indirect Reseller |
Sandbox Indirect Provider – Create Sandbox Indirect Reseller
This feature is only available in the Sandbox and gives Sandbox Indirect Providers an ability to create Sandbox Indirect Resellers.
- Limit of five Sandbox Indirect Resellers allowed per Sandbox Indirect Provider
- Sandbox Indirect Providers can create customers with
associatedPartnerId
of Sandbox Indirect Reseller - Enter the PartnerID of a specific region while creating a Sandbox Indirect Reseller. Multiple Sandbox Indirect Resellers can be created with the same Sandbox PartnerID.
- Only 75 customers are allowed per Sandbox Indirect Provider
Sandbox Indirect Resellers – View customers
- Sandbox Indirect Resellers can view the list of sandbox customers by Sandbox Indirect providers.
- Sandbox Indirect Resellers can manage the customer account by using delegated administrator permissions.
Create a Sandbox Indirect Reseller using Partner Center
Sign in to Partner Center with your Tier 1 or Tier 2 enrolled tenant, then select the Customers workspace.
Select Add Reseller Sandbox from the Indirect Reseller tab. You're taken to the Account info page.
Provide all of the required company and contact information on the Account info page.
Select Next from the bottom of page.
Create a new Entra tenant to use as a sandbox tenant by opening a support ticket.
Select Associate tenant from the bottom of the Review page. You're redirected to the sign-in screen.
Sign in with global administrator credentials of the new tenant. Don't sign in with the Tier 1 enrolled tenant credentials.
Select Done from the Confirmation page.
Your new tenant is now enrolled as an indirect Reseller Sandbox.
Sign out and sign in again to Partner Center using the global administrator credentials for the new tenant. Explore the capabilities you have with the indirect Reseller Sandbox.
Create Sandbox Indirect Reseller through API (deprecated on August 2024)
Note
This API is no longer available. To create a sandbox Indirect Reseller using Partner Center, follow the instructions in the previous section.
REST request
Request syntax
Method | Request URI |
---|---|
POST | {baseURL}/v1//sandboxIndirectReseller |
Request headers
- This API is idempotent (it doesn't yield a different result if you call it multiple times).
- A request ID and correlation ID are required.
- For more information, see Partner Center REST headers.
Request body
This table describes the required properties in the request body.
Property | Type | Description |
---|---|---|
partnerId | string | The PartnerID for the IR in specific region |
tenant | Dictionary<string, string> | Collection of basic information that defines an account to be created |
legalBusinessProfile | Dictionary<string, string> | Collection of information that represents the legal business entity such as contact, address, and name |
organizationProfileLanguage | Dictionary<string, string> | The organization language identifier |
This table describes the required properties in the tenant attribute.
Property | Type | Description |
---|---|---|
domainPrefix | String; unique | Domain for the tenant account |
name | string | Friendly name of the tenant |
displayName | string | Display name for the account |
adminUserName | string | User name for the account for login |
adminfirstname | string | First Name for the admin user |
adminlastname | string | Last Name for the admin user |
adminAlernateEmail | string | email for the admin user |
country | string | Country/region of the account |
culture | string | Language preference for account |
This table describes the required properties in the legalBusinessProfile attribute.
Property | Type | Description |
---|---|---|
companyName | string | Company name for legal entity |
address | Dictionary<string, string> | Address of the legal entity ___location |
primaryContact | Dictionary<string, string> | Contact details of the company |
culture | string | Language preferred by the company |
Request Example
{
"mpnId": "6363276",
"tenant": {
"domainPrefix": "TipIRIntTest705",
"name": "TipIRIntTest705",
"displayName": "TipIRIntTest705",
"adminUserName": "admin",
"adminFirstName": "TipIRIntTest705",
"adminLastName": "TipIRIntTest705",
"adminAlternateEmail": "TipIRIntTest705@test.com",
"country": "US",
"culture": "en-us"
},
"legalBusinessProfile": {
"companyName": "TipIRIntTest705",
"address": {
"country": "FR",
"city": "Issy-les-Moulineaux",
"state": "",
"addressLine1": "39-41 quai du Président Roosevelt",
"addressLine2": "",
"postalCode": "92130"
},
"primaryContact": {
"firstName": "Sandbox",
"lastName": "Scenario",
"email": "Sandbox.Scenario@test.com",
"phoneNumber": "1234567890"
},
"culture": "en-US"
},
"organizationProfileLanguage": "en"
}
REST response
If successful, this method returns the populated Sandbox IR resource in the response body.
{
"accountId": "6f94b119-793c-44c7-862b-c327c9057eab",
"mpnId": "6363276",
"tenant": {
"id": "6f94b119-793c-44c7-862b-c327c9057eab",
"adminUserAccount": "admin@TipIRIntTest705.onmicrosoft.com",
"password": "\*\*\*\*\*\*”
},
"agreementSignature": {
"id": "30ac23e7-e200-42cf-a5bc-dd9148cdc632",
"accountId": "6f94b119-793c-44c7-862b-c327c9057eab",
"agreementId": "1e18c5b2-e42a-4b84-82c8-d0155aa94c6e",
"agreementType": "ValueAddedReseller",
"dateSigned": "2021-02-23T18:10:14.8461137Z",
"signedByFirstName": "Test123@PLAMUATT2NetNewTip.onmicrosoft.com",
"signedByUserPrincipalName": "Test123@PLAMUATT2NetNewTip.onmicrosoft.com",
"signedByUserObjectId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
"signedByUserTenantId": "bbbbcccc-1111-dddd-2222-eeee3333fff",
"attributes": {
"objectType": "AgreementSignatureResponse"
}
},
"partnerRelationship": {
"id": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
"name": "PLAMUATT2NetNew",
"relationshipType": "is\_indirect\_reseller\_of",
"state": "Active",
"mpnId": "6363276",
"attributes": {
"objectType": "PartnerRelationshipResponse"
}
}
}