Przejście do subskrypcji
Dotyczy: Centrum partnerskie | Centrum partnerskie obsługiwane przez firmę 21Vianet | Centrum partnerskie dla chmury firmy Microsoft dla instytucji rządowych USA
Uaktualnia subskrypcję klienta do określonej subskrypcji docelowej.
Wymagania wstępne
Poświadczenia zgodnie z opisem w temacie Uwierzytelnianie w Centrum partnerskim. Ten scenariusz obsługuje uwierzytelnianie zarówno przy użyciu autonomicznych poświadczeń aplikacji, jak i aplikacji i użytkownika.
Identyfikator klienta (
customer-tenant-id
). Jeśli nie znasz identyfikatora klienta, możesz wyszukać go w Centrum partnerskim, wybierając obszar roboczy Klienci , a następnie klienta z listy klienta, a następnie pozycję Konto. Na stronie Konto klienta poszukaj identyfikatora Microsoft w sekcji Informacje o koncie klienta. Identyfikator Microsoft jest taki sam jak identyfikator klienta (customer-tenant-id
).Dwa identyfikatory subskrypcji, jeden dla początkowej subskrypcji i jeden dla subskrypcji docelowej.
Role GDAP
Będziesz potrzebować co najmniej jednej z następujących ról GDAP:
- Czytelnik katalogu lub czytelnik globalny (tylko uaktualnienie)
- Składnik zapisywania katalogów (uaktualnianie z transferem licencji)
C#
Aby uaktualnić subskrypcję klienta, najpierw uzyskaj subskrypcję klienta. Następnie uzyskaj listę uaktualnień dla tej subskrypcji, wywołując właściwość Upgrades, a następnie metody Get() lub GetAsync(). Wybierz docelowe uaktualnienie z tej listy uaktualnień, a następnie wywołaj właściwość Upgrades początkowej subskrypcji, a następnie metodę Create().
// IAggregatePartner partnerOperations;
// string selectedCustomerId;
// string subscriptionIdForUpgrade;
// Upgrade targetOffer;
UpgradeResult upgradeResult = partnerOperations.Customers.ById(selectedCustomerId).Subscriptions.ById(subscriptionIdForUpgrade).Upgrades.Create(targetOffer);
Przykład: aplikacja testowa konsoli. Projekt: PartnerSDK.FeatureSamples , klasa: UpgradeSubscription.cs
Żądanie REST
Składnia żądania
Metoda | Identyfikator URI żądania |
---|---|
GET | {baseURL}/v1/customers/{customer-tenant-id}/subscriptions/{id-for-subscription}/upgrades HTTP/1.1 |
POST | {baseURL}/v1/customers/{customer-tenant-id}/subscriptions/{id-for-target}/upgrades HTTP/1.1 |
Parametr identyfikatora URI
Użyj następującego parametru zapytania, aby przenieść subskrypcję.
Imię i nazwisko/nazwa | Type | Wymagana | Opis |
---|---|---|---|
identyfikator dzierżawy klienta | Identyfikator guid | Y | Identyfikator GUID odpowiadający klientowi. |
id-for-subscription | Identyfikator guid | Y | Identyfikator GUID odpowiadający początkowej subskrypcji. |
id-for-target | Identyfikator guid | Y | Identyfikator GUID odpowiadający subskrypcji docelowej. |
Nagłówki żądań
Aby uzyskać więcej informacji, zobacz Nagłówki REST Centrum partnerskiego.
Treść żądania
None
Przykład żądania
GET https://api.partnercenter.microsoft.com/v1/customers/{customer-tenant-id}/subscriptions/{id-for-subscription}/upgrades HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: 18752a69-1aa1-4ef7-8f9d-eb3681b2d70a
MS-CorrelationId: 81b08ffe-4cf8-49cd-82db-5c2fb0a8e132
X-Locale: en-US
POST https://api.partnercenter.microsoft.com/v1/customers/{customer-tenant-id}/subscriptions/{id-for-target}/upgrades HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: 750fd5ea-904b-4c3e-b476-60d0feacab0d
MS-CorrelationId: 81b08ffe-4cf8-49cd-82db-5c2fb0a8e132
X-Locale: en-US
Content-Type: application/json
Content-Length: 1098
Expect: 100-continue
{
"TargetOffer":{
"Id":"796B6B5F-613C-4E24-A17C-EBA730D49C02",
"Name":"Office 365 Enterprise E3",
"Description":"The best plan for businesses that need full productivity, communication and collaboration tools with the familiar Office suite, including Office Online.",
"MinimumQuantity":1,
"MaximumQuantity":10000000,
"Rank":61,
"Uri":"/3c95518e-8c37-41e3-9627-0ca339200f53/Offers/796B6B5F-613C-4E24-A17C-EBA730D49C02",
"Locale":"en-us",
"Country":"US",
"Category":{
"Id":"Enterprise_Key",
"Name":"Enterprise",
"Rank":20,
"Locale":"en-us",
"Country":"US",
"Attributes":{
"ObjectType":"OfferCategory"
}
},
"PrerequisiteOffers":[],
"IsAddOn":false,
"IsAvailableForPurchase":true,
"Billing":"license",
"IsAutoRenewable":true,
"Product":{
"Id":"6fd2c87f-b296-42f0-b197-1e91e994b900",
"Name":"Office 365 Enterprise E3",
"Unit":"Licenses"
},
"UnitType":"Licenses",
"Links":{
"LearnMore":{
"Uri":"http://g.microsoftonline.com/0BXPS00en/1015",
"Method":"GET",
"Headers":[]
}
}
"Attributes":{
"ObjectType":"Offer"
}
},
"UpgradeType":1,
"IsEligible":true,
"Quantity":1,
"UpgradeErrors":[],
"Attributes":{
"ObjectType":"Upgrade"
}
}
Odpowiedź REST
Jeśli ta metoda powiedzie się, ta metoda zwraca zasób wyniku uaktualnienia w treści odpowiedzi.
Kody powodzenia i błędów odpowiedzi
Każda odpowiedź zawiera kod stanu HTTP, który wskazuje powodzenie lub niepowodzenie i dodatkowe informacje o debugowaniu. Użyj narzędzia do śledzenia sieci, aby odczytać ten kod, typ błędu i dodatkowe parametry. Aby uzyskać pełną listę, zobacz Kody błędów.
Przykład odpowiedzi
HTTP/1.1 200 OK
Content-Length: 138
Content-Type: application/json
MS-CorrelationId: 81b08ffe-4cf8-49cd-82db-5c2fb0a8e132
MS-RequestId: 18752a69-1aa1-4ef7-8f9d-eb3681b2d70a
Date: Fri, 29 Jan 2016 20:42:26 GMT
{
"totalCount": 1,
"items": [{
"targetOffer": {
"id": "91FD106F-4B2C-4938-95AC-F54F74E9A239",
"name": "Office 365 Enterprise E1",
"description": "For businesses that need communication and collaboration tools and the ability to read and do lightweight editing of documents with Office Online.",
"minimumQuantity": 1,
"maximumQuantity": 10000000,
"rank": 48,
"uri": "/3c95518e-8c37-41e3-9627-0ca339200f53/Offers/91FD106F-4B2C-4938-95AC-F54F74E9A239",
"locale": "en-us",
"country": "US",
"category": {
"id": "Enterprise_Key",
"name": "Enterprise",
"rank": 20,
"locale": "en-us",
"country": "US",
"attributes": {
"objectType": "OfferCategory"
}
},
"prerequisiteOffers": [],
"isAddOn": false,
"isAvailableForPurchase": true,
"billing": "license",
"isAutoRenewable": true,
"isInternal": false,
"conversionTargetOffers": [],
"partnerQualifications": ["none"],
"product": {
"id": "18181a46-0d4e-45cd-891e-60aabd171b4e",
"name": "Office 365 Enterprise E1",
"unit": "Licenses"
},
"unitType": "Licenses",
"links": {
"learnMore": {
"uri": "http://g.microsoftonline.com/0BXPS00en/1013",
"method": "GET",
"headers": []
},
"self": {
"uri": "/offers/91FD106F-4B2C-4938-95AC-F54F74E9A239?country=US",
"method": "GET",
"headers": []
}
},
"attributes": {
"objectType": "Offer"
}
},
"upgradeType": "upgrade_only",
"isEligible": false,
"quantity": 1,
"upgradeErrors": [{
"code": 2,
"description": "Subscription cannot be upgraded because the source subscription state is not active. Additional Details contains the current source subscription state.",
"attributes": {
"objectType": "UpgradeError"
}
}],
"attributes": {
"objectType": "Upgrade"
}
}],
"attributes": {
"objectType": "Collection"
}
}
HTTP/1.1 200 OK
Content-Length: 448
Content-Type: application/json
MS-CorrelationId: 81b08ffe-4cf8-49cd-82db-5c2fb0a8e132
MS-RequestId: 750fd5ea-904b-4c3e-b476-60d0feacab0d
MS-CV: RnK86LBbDkWP/w2R.0
MS-ServerId: 102031201
Date: Fri, 29 Jan 2016 20:44:21 GMT
{
"sourceSubscriptionId":"896a2862-67e2-4f3d-bb3f-c50c42b5fad8",
"targetSubscriptionId":"2add8a55-454a-4ae5-a4c9-5107dc6e9768",
"upgradeType":1,
"upgradeErrors":[],
"licenseErrors":[],
"attributes":{
"objectType":"UpgradeResult"
}
}