Bagikan melalui


Menjadwalkan perubahan untuk langganan perdagangan baru menggunakan API Pusat Mitra

Berlaku Untuk: Pusat Mitra

Artikel ini menjelaskan bagaimana Anda dapat menggunakan API Pusat Mitra untuk menjadwalkan perubahan untuk langganan perdagangan baru, yang hanya terjadi pada perpanjangan. API ini mendukung langganan perangkat lunak dan berbasis lisensi perdagangan baru.

Catatan

Pengalaman perdagangan baru untuk layanan berbasis lisensi mencakup banyak kemampuan baru dan tersedia untuk semua Penyedia Solusi Cloud (CSP). Untuk informasi selengkapnya, lihat gambaran umum pengalaman perdagangan baru.

Membuat perubahan terjadwal memungkinkan Anda mengubah langganan, secara otomatis, saat perpanjangan berikutnya terjadi. Dengan menjadwalkan perubahan, Anda dapat memilih untuk menambah atau mengurangi jumlah lisensi, mengubah jangka waktu dan frekuensi penagihan, dan bahkan memilih untuk meningkatkan SKU. Perubahan penjadwalan memungkinkan Anda melakukan modifikasi pada langganan Anda pada perpanjangan, bukan segera selama jangka waktu saat ini.

Penting

Jika Anda membuat perubahan jangka menengah (segera) sebelum tanggal perpanjangan, semua perubahan terjadwal yang sebelumnya dijadwalkan terjadi saat perpanjangan akan dihapus.

Prasyarat

  • Kredensial seperti yang dijelaskan dalam autentikasi Pusat Mitra. Skenario ini mendukung autentikasi dengan kredensial Aplikasi mandiri dan Aplikasi+Pengguna.

  • ID pelanggan (customer-tenant-id). Jika Anda tidak mengetahui ID pelanggan, Anda dapat mencarinya di Pusat Mitra dengan memilih ruang kerja Pelanggan , lalu pelanggan dari daftar pelanggan, lalu Akun. Pada halaman Akun pelanggan, cari ID Microsoft di bagian Info Akun Pelanggan. ID Microsoft sama dengan ID pelanggan (customer-tenant-id).

  • ID langganan.

  • Perpanjangan otomatis diaktifkan pada langganan.

Metode Pusat Mitra

Untuk menjadwalkan perubahan langganan di Pusat Mitra:

  1. Pilih pelanggan.

  2. Pilih langganan yang ingin Anda jadwalkan perubahannya.

  3. Aktifkan Perpanjangan otomatis.

  4. Pilih Kelola perpanjangan.

  5. Lakukan modifikasi pada langganan untuk dilakukan pada perpanjangan.

  6. Pilih Oke untuk menutup panel samping.

  7. pilih Kirim untuk menyimpan perubahan.

Catatan

Perpanjangan diproses setelah hari terakhir dalam jangka waktu, mulai pukul 12.00 UTC pada hari berikutnya. Perpanjangan diproses dalam antrean dan mungkin memerlukan waktu hingga 24 jam untuk diproses.

C#

Untuk menjadwalkan perubahan langganan pelanggan:

  1. Dapatkan langganan berdasarkan ID.
  2. Dapatkan kelayakan transisi untuk jenis kelayakan transisi terjadwal.
  3. Buat objek ScheduledNextTermInstructions dan atur ke properti langganan.
  4. Panggil metode Patch() untuk memperbarui langganan dengan perubahan terjadwal.
var selectedSubscription = subscriptionOperations.Get();
selectedSubscription.ScheduledNextTermInstructions = new ScheduledNextTermInstructions
{
    Product = new ProductTerm
    {
        ProductId = changeToProductId,
        SkuId = changeToSkuId,
        AvailabilityId = changeToAvailabilityId,
        BillingCycle = changeToBillingCycle,
        TermDuration = changeToTermDuration,
    },
    Quantity = changeToQuantity,
    customTermEndDate = DateTime,
};
var updatedSubscription = subscriptionOperations.Patch(selectedSubscription);

Untuk menjadwalkan perubahan langganan pelanggan, di mana perubahan terjadwal yang diinginkan adalah ke produk yang berbeda:

  1. Dapatkan langganan berdasarkan ID.
  2. Dapatkan kelayakan transisi untuk jenis kelayakan transisi terjadwal.
  3. Panggil metode Patch() untuk memperbarui langganan dengan perubahan terjadwal.

Permintaan REST

Minta sintaks

Metode URI Permintaan
PATCH {baseURL}/v1/customers/{customer-tenant-id}/subscriptions/{subscription-id} HTTP/1.1

Parameter URI

Tabel ini mencantumkan parameter kueri yang diperlukan untuk memanggil API.

Nama Tipe Wajib Deskripsi
customer-tenant-id Guid Y GUID yang sesuai dengan pelanggan.
id langganan Guid Y GUID yang sesuai dengan langganan.

Header permintaan

Untuk informasi selengkapnya, lihat Header REST Pusat Mitra.

Isi permintaan

Sumber daya Langganan lengkap diperlukan dalam isi permintaan, dengan properti yang scheduledNextTermInstructions ditentukan. Untuk menjadwalkan perubahan langganan Anda, pastikan properti AutoRenewEnabled diatur ke true.

Untuk ID ketersediaan pada akhir penjualan dengan konversi (EndofSaleWithConversions) menawarkan:

  1. GetTransitionEligibility untuk mengembalikan CatalogItemID.

    a. Pastikan untuk mengatur jenis kelayakan Terjadwal jika tidak, defaultnya segera.

  2. Gunakan CatalogItemID untuk kemudian mengekstrak availabilityID.

Catatan

Jika Anda menggunakan GET Availabilities untuk menentukan ketersediaan untuk Instruksi ScheduledNextTerm dan jika semua persyaratan bersifat status EOS, Anda akan menerima daftar kosong. Cara terbaik untuk menentukan jalur yang valid adalah dengan memanggil GetTransitionEligibilty API untuk mengembalikan opsi yang valid.

Bidang Jenis Wajib Deskripsi
scheduledNextTermInstructions object Y Menentukan instruksi istilah berikutnya untuk langganan. Properti berisi product objek dan quantity bidang .

Contoh permintaan

PATCH https://api.partnercenter.microsoft.com/v1/customers/<customer-tenant-id>/subscriptions/<subscription-id> HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: ca7c39f7-1a80-43bc-90d8-ee7d1cad3831
MS-CorrelationId: ec8f62e5-1d92-47e9-8d5d-1924af105f2c
If-Match: <etag>
Content-Type: application/json
Content-Length: 1029
Expect: 100-continue
Connection: Keep-Alive

{
    "id": "6e7aa601-629e-461b-8933-0898c3cc3c7c",
    "offerId": "DZH318Z0BXWC:0001:DZH318Z0BMJX",
    "offerName": "offer Name",
    "friendlyName": "friendly Name",
    "quantity": 1,
    "customTermEndDate": "2019-01-09T00:21:45.9263727",
    "unitType": "License(s)",
    "hasPurchasableAddons": false,
    "creationDate": "2019-01-04T01:00:12.6647304Z",
    "effectiveStartDate": "2019-01-09T00:21:45.9263727+00:00",
    "commitmentEndDate": "2019-02-08T00:21:45.9263727+00:00",
    "status": "active",
    "autoRenewEnabled": true,
    "scheduledNextTermInstructions": { 
      "product": { 
         "productId":  "DG7GMGF0DVSV", 
         "skuId":  "000P", 
         "availabilityId":  "DG7GMGF0F3Q9", 
         "billingCycle":  "Annual", 
         "termDuration":  "P3Y",
         "promotionId": "39NFJQT1PFPJ:000H:39NFJQT1Q5DK"
        }, 
      "quantity":  1 
      "customTermEndDate" : "2019-01-09T00:21:45.9263727",
     },  // original value = null 
    "isTrial": false,
    "billingType": "license",
    "billingCycle": "monthly",
    "termDuration": "P1M",
    "refundOptions": [{
        "type": "Full",
        "expiresAt": "2019-01-10T00:21:45.9263727+00:00"
    }],
    "isMicrosoftProduct": false,
    "partnerId": "",
    "contractType": "subscription",
    "publisherName": "publisher Name",
    "orderId": "ImxjLNL4_fOc-2KoyOxGTZcrlIquzls11",
    "attributes": {"objectType": "Subscription"},
}

Respons REST

Jika permintaan berhasil, metode ini mengembalikan properti sumber daya Langganan yang diperbarui dalam isi respons.

Kode kesalahan dan keberhasilan respons

Setiap respons dilengkapi dengan kode status HTTP yang menunjukkan keberhasilan atau kegagalan, dan informasi penelusuran kesalahan lainnya. Gunakan alat pelacakan jaringan untuk membaca kode ini, jenis kesalahan, dan parameter lainnya. Untuk daftar lengkapnya, lihat Kode Kesalahan.

Contoh tanggapan

HTTP/1.1 200 OK
Content-Length: 1322
Content-Type: application/json; charset=utf-8
MS-RequestId: ca7c39f7-1a80-43bc-90d8-ee7d1cad3831
MS-CorrelationId: ec8f62e5-1d92-47e9-8d5d-1924af105f2c
X-Locale: en-US

{
    "id": "6e7aa601-629e-461b-8933-0898c3cc3c7c",
    "offerId": "DZH318Z0BXWC:0001:DZH318Z0BMJX",
    "offerName": "offer Name",
    "friendlyName": "friendly Name",
    "quantity": 1,
    "customTermEndDate": "2019-01-09T00:21:45.9263727",
    "unitType": "License(s)",
    "hasPurchasableAddons": false,
    "creationDate": "2019-01-04T01:00:12.6647304Z",
    "effectiveStartDate": "2019-01-09T00:21:45.9263727+00:00",
    "commitmentEndDate": "2019-02-08T00:21:45.9263727+00:00",
    "status": "active",
    "autoRenewEnabled": true,
    "scheduledNextTermInstructions": { 
      "product": { 
         "productId":  "DG7GMGF0DVSV", 
         "skuId":  "000P", 
         "availabilityId":  "DG7GMGF0F3Q9", 
         "billingCycle":  "Annual", 
         "termDuration":  "P3Y",
         "promotionId": "39NFJQT1PFPJ:000H:39NFJQT1Q5DK"
        }, 
      "quantity":  1 
      "customTermEndDate": "2019-01-09T00:21:45.9263727",
     },  // original value = null 
    "isTrial": false,
    "billingType": "license",
    "billingCycle": "monthly",
    "termDuration": "P1M",
    "refundOptions": [{
        "type": "Full",
        "expiresAt": "2019-01-10T00:21:45.9263727+00:00"
    }],
    "isMicrosoftProduct": false,
    "partnerId": "",
    "contractType": "subscription",
    "publisherName": "publisher Name",
    "orderId": "ImxjLNL4_fOc-2KoyOxGTZcrlIquzls11",
    "attributes": {"objectType": "Subscription"},
}