API Penyerapan Produk untuk SaaS
API Penyerapan Produk adalah API modern yang menyatukan semua API pengiriman yang ada di semua produk marketplace komersial. Lihat API Penyerapan Produk untuk detail tentang cara memulai.
Artikel ini menyediakan panduan tentang cara menggunakan API khusus untuk jenis penawaran SaaS.
Mengambil konfigurasi sumber daya yang ada
Sebelum memperbarui sumber daya yang ada, penting untuk terlebih dahulu mengambilnya untuk memastikan bahwa Anda memiliki konfigurasi terbarunya. Ada beberapa cara untuk mengambil sumber daya melalui panggilan GET. Lihat bagian berikut, Metode 1, untuk mengambil semua sumber daya dalam produk tertentu dalam satu panggilan API.
Metode 1: Pohon sumber daya
GET resource-tree/<product-durableID>?$version=<schema-version>
Anda dapat mengambil semua konfigurasi sumber daya dalam produk tertentu dengan menggunakan jenis sumber daya "pohon sumber daya" bersama dengan ID tahan lama produk. Versi skema yang Anda berikan akan digunakan sebagai versi maks yang didukung untuk setiap sumber daya yang berlaku dari produk yang diminta.
Catatan
Jika Anda tidak tahu ID tahan lama produk, Anda dapat mengambil sumber daya produk terlebih dahulu dengan menggunakan ID eksternal produk sebagai gantinya dan menjalankan GET product?externalID=<product-externalID>&$version=<product-schema-version>
. Permintaan ini memanfaatkan parameter string kueri, yang dirinci dalam Metode 3. Respons akan mencakup ID tahan lama produk, yang dapat Anda gunakan untuk permintaan di masa mendatang.
Secara default, saat Anda menjalankan panggilan GET menggunakan "pohon sumber daya", Anda mendapatkan kembali versi draf sumber daya Anda. Namun, dengan meneruskan parameter kueri "targetType", Anda dapat menentukan target yang diinginkan untuk mengambil data "pratinjau" atau "langsung". Dalam contoh berikut, panggilan GET mengembalikan konfigurasi lingkungan pratinjau untuk semua sumber daya di bawah produk "12345678-abcd-efgh-1234-12345678901".
Contoh panggilan GET:
GET https://graph.microsoft.com/rp/product-ingestion/resource-tree/product/12345678-abcd-efgh-1234-12345678901?targetType="preview"&$version=2022-03-01-preview5
Respons sampel:
{
"$schema": "https://schema.mp.microsoft.com/schema/resource-tree/2022-03-01-preview2",
"root": "product/12345678-abcd-efgh-1234-12345678901",
"target": {
"targetType": "preview"
},
"resources": [
{
"$schema": "https://schema.mp.microsoft.com/schema/product/2022-03-01-preview3",
"id": "product/12345678-abcd-efgh-1234-12345678901",
"identity": {
"externalID": "product_external_id_example"
},
"type": "softwareAsAService",
"alias": "product_example"
},
{
"$schema": "https://schema.mp.microsoft.com/schema/commercial-marketplace-setup/2022-03-01-preview2",
"id": "commercial-marketplace-setup/12345678-abcd-efgh-1234-12345678901",
"product": "product/12345678-abcd-efgh-1234-12345678901",
"sellThroughMicrosoft": true,
"useMicrosoftLicenseManagementService": false
},
{
"$schema": "https://schema.mp.microsoft.com/schema/plan/2022-03-01-preview2",
"id": "plan/12345678-abcd-efgh-1234-12345678901/98756328-04e9-55ae-9403-52b6c971a956
...
},
// The response would include all existing resources within this product.
{
...
}]
}
Status siklus hidup sumber daya
Ada berbagai tindakan yang dapat Anda ambil peta tersebut ke status siklus hidup sumber daya. Tidak semua sumber daya memiliki status siklus hidup dan tidak semua status siklus hidup didukung oleh semua sumber daya. Periksa skema sumber daya untuk keberadaan lifecycleState properti untuk melihat apakah sumber daya memiliki status siklus hidup dan nilai mana yang didukung. Berikut adalah beberapa contoh untuk mengatur status siklus hidup Sumber Daya untuk jenis penawaran SaaS.
Tidak digunakan lagi
Penghentian menghapus sumber daya dari marketplace komersial. Untuk menghentikannya, atur properti "lifecycleState" ke "tidak digunakan lagi" pada sumber daya yang mendukungnya. Berbagai tingkat penghentian didukung tergantung pada jenis produk. Misalnya, untuk produk SaaS, Anda dapat menghentikan rencana, atau seluruh produk. Saat menghentikan rencana, "lifecycleState" harus diubah dan perubahan kemudian harus dipublikasikan ke pratinjau lalu ditayangkan agar penghentian diterapkan. Ini berbeda dari penghentian tingkat produk di mana pengaturan ini secara otomatis memulai penghentian di lingkungan langsung. Untuk memulihkan sumber daya yang tidak digunakan lagi nantinya, lihat status siklus hidup "generallyAvailable".
Rencanakan permintaan sampel penghentian:
Dalam contoh berikut, paket dalam produk SaaS diatur untuk dihentikan. Ingat bahwa untuk menerapkan perubahan ini, Anda nantinya dapat menerbitkan menggunakan sumber daya pengiriman.
POST https://graph.microsoft.com/rp/product-ingestion/configure?$version=2022-03-01-preview2
{
"$schema": "https://schema.mp.microsoft.com/schema/configure/2022-03-01-preview2"
"resources": [
{
"$schema": "https://schema.mp.microsoft.com/schema/plan/2022-03-01-preview2",
"id": "plan/9f8af57f-ab07-461b-8404-50e10e5e80fb/7e70b11f-809e-4c45-ae2f-1fb3ceaca33b",
"product": "product/9f8af57f-ab07-461b-8404-50e10e5e80fb",
"identity": { "externalID": "basic" },
"alias": "basic plan"
"lifecycleState": "deprecated"
}
]
}
Permintaan sampel penghentian produk:
Dalam contoh berikut, pengiriman langsung produk diatur untuk dihentikan. Setelah perubahan ini diterapkan, perubahan secara otomatis dipublikasikan untuk hidup agar berlaku.
POST https://graph.microsoft.com/rp/product-ingestion/configure?$version=2022-03-01-preview2
{
"$schema": "https://schema.mp.microsoft.com/schema/configure/2022-03-01-preview2"
"resources": [
{
"$schema": "https://schema.mp.microsoft.com/schema/submission/2022-03-01-preview2 ",
"id": "submission/9f8af57f-ab07-461b-8404-50e10e5e80fb/1152921515689848683",
"product": "product/9f8af57f-ab07-461b-8404-50e10e5e80fb",
"target": {
"targetType": "live"
},
"lifecycleState": "deprecated"
}
]
}
Tersedia secara umum
umumnyaAvailable adalah status siklus hidup default untuk semua sumber daya. Setelah sumber daya tidak digunakan lagi, Anda dapat memulihkannya dengan mengubah properti lifecycleState kembali ke umumnyaAvailable. Untuk memulihkan produk yang tidak digunakan lagi, Anda harus menerbitkan produk sekali lagi untuk pratinjau lalu hidup.
Rencanakan permintaan sampel pemulihan:
Dalam contoh berikut, rencana dimaksudkan untuk dipulihkan. Untuk menerapkan perubahan ini, Anda nantinya perlu menerbitkan semua cara untuk hidup menggunakan sumber daya pengiriman.
POST https://graph.microsoft.com/rp/product-ingestion/configure?$version=2022-03-01-preview2
{
"$schema": "https://schema.mp.microsoft.com/schema/configure/2022-03-01-preview2"
"resources": [
{
"$schema": "https://schema.mp.microsoft.com/schema/plan/2022-03-01-preview2",
"id": "plan/9f8af57f-ab07-461b-8404-50e10e5e80fb/7e70b11f-809e-4c45-ae2f-1fb3ceaca33b",
"product": "product/9f8af57f-ab07-461b-8404-50e10e5e80fb",
"identity": { "externalID": "basic" },
"alias": "basic plan"
"lifecycleState": "generallyAvailable"
}
]
}