Interfejs API pozyskiwania produktów dla kontenerów
Interfejs API pozyskiwania produktów to zmodernizowany interfejs API, który łączy wszystkie istniejące interfejsy API przesyłania we wszystkich produktach platformy handlowej. Aby uzyskać szczegółowe informacje na temat rozpoczynania pracy, zapoznaj się z tematem Interfejs API pozyskiwania produktów.
Ten artykuł zawiera wskazówki dotyczące używania interfejsów API przeznaczonych specjalnie dla kontenerów.
Pobieranie istniejących konfiguracji zasobów
Pobierz wszystkie zasoby w ramach określonego produktu w jednym wywołaniu interfejsu API.
GET resource-tree/<product-durableID>?$version=<schema-version>
Wszystkie konfiguracje zasobów w określonym produkcie można pobrać przy użyciu typu zasobu "drzewo zasobów" wraz z trwałym identyfikatorem produktu. Udostępniana wersja schematu jest używana jako maksymalna obsługiwana wersja dla każdego z odpowiednich zasobów żądanego produktu.
Uwaga
Jeśli nie znasz trwałego identyfikatora produktu, możesz najpierw pobrać zasób produktu przy użyciu identyfikatora zewnętrznego produktu i uruchomić go. Aby dowiedzieć się więcej, zobacz Product API: Method 1: resource tree (Interfejs API produktu: metoda 1: drzewo zasobów).
Przykładowe wywołanie GET:
Przykładowa odpowiedź:
{
"$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": "azureContainer",
"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
},
{
"$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.
{
...
}]
}
Synchronizowanie prywatnych odbiorców
W przypadku produktu na żywo aktualizacje dla prywatnych odbiorców w wersji roboczej, wersji zapoznawczej i środowiskach na żywo mogą być wykonywane jednocześnie bez konieczności publikowania. Grupę odbiorców prywatnych można zsynchronizować przy użyciu zasobu "price-and-availability-update-private-audiences", określając odbiorców, które chcesz dodać lub usunąć z określonego planu. Spowoduje to zsynchronizowanie wersji roboczej, wersji zapoznawczej i środowisk na żywo, aby mieć te same prywatne wartości odbiorców. Nie musisz podawać zasobu przesyłania podczas synchronizowania odbiorców prywatnych.
Aby edytować grupy odbiorców wersji roboczych, użyj zasobu "price-and-availability-plan" i właściwości "privateAudiences". Konieczne będzie przejście przez zwykły przepływ publikowania dla wartości, które mają być ustawione w wersji zapoznawczej i na żywo.
Ważne
Jeśli produkt obsługuje więcej niż jeden typ identyfikatora w celu skonfigurowania odbiorców prywatnych (na przykład identyfikatorów dzierżawy i identyfikatorów subskrypcji), należy wykonać pełną publikację, jeśli po raz pierwszy podaj nowy typ identyfikatora. W tym przypadku nie można zsynchronizować odbiorców prywatnych.
Przykładowe żądanie synchronizacji konfiguracji odbiorców prywatnych:
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/price-and-availability-update-private-audiences/2022-03-01-preview3",
"product": "product/12345678-abcd-efgh-1234-12345678901", // product durable ID
"plan": "plan/12345678-abcd-efgh-1234-12345678901/7e70b11f-809e-4c45-ae2f-1fb3ceaca33b", //plan durable ID
"privateAudiences":
{
"add ":
[
{
"type": "tenant",
"id": " c0cab000-5c00-2ae9-acbe-f5f0bb264498 ",
"label": "test 1"
}
],
"remove ":
[
{
"type": "tenant",
"id": " d1cab000-6c06-4ae9-acbe-b5f0bb264498 ",
"label": "test 2"
}
]
}
}
]
}
Konfigurowanie właściwości
Zdefiniuj kategorie i branże dotyczące produktu kontenera, wersji aplikacji i umów prawnych. Pamiętaj, aby podać pełne i dokładne informacje o produkcie w zasobie Właściwości, aby były wyświetlane odpowiednio i oferowane dla odpowiedniego zestawu klientów. Aby dowiedzieć się więcej, zobacz Kategorie usługi Appsource.
Przykładowa treść żądania konfigurując właściwości:
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/property/2022-03-01-preview5",
"id": "property/a8b48be1-a630-41b5-b5a5-c2a9f7789922/public/main",
"product": "product/a8b48be1-a630-41b5-b5a5-c2a9f7789922",
"kind": "azureContainer",
"termsConditions": "standardMicrosoft",
"categories": {
"containers": [
"container-apps",
"container-images"
]
}
}
]
}
Konfigurowanie listy
Informacje podane za pośrednictwem ofert zasobów są wyświetlane w sklepach online platformy handlowej firmy Microsoft. Obejmuje to opisy produktu, zrzuty ekranu i zasoby marketingowe.
Przykładowa treść żądania konfigurowania listy:
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/listing/2022-03-01-preview5",
"id": "listing/6d50c7bd-eb19-4d4c-b2f0-beb14aee084b/public/main/default/en-us",
"product": "product/6d50c7bd-eb19-4d4c-b2f0-beb14aee084b",
"kind": "azureContainer",
"title": "ContainerCM0815",
"description": "<div>This offer is in the early stages of development and not for general public consumption. Use is restricted to a limited audience, and has no commercial purpose beyond the testing for which it is intended.</div>",
"searchResultSummary": "Container product",
"shortDescription": "This offer is in the early stages of development and not for general public consumption",
"privacyPolicyLink": "https://www.company.com/privacy",
"generalLinks": [
{
"displayText": "Product link",
"link": "https://www.company.com/mkt",
}
],
"globalSupportWebsite": "https://testprivacyurl.com",
"governmentSupportWebsite": "https://testprivacyurl.com",
"supportContact": {
"name": "Support",
"email": "support@company.com",
"phone": "4255555555"
},
"engineeringContact": {
"name": "Engineering",
"email": "john@company.com",
"phone": "4255555555"
},
"cloudSolutionProviderContact": {
"name": "CSP",
"email": "csp@company.com",
"phone": "4255555555"
},
"languageID": "en-us"
},
{
"$schema": "https://schema.mp.microsoft.com/schema/listing-asset/2022-03-01-preview5",
"product": "product/6d50c7bd-eb19-4d4c-b2f0-beb14aee084b",
"kind": "azure",
"listing": "listing/6d50c7bd-eb19-4d4c-b2f0-beb14aee084b/public/main/default/en-us",
"type": "azureLogoScreenshot",
"languageID": "en-us",
"description": "Image caption",
"displayOrder": 0,
"fileName": "test.png",
"friendlyName": "test.png",
"url": "https://company.com/12345/test.png"
},
{
"$schema": "https://schema.mp.microsoft.com/schema/listing-asset/2022-03-01-preview5",
"product": "product/6d50c7bd-eb19-4d4c-b2f0-beb14aee084b",
"kind": "azure",
"listing": "listing/6d50c7bd-eb19-4d4c-b2f0-beb14aee084b/public/main/default/en-us",
"type": "azureLogoLarge",
"languageID": "en-us",
"description": "",
"displayOrder": 0,
"fileName": "216x216.png",
"friendlyName": "216x216.png",
"url": "https://company.com/12345/216x216.png"
},
{
"$schema": "https://schema.mp.microsoft.com/schema/listing-trailer/2022-03-01-preview5",
"product": "product/6d50c7bd-eb19-4d4c-b2f0-beb14aee084b",
"kind": "azure",
"listing": "listing/6d50c7bd-eb19-4d4c-b2f0-beb14aee084b/public/main/default/en-us",
"streamingUrl": "https://www.youtube.com/watch?v=123",
"assets": {
"en-us": {
"title": "Video",
"imageList": [
{
"url": "https://company.com/12345/trailer.png"
}
]
}
}
}
]
}
Konfigurowanie odbiorców wersji zapoznawczej
Jeśli produkt kontenera sprzedaje się za pośrednictwem witryny Microsoft Marketplace, musisz zdefiniować odbiorców w wersji zapoznawczej, za pośrednictwem identyfikatorów subskrypcji, którzy mogą przejrzeć listę produktów przed rozpoczęciem korzystania z niej.
Przykładowa treść żądania konfigurując odbiorców wersji zapoznawczej:
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/price-and-availability-offer/2022-03-01-preview3",
"id": "price-and-availability-offer/a8b48be1-a630-41b5-b5a5-c2a9f7789922",
"product": "product/a8b48be1-a630-41b5-b5a5-c2a9f7789922",
"previewAudiences": [
{
"type": "subscription",
"id": "c2d12fa0-c012-33b0-b0a0-c0a0a0011222",
"label": "Test Subscription"
}
]
}
]
}
Konfigurowanie planu — konfiguracja techniczna
Podaj nazwę typu rozszerzenia klastra w formacie "PublisherName.ApplicationName". Nazwa powinna być unikatowa we wszystkich ofertach i planach. Nie można zmodyfikować tej wartości po opublikowaniu planu w wersji zapoznawczej. Aby dowiedzieć się więcej, zobacz Ustawianie konfiguracji technicznej planu dla oferty kontenera opartej na aplikacji Kubernetes. Aby dowiedzieć się więcej, zobacz Zasoby techniczne kontenera platformy Azure.
Przykładowa treść żądania konfigurowania konfiguracji technicznej możliwej do transakcji:
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/container-plan-technical-configuration/2022-03-01-preview3",
"id": "container-plan-technical-configuration/a8b48be1-a630-41b5-b5a5-c2a9f7789922",
"product": "product/a8b48be1-a630-41b5-b5a5-c2a9f7789922",
"plan": "plan/a8b48be1-a630-41b5-b5a5-c2a9f7789922/4db792e6-8e10-439d-9db2-a0e98fa7e174",
"payloadType": " cnab",
"clusterExtensionType": " unique.extension.type",
"cnabReferences": [
{
"tenantID": "421c00000-ac12-451e-b3ff-c5b469a13e2d",
"subscriptionID": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
"resourceGroupName": "TestResources",
"registryName": "testregistry",
"repositoryName": "containerrepo",
"tag": "1.0.4",
"digest": "sha256:000193bfefde1e9"
},
]
},
]
}
Konfigurowanie planu — cena i dostępność
Przykładowa treść żądania konfigurując ukryty plan:
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/price-and-availability-plan/2022-03-01-preview4",
"product": "product/a8b48be1-a630-41b5-b5a5-c2a9f7789922",
"plan": "plan/a8b48be1-a630-41b5-b5a5-c2a9f7789922/0abbe45b-c405-4c08-bb14-ec485002084e",
"visibility": "hidden",
"audience": "public"
}
]
}
Kontener oferuje obsługę różnych opcji rozliczeń. Aby dowiedzieć się więcej na temat obsługiwanych modeli rozliczeniowych, zobacz Opcje licencjonowania.
Wersje i aktualizacje interfejsu API
Update | Co się zmieniło? |
---|---|
1-2024 | Wszystkie punkty końcowe schematu zostały zaktualizowane z product-ingestion.azureedge.net do schema.mp.microsoft.com |