API de Ingestão de Produto para o marketplace comercial

A API de Ingestão de Produtos é uma API modernizada que unifica todas as APIs de envio existentes em todos os produtos comerciais do marketplace. A API permite criar, publicar e gerenciar recursos associados a produtos e planos em sua conta do Partner Center. Ela usa um padrão declarativo para enviar solicitações, nas quais o estado desejado é indicado em vez de especificar as etapas individuais para alcançar o estado desejado.

Este artigo fornece orientação sobre como começar a usar as APIs para qualquer tipo de oferta de mercado comercial. A API de Ingestão de Produto é atualmente suportada para SaaS, VMs, ofertas privadas e tipos de oferta de contêiner e está em visualização. Para obter diretrizes específicas à sua oferta, revise as Diretrizes de API por tipo de oferta.

Importante

O Gráfico do Azure Active Directory (Azure AD) foi preterido a partir de 30 de junho de 2023. No futuro, não faremos mais investimentos no Azure AD Graph. As APIs do Azure AD Graph não têm SLA ou compromisso de manutenção além das correções relacionadas à segurança. Os investimentos nos novos recursos e funcionalidades só serão feitos no Microsoft Graph.

Desativaremos o Azure AD Graph em etapas incrementais para que você tenha tempo suficiente para migrar seus aplicativos para as APIs do Microsoft Graph. Em uma data posterior que anunciaremos, bloquearemos a criação de novos aplicativos usando o Azure AD Graph.

Para saber mais, consulte Importante: Aposentadoria do Graph do Azure AD e Substituição do módulo do Powershell.

Introdução

A API de ingestão de produto pode ser acessada usando a API MSGraph sob o nome de carga de trabalho "ingestão de produto". A URL de base é https://graph.microsoft.com/rp/product-ingestion.

Para usar a API de ingestão de produto, você precisa primeiro adquirir o seguinte:

  • Uma ID do Microsoft Entra e verifique se você tem permissões de administrador global para o diretório
  • Um aplicativo Microsoft Entra
  • Um token de acesso do Microsoft Entra

Etapa 1: Concluir os pré-requisitos

Antes de começar a escrever código para chamar a API de Ingestão de Produto, verifique se você concluiu os pré-requisitos a seguir.

  • Você (ou sua organização) deve ter um diretório do Microsoft Entra e deve ter permissão de administrador global para o diretório. Se você já usa o Microsoft 365 ou outros serviços comerciais da Microsoft, você já tem o diretório Microsoft Entra. Caso contrário, você pode criar uma nova ID do Microsoft Entra no Partner Center sem custo adicional.
  • Você deve associar um aplicativo do Microsoft Entra à sua conta do Partner Center e obter sua ID de locatário, ID de cliente e chave. Você precisa deles para obter o token de acesso do Microsoft Entra que você usará em chamadas para a API de envio da Microsoft Store.

Associar um aplicativo Microsoft Entra à sua conta do Partner Center

Para usar a API de Ingestão de Produto, você deve associar um aplicativo Microsoft Entra à sua conta do Partner Center, recuperar a ID do locatário e a ID do cliente para o aplicativo e gerar uma chave. O aplicativo Microsoft Entra representa o aplicativo ou serviço do qual você deseja chamar a API de Ingestão de Produto. Você precisa da ID do locatário, da ID do cliente e da chave para obter um token de acesso do Microsoft Entra para passar para a API.

Observação

É necessário executar essa tarefa apenas uma vez. Depois de ter a ID do locatário, a ID do cliente e a chave, você poderá reutilizá-las sempre que precisar criar um novo token de acesso do Microsoft Entra.

  1. No Partner Center, associe a conta do Partner Center da sua organização ao diretório Microsoft Entra da sua organização.
  2. Na página Usuários na seção Configurações da conta do Partner Center, adicione o aplicativo Microsoft Entra que representa o aplicativo ou serviço que você usará para acessar envios para sua conta do Partner Center. Certifique-se de atribuir esse aplicativo à função de Gerenciador. Se o aplicativo ainda não existir no diretório do Microsoft Entra, crie um novo aplicativo do Microsoft Entra no Partner Center. O Partner Center criará dois tipos de entradas para o aplicativo, uma como a entidade de serviço e a outra como o tipo de aplicativo Microsoft Entra.
  3. Retorne à página Usuários, selecione o nome do seu aplicativo Microsoft Entra para ir para as configurações do aplicativo e copie os valores de ID do Locatário e ID do Cliente.
  4. Selecione Adicionar nova chave. Na tela a seguir, copie o valor da Chave. Você não poderá acessar essas informações novamente depois de sair da página. Para obter mais informações, consulte Gerenciar chaves para um aplicativo Microsoft Entra.

Etapa 2: Obter um token de acesso do Microsoft Entra

Para chamar qualquer um dos métodos na API de Ingestão de Produto, você deve primeiro obter um token de acesso do Microsoft Entra para passar para o cabeçalho Authorization de cada método na API. Um token de acesso expira em 60 minutos após a emissão. Depois disso, você pode atualizá-lo para poder usá-lo em futuras chamadas à API.

Para obter o token de acesso, siga as instruções em Chamadas de Serviço para Serviço Usando Credenciais do Cliente para enviar um HTTP POST para o ponto de extremidade https://login.microsoftonline.com/{tenant}/oauth2/v2.0/token. A seguir está uma solicitação de exemplo:

POST https://login.microsoftonline.com/{tenant}/oauth2/v2.0/token HTTP/1.1
Host: login.microsoftonline.com
Content-Type: application/x-www-form-urlencoded;

grant_type=client_credentials
&client_id=<your_client_id>
&client_secret=<your_client_secret>
&scope=https://graph.microsoft.com/.default

Para o valor tenant_id no URI POST e nos parâmetros client_id e client_secret, especifique a ID do locatário, a ID do cliente e a chave para o aplicativo recuperado do Partner Center na seção anterior. Para o parâmetro de escopo, especifique https://graph.microsoft.com/.default.

Conceitos

Antes de começar, você precisa entender alguns conceitos básicos.

Recursos

A API é estruturada em torno de tipos de recursos, onde cada tipo é descrito usando uma definição de esquema dedicada, conforme referenciado pela propriedade "$schema". O esquema consiste nas propriedades de configuração desse recurso. Os recursos são fundamentais para criar e atualizar a configuração de vários aspectos de um determinado produto. Para obter uma lista completa de tipos de recursos e seus esquemas, consulte a Referência da API de Recurso.

ID durável

Um ID durável é um identificador global gerado pelo sistema usado para identificar exclusivamente qualquer recurso. Cada recurso tem uma propriedade "ID" associada, que, quando combinada com o nome do tipo de recurso, compõe a ID durável de um recurso. A ID durável é usada ao referenciar recursos para recuperar ou modificar.

Formato:

\<resource-type>/\<id>

Exemplo:

            { 
                "$schema": "https://schema.mp.microsoft.com/schema/product/2022-03-01-preview3",
                "id": "product/12345678-abcd-efgh-1234-12345678901", // durable ID
                "identity": {
                  "externalID": "ds-contoso-image-resize-demo"
                },
                "type": "softwareAsAService", // Product types that can be specified include azureContainer, azureVirtualMachine, softwareAsAService
                "alias": "Contoso Image Resizing Service"
            }

ID Externa

Uma ID externa é outro identificador exclusivo que pode ser usado para fazer referência a produtos ou planos específicos. Essa é uma maneira alternativa de referenciar esses recursos em vez de usar a ID durável. A ID externa de um produto é convertida em seu "offerID" e a ID externa de um plano é convertida em seu "planID", conforme definido na criação sob a propriedade "identity".

Exemplo:

            { 
                "$schema": "https://schema.mp.microsoft.com/schema/plan/2022-03-01-preview2",
                "id": "plan/12345678-abcd-efgh-1234-12345678901/4e0bfefa-b993-4b79-a426-871c3bf236a5",
                "identity": {
                  "externalID": "gold-annual"
                },
                "azureRegions": [
                    "azureGlobal"
                  ],
                "alias": "Gold - Annual payment",
                "product": "product/12345678-abcd-efgh-1234-12345678901",
            }

Métodos de API

Há quatro APIs de gerenciamento que podem ser usadas para executar ações diferentes, como consultar recursos existentes, fazer atualizações de configuração e verificar o status de uma solicitação.

Observação

Todas as solicitações exigem que você defina a versão do esquema ($version parâmetro de consulta) desejada como parte da resposta.

Tipo de API Descrição Método e caminho HTTP
Consulta Recupera os recursos existentes por:
-Método 1: tipo de recurso "árvore de recursos"
-Método 2: o durable-id
-Método 3: parâmetros de sequência de caracteres de consulta
-Método 1: GET resource-tree/<product-durableID>
-Método 2: GET <resource-durableID>
-Método 3: GET <resourceType>?<query parameters>
Configurar envio Envia solicitações para criar ou atualizar um ou mais recursos. Após o processamento bem-sucedido, um jobID é retornado, que pode ser usado para recuperar o status da solicitação. Esse tipo de API pode ser usado para atualizar o estado de rascunho e publicar alterações, sincronizar audiências privadas e modificar o estado do ciclo de vida do recurso. POST configure
Configurar status Recupera o status de uma solicitação pendente por meio do jobID. GET configure/<jobID>/status
Configurar detalhes de status Recupera um resumo detalhado de uma solicitação concluída, incluindo os recursos atualizados, por meio do jobID. GET configure/<jobID>
Cancelar configuração Cancela o trabalho Configurar especificado. POST configure/<jobID>/cancel

Um fluxo de trabalho típico

Para atualizar um recurso existente, um fluxo de trabalho típico seria:

  1. Recuperar uma configuração de recurso existente (tipo de API: consulta via árvore de recursos)*
  2. Faça as atualizações necessárias e envie uma solicitação de configuração (tipo de API: configurar envio)
  3. Verificar o status da solicitação (tipo de API: configurar status e configurar detalhes de status)

* Esse mesmo fluxo de trabalho pode ser aplicado ao criar novos recursos, mas em vez de recuperar recursos (Etapa 1), use a tabela Referência da API de Recursos para garantir que você esteja usando o esquema atual para o tipo de recurso que você está criando.

Para resumir, esta imagem mostra o padrão de chamada típico usado para enviar uma solicitação de configuração, independentemente de você estar criando um novo recurso ou modificando um existente.

Screenshot illustrating the typical calling pattern used to submit a configuration request.

Observação

Certifique-se de revisar todos os pré-requisitos adicionais específicos para o tipo de oferta que você está gerenciando, consultando a seção Orientação de API por tipo de oferta .

Recuperar configurações de recurso existentes

Antes de atualizar os recursos existentes, é importante primeiro recuperá-los para garantir que você tenha a configuração mais recente. Há várias maneiras de recuperar recursos por meio de uma chamada GET. Consulte o Método 1, detalhado abaixo, para recuperar todos os recursos dentro de um produto específico em uma única chamada à API.

Método 1: árvore de recursos

Schema: https://``schema.mp.microsoft.com``/schema/resource-tree/2022-03-01-preview2

GET resource-tree/<product-durableID>?$version=<schema-version>

Você pode recuperar todas as configurações de recursos em um produto específico usando o tipo de recurso "árvore de recursos" junto com a ID durável do produto.

A versão mais recente do esquema disponível pode ser diferente para cada recurso. Ao executar uma solicitação de árvore de recursos, a versão do esquema especificada determina qual versão é retornada para cada recurso no produto. A versão especificada serve como um limite de versão "max", pois retorna a versão mais recente do esquema disponível para todos os recursos de versão igual ou inferior. Por exemplo, se a versão de listagem de plano mais recente disponível for "2022-03-01-preview3", a resposta aparecerá nesta versão se você especificar "2022-03-01-preview5" na solicitação GET da árvore de recursos. No entanto, se solicitar "2022-03-01-preview2" como a versão da árvore de recursos, isso retornará o recurso de listagem do plano "2022-03-01-preview2", mesmo que a versão mais recente disponível seja "2022-03-01-preview3". É recomendável usar a versão mais recente disponível de cada recurso para garantir que você esteja usando o esquema atualizado com recursos recém-suportados.

Observação

Se você não souber a ID durável do produto, poderá usar a ID externa do produto para recuperar o recurso do produto executando GET product?externalID=<product-externalID>&$version=<product-schema-version>o . Essa solicitação aproveita um parâmetro de cadeia de caracteres de consulta, que é detalhado no método 3 abaixo. A resposta incluirá o ID durável do produto, que você pode usar para solicitações futuras.

Por padrão, quando você executa uma chamada GET usando a "árvore de recursos", você recebe de volta a versão de rascunho de seus recursos. No entanto, passando o parâmetro de consulta "targetType", você pode especificar o destino desejado para recuperar os dados "preview" ou "live". No exemplo a seguir, a chamada GET retorna a configuração do ambiente de visualização para todos os recursos no produto "12345678-abcd-efgh-1234-12345678901".

Exemplo de chamada GET:

GET https://graph.microsoft.com/rp/product-ingestion/resource-tree/product/12345678-abcd-efgh-1234-12345678901?targetType="preview"&$version=2022-03-01-preview5

Resposta de exemplo:

        {
          "$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": "ds-contoso-image-resize-demo"
            },
            "type": "softwareAsAService",
            "alias": "Contoso Image Resizing Service"
          },
          { 
            "$schema": "https://schema.mp.microsoft.com/schema/property/2022-03-01-preview3",
            "id": "property/12345678-abcd-efgh-1234-12345678901/public/main",
            "product": "product/12345678-abcd-efgh-1234-12345678901",
            "kind": "azureSaaS",
            "termsConditions": "false",
            "categories": {
          "developer-tools-saas": [
            "devService"
          ]
            }
          },
          {
            "$schema": "https://schema.mp.microsoft.com/schema/plan/2022-03-01-preview2",
            "id": "plan/12345678-abcd-efgh-1234-12345678901/4e0bfefa-b993-4b79-a426-871c3bf236a5",
            "product": "product/071b135e-9faf-4ff7-b113-a3f25bb0f468",
          ...
          }, 
              // The response would include all existing resources within this product.
          {
              ...
          }]
        }

Método 2: ID durável

GET <resource-durableID>?$version=<schema-version>

Recupere um recurso específico usando sua ID durável. Depois que um recurso é criado, a ID durável sempre permanece a mesma e pode ser usada para recuperar as alterações de rascunho mais recentes desse recurso chamando o método GET. Por exemplo, a solicitação a seguir retornará a configuração de rascunho desse produto específico usando a versão do esquema "2022-03-01-preview3".

GET product/12345678-abcd-efgh-1234-12345678901?$version=2022-03-01-preview3

Importante

Esse método só é usado para recuperar a configuração de rascunho. Se você quiser recuperar dados de visualização ou dinâmicos, use o método "resource-tree", conforme detalhado acima.

Para encontrar a ID durável para seus recursos, você pode:

Lembre-se, a propriedade "ID" é o durable-id para o respectivo recurso.

Método 3: parâmetros de cadeia de caracteres de consulta

GET <resourceType>?<query parameters>&$version=<schema-version>

Esse método é usado para consultar determinados tipos de recursos associados a uma conta específica. Por exemplo, você pode recuperar todos os seus produtos de um tipo de produto específico com uma única chamada GET. Os parâmetros de cadeia de caracteres de consulta são usados para consultar detalhes relativos a seus produtos, planos ou envios.

Esta tabela mostra os parâmetros de consulta com suporte para cada um dos tipos de recursos compatíveis. Nem todos os tipos de recursos oferecem suporte a cada um dos parâmetros de consulta. Faça referência a esta tabela para obter a lista completa das cadeias de caracteres de consulta com suporte no momento.

Tipo de recurso Parâmetros Exemplos de cadeia de caracteres de consulta
plano produto*
externalID
$maxpagesize
continuationToken$version*
GET plan?product=<product-durableID>&$version=<schema-version>
GET plan?product=<product-durableID>&externalID=<plan-externalID>&$version=<schema-version>
GET plan?product=<product-durableID>&$maxpagesize=<#>&$version=<schema-version>
GET plan?product=<product-durableID>&continuationToken=<token>&$version=<schema-version>
product externalID
tipo
$maxpagesize
continuationToken$version*
GET product?externalID=<product-externalID>&$version=<schema-version>
GET product?type=<product-type>&$version=<schema-version>
GET product?$maxpagesize=<#>&$version=<schema-version>
GET product?continuationToken=<token>&$version=<schema-version>
submissão targetType
$maxpagesize
continuationToken$version*
GET submission/<product-durableID>?targetType=<environment>&$version=<schema-version>
GET submission/<product-id>?$maxpagesize=<#>&continuationToken=<token>&$version=<schema-version>
árvore de recursos targetType$version* GET resource-tree/<product-durableID>?targetType=<environment>&$version=<schema-version>

* Os parâmetros do produto e $version são sempre necessários.

Funcionalidade de cada um dos parâmetros de consulta com suporte:

  • produto – Ao passar o parâmetro "produto" no contexto do tipo de recurso "plano", ele retorna todos os planos dentro desse produto específico.
  • externalID – Ao passar o parâmetro "externalID" no contexto de um produto ou plano, ele retorna a configuração desse respectivo produto ou plano. Ao contrário do método "resource-tree", esse parâmetro de cadeia de caracteres de consulta retornará apenas os detalhes desse recurso, não todos os recursos dentro dele.
  • type – Ao passar o parâmetro "type" no contexto do tipo de recurso "product", ele retorna todos os produtos desse tipo associados à sua conta. Por exemplo, especificando "type=softwareAsAService", todos os seus produtos SaaS serão devolvidos.
  • targetType – Retorna os dados de um ambiente específico no contexto do tipo de recurso usado. Os valores "targetType" suportados são "draft", "preview" ou "live".
  • $maxpagesize – Ao especificar o tamanho máximo da página, na forma de um número inteiro positivo, esse parâmetro é usado para limitar os resultados da pesquisa ao consultar seus envios anteriores.
  • continuationToken – Esse parâmetro pode ser usado com o parâmetro "$maxpagesize" para consultar outro conjunto de resultados disponíveis em sua pesquisa. O valor "continuationToken" é fornecido na resposta da página anterior.
  • $version – Este é um parâmetro obrigatório para todas as chamadas, ele especifica qual versão do esquema você deseja para a resposta da solicitação que você fez. A versão mais recente do esquema disponível pode ser diferente para cada recurso e a versão especificada serve como um limite de versão "max". O sistema retorna a versão exata do esquema, se disponível, ou a versão mais próxima que é mais antiga do que a versão solicitada. Isso pode ajudar a manter seu código funcionando mesmo se houver alterações de esquema mais recentes, mas para utilizar os recursos mais recentes, é recomendável usar a versão mais recente disponível de cada esquema.

Consultas de envios

Você pode recuperar os envios de produtos existentes realizando GET submission/<product-durableID>. Por padrão, você recupera todos os envios ativos, incluindo a referência de rascunho, mas também pode consultar um ambiente específico usando o parâmetro de consulta "targetType": (GET submission/<product-durableID>?targetType=<environment>&$version=<version>).

Importante

Depois que um envio de "Versão prévia" é enviado por push para "Ao vivo", ele substitui qualquer envio "Ao vivo" anterior. Quando isso acontece, os dados agora representam os ambientes "Preview" e "Live" até que um novo envio seja publicado em "Preview".

Solicitação de exemplo:

GET https://graph.microsoft.com/rp/product-ingestion/submission/12345678-abcd-efgh-1234-12345678901?$version=2022-03-01-preview2

Resposta de exemplo:

Este exemplo mostra uma solicitação GET para os envios ativos associados à ID do produto "12345678-abcd-efgh-1234-12345678901". A submissão ativa "Live" (submission/12345678-abcd-efgh-1234-12345678901/1152921515689847470) foi publicada para visualização primeiro e depois para live. Quando esta submissão foi enviada para o ar em 25 de janeiro de 2022, ela representou tanto a visualização quanto a live até que uma nova submissão de visualização (submission/12345678-abcd-efgh-1234-12345678901/1152921515689848683) foi criada em 4 de fevereiro de 2022.

            {
              "value": [
                {
                  "$schema": "https://schema.mp.microsoft.com/schema/submission/2022-03-01-preview2",
                  "id": "submission/12345678-abcd-efgh-1234-12345688901/0",
                  "product": "product/12345678-abcd-efgh-1234-12345678901",
                  "target": {
                    "targetType": "draft"
                  }
                },
                {
                  "$schema": "https://schema.mp.microsoft.com/schema/submission/2022-03-01-preview2",
                  "id": "submission/12345678-abcd-efgh-1234-12345678901/1152921515689847470",
                  "product": "product/12345678-abcd-efgh-1234-12345678901",
                  "target": {
                    "targetType": "live"
                  },
                  "status": "completed",
                  "result": "succeeded",
                  "created": "2022-01-25T07:13:06.4408032Z"
                },
                {
                  "$schema": "https://schema.mp.microsoft.com/schema/submission/2022-03-01-preview2",
                  "id": "submission/12345678-abcd-efgh-1234-12345678901/1152921515689848683",
                  "product": "product/12345678-abcd-efgh-1234-12345678901",
                  "target": {
                    "targetType": "preview"
                  },
                  "status": "completed",
                  "result": "succeeded",
                  "created": "2022-02-04T20:07:22.4220588Z"
                }
              ]
            }

Criar novos produtos e recursos

Você pode criar novos recursos, incluindo novos produtos, como parte de uma única solicitação de configuração. Usando a tabela de Referência da API de Recursos, você pode recuperar o esquema para o tipo de recurso que deseja criar. Isso garante que você esteja usando o esquema mais recente e, portanto, configurando todas as propriedades necessárias para criar o recurso.

Se você estiver criando um novo produto, os requisitos variam de acordo com o tipo de produto. Portanto, você precisa fornecer recursos diferentes. Você pode consultar a documentação do marketplace comercial correspondente para o respectivo tipo de produto para garantir que está configurando os requisitos básicos em sua solicitação. Como alternativa, você pode fazer uma solicitação de configuração usando apenas o recurso do produto. Depois de criar o produto, chame a API de detalhes de status de configuração para recuperar o recurso de produto criado e encontrar sua ID durável para chamar a API de Consulta da árvore de recursos. A resposta retorna os recursos suportados aplicáveis para o tipo de produto que você criou.

Da mesma forma, para criar um novo recurso em um produto existente, você também precisa recuperar o esquema mais recente desse tipo de recurso específico. Verifique se você fornece os recursos dependentes como parte da solicitação de configuração revisando as dependências do recurso.

Depois de construir seus recursos usando os esquemas, saiba como fazer uma solicitação de configuração.

Modificar produtos e recursos existentes

Você pode enviar atualizações usando o conteúdo de configuração. Essa carga consiste em um ou mais tipos de recursos e a propriedade "$schema" indica o tipo de recurso que está sendo referenciado.

Dica

É recomendável que primeiro você recupere recursos existentes antes de publicar atualizações para garantir que você esteja aproveitando a configuração mais recente.

Depois de modificar seus recursos, saiba como fazer uma solicitação de configuração.

Solicitações de configuração

Você pode editar e publicar no mesmo conteúdo. Para enviar uma solicitação de configuração, use o método HTTP POST da API de configuração. O conteúdo de configuração consiste em uma matriz de recursos que indicam as alterações desejadas. Todas as edições afetam apenas a versão de rascunho até que você envie explicitamente um recurso de envio para publicar suas alterações de rascunho. Ao publicar na visualização ou ao vivo, inclua o recurso de envio e especifique o ambiente de destino. Antes de enviar uma solicitação, você precisa saber como referenciar recursos e entender suas dependências.

Schema:<https://schema.mp.microsoft.com/schema/configure/2022-03-01-preview2>

Ao enviar sua solicitação de configuração, você recebe de volta um objeto configure-status com o jobID que pode ser usado para acompanhar o progresso e os resultados da solicitação.

Schema: <https://``schema.mp.microsoft.com``/schema/configure-status/2022-03-01-preview2>

Referências e dependências de recursos

Referências

Para fazer referência a um recurso existente em uma solicitação de configuração, forneça o tipo "$schema" do recurso junto com a ID durável do recurso. No caso de produtos e planos, você também pode fazer referência a esses recursos por meio de sua ID externa.

A ID durável pode ser encontrada na propriedade "ID", por exemplo, se este for o recurso do produto que queremos referenciar em outro recurso:

            { 
                "$schema": "https://schema.mp.microsoft.com/schema/product/2022-03-01-preview3",
                "id": "product/12345678-abcd-efgh-1234-12345678901",
                "identity": {
                  "externalID": "ds-contoso-image-resize-demo"
                },
                "type": "softwareAsAService",
                "alias": "Contoso Image Resizing Service"
            }

O ID durável seria "product/071b135e-9faf-4ff7-b113-a3f25bb0f468".

A ID durável pode então ser usada no exemplo de recurso de listagem abaixo, definindo-a na propriedade de esquema de recurso "produto" da seguinte maneira:

            {
                "$schema": "https://schema.mp.microsoft.com/schema/listing/2022-03-01-preview5", 
                "product": "product/071b135e-9faf-4ff7-b113-a3f25bb0f468", // product durable ID
                  ...
              }

A ID externa dos recursos do produto e do plano é definida dentro da propriedade "identity".

            {
                "$schema": "https://schema.mp.microsoft.com/schema/plan/2022-03-01-preview2", 
                "alias": "Gold - Annual payment",
                "identity": {"externalID": "gold-annual"},
                "product": "product/071b135e-9faf-4ff7-b113-a3f25bb0f468",
                  ...
              }

O ID externo do plano "gold-annual" pode então ser referenciado por outros recursos subsequentes no seguinte formato:

              {
                "$schema": "https://schema.mp.microsoft.com/schema/plan-listing/2022-03-01-preview5", 
                "product": "product/071b135e-9faf-4ff7-b113-a3f25bb0f468"}
                "plan": {"externalID": "gold-annual"}
                  ...
              }

Solicitação de exemplo:

Neste exemplo, a carga de configuração é usada para criar um novo produto SaaS com uma ID externa de "ds-contoso-image-resize-demo". Após a criação deste produto, você pode fazer referência a este produto mais tarde usando sua ID durável ou ID externa.

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/product/2022-03-01-preview3",
                "identity": {
                  "externalID": "ds-contoso-image-resize-demo"
                },
                "type": "softwareAsAService",
                "alias": " Contoso Image Resizing Service"
              }
              ]
            }

Resposta de exemplo:

            {
  "$schema": "https://schema.mp.microsoft.com/schema/configure-status/2022-03-01-preview2",
  "jobID": "071b135e-9faf-4ff7-b113-a3f25bb0f468",
  "jobStatus": "running",
  "jobResult": "pending",
  "jobStart": "2022-08-18T16:35:56.5917185Z",
  "jobEnd": "0001-01-01T00:00:00",
  "errors": []
}

Em seguida, você pode usar o jobID por meio da API Configurar Status para verificar o status da solicitação.

Dependências

Determinados recursos têm dependências na criação de outro recurso como um pré-requisito. Nessa circunstância, estamos usando a propriedade "resourceName" dentro da mesma carga para indicar a dependência do recurso do produto no recurso do plano, pois estamos criando ambos na mesma solicitação.

O "resourceName" é usado apenas para identificar cada recurso como parte da solicitação de configuração que você está fazendo. O valor não fará parte dos dados dos recursos, não será armazenado, nem será exposto aos clientes. Além disso, se houver erros como parte da solicitação de configuração, o "resourceName" será usado para chamar o recurso ao qual o erro pertence.

Solicitação de exemplo:

Neste exemplo, o produto deve ser criado antes do plano e, portanto, a propriedade "resourceName" é usada. O produto que está sendo criado, "myNewProduct", será o valor usado para "resourceName" e referenciado dentro do recurso do plano dependente.

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/product/2022-03-01-preview3", 
                "resourceName": "myNewProduct", 
                "alias": "Contoso Image Resizing Service",
                ...
              }, 
              {
                "$schema": "https://schema.mp.microsoft.com/schema/plan/2022-03-01-preview2", 
                "alias": " Gold - Annual payment",
                "product": {"resourceName": "myNewProduct"}
                  ...
              }, 
              }]
            }

Recurso de submissão

Se publicar em "visualização" ou "ao vivo", inclua o recurso de envio em sua solicitação, que contém:

  • A propriedade "product", que indica o produto que está sendo atualizado como referenciado por sua ID durável ou ID externa
  • A propriedade "targetType", indicando o ambiente de destino

Ao publicar ao vivo especificamente, o "ID" do envio de visualização que você deseja publicar:

              {
                "$schema": "https://schema.mp.microsoft.com/schema/submission/2022-03-01-preview2",
                "id": "submission/12345678-abcd-efgh-1234-12345678901/11521167929065",    
                "product": "product/12345678-abcd-efgh-1234-12345678901", 
                "target": { "targetType": "live" }
              }

Observação

Se você não incluir o recurso de envio, as alterações serão feitas apenas no estado de rascunho.

Publicação para versão prévia

Os tipos de produtos comerciais oferecem suporte a um ambiente de versão prévia e cada atualização deve ser publicada primeiro na versão prévia antes de entrar ao vivo. Você não pode publicar diretamente para ao vivo.

Importante

A exceção a isso é ao fazer alterações no público-alvo privado de seus planos. Ao sincronizar atualizações para o público privado especificamente, essas alterações serão propagadas para visualização e ao vivo ao mesmo tempo.

Há duas maneiras de publicar seus recursos no ambiente de versão prévia. Se alguma alteração precisar ser feita no envio de versão prévia, faça outra solicitação GET, faça as alterações necessárias e envie as alterações novamente por push. Você não precisa primeiro entrar no ar com suas alterações iniciais.

Método 1: publicar todos os recursos de rascunho

Se você quiser publicar todas as alterações de rascunho feitas, poderá enviar uma solicitação de configuração com um recurso de envio que defina o ambiente de visualização como "targetType". Como mostrado no exemplo abaixo, você não precisa fornecer explicitamente todos os recursos que exigem uma atualização, pois esse método publica todas as alterações no ambiente de destino, que neste caso é a visualização. Você só precisa fornecer o ponto de extremidade de API configurado e o recurso de envio.

Solicitação de exemplo:

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": [
              {
            // Below is the submission resource to publish to preview
                "$schema": "https://schema.mp.microsoft.com/schema/submission/2022-03-01-preview2",
                "product": "product/12345678-abcd-efgh-1234-12345678901", // This is the product durable ID
                "target": { "targetType": "preview" }
              }
              ]
            }

Método 2: Publicar recursos de rascunho específicos (também conhecido como publicação modular)

Como alternativa, se não estiver preparado para publicar todas as alterações de rascunho em vários recursos, basta fornecer os recursos que deseja publicar junto ao recurso de envio para disparar uma publicação modular. Você também pode usar essa abordagem para fazer alterações nos recursos e publicá-los ao mesmo tempo, em vez de como parte de uma atualização em massa, como é feito por meio do Método 1. Para uma publicação modular, todos os recursos são necessários, exceto os detalhes do nível do produto (por exemplo, listagem, disponibilidade, pacotes, revendedor), conforme aplicável ao seu tipo de produto.

Solicitação de exemplo:

Neste exemplo, os recursos no produto são fornecidos explicitamente como parte da publicação modular seguida pelo recurso de envio.

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/product/2022-03-01-preview2", 
                "id": "product/12345678-abcd-efgh-1234-12345678901",
                ...
              },
              {
                "$schema": "https://schema.mp.microsoft.com/schema/plan/2022-03-01-preview2", 
                  ...
              }, 
              // additional resources
              {
                  ...
              },
              // Below is the submission resource to publish to preview
              {
                "$schema": "https://schema.mp.microsoft.com/schema/submission/2022-03-01-preview2",
                "product": "product/12345678-abcd-efgh-1234-12345678901", // This is the product durable ID
                "target": { "targetType": "preview" }
              }
              ]
            }

Publicação ao vivo

Depois que suas alterações na visualização forem testadas e verificadas, você poderá enviar suas alterações para o ativo enviando uma solicitação de configuração com o "ID" do envio da visualização e o "targetType" definido como "ao vivo". Para localizar o "ID" do envio de visualização para incorporar à sua solicitação de configuração, consulte Consultando seus envios.

Importante

Ao contrário da publicação para versão prévia, não há opção para executar uma publicação modular na publicação ao vivo. Portanto, é importante garantir que você tenha verificado seu envio de visualização antes de entrar no ar com suas alterações.

Solicitação de exemplo:

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": [
              // Below is the submission resource, including the preview submission id, to publish to live.
              {
                "$schema": "https://schema.mp.microsoft.com/schema/submission/2022-03-01-preview2",
                "id": "submission/12345678-abcd-efgh-1234-12345678901/11521167929065",    
                "product": "product/12345678-abcd-efgh-1234-12345678901", // This is the product durable ID
                "target": { "targetType": "live" }
              }
              ]
            }

Verificar o status de uma solicitação

Independentemente dos recursos incluídos em sua solicitação de configuração ou das alterações que você está fazendo, você obterá um objeto configure-status de volta na resposta logo após o envio de uma solicitação, uma vez que ela seja processada com êxito. O "jobID" é importante, pois pode ser usado posteriormente para verificar o status da solicitação.

Schema: <https://``schema.mp.microsoft.com``/schema/configure-status/2022-03-01-preview2>

Exemplo de resposta a uma solicitação enviada:

            {
                "$schema": "https://schema.mp.microsoft.com/schema/configure-status/2022-03-01-preview2",
                "jobID": "d4261631-c583-4949-a612-5150882632e9",
                "jobStatus": "notStarted",
                "jobResult": "pending",
                "jobStart": "2022-03-01T13:32:43.123456Z",
                "jobEnd": "0001-01-01T00:00:00",
                "errors": []
            }

Status de uma solicitação pendente

Você pode recuperar o status até que o trabalho termine usando a seguinte chamada e inserindo o "jobID" da solicitação. O objeto também pode conter uma lista de erros se houver algum problema com sua solicitação.

GET https://graph.microsoft.com/rp/product-ingestion/configure/<jobID>/status?$version=2022-03-01-preview2

Lembre-se de que o tempo de conclusão pode variar dependendo da complexidade da sua solicitação,

Resumo de uma solicitação concluída

Depois que um trabalho de solicitação de configuração for concluído, com êxito ou com uma falha, você poderá obter a lista de recursos criados ou atualizados usando o "jobID".

Observação

Se você fizer essa chamada antes da conclusão do trabalho, ela falhará. Além disso, ele só devolverá os recursos que foram concluídos com sucesso ou, no caso de um cancelamento, apenas os concluídos antes do cancelamento.

Schema: <https://``schema.mp.microsoft.com``/schema/configure-detail/2022-03-01-preview2>

GET https://graph.microsoft.com/rp/product-ingestion/configure/<jobID>?$version=2022-03-01-preview2

Solicitação de exemplo:

No exemplo abaixo, uma solicitação GET é usada para recuperar os detalhes resumidos da solicitação de configuração usada no exemplo anterior que criou um novo produto SaaS. A resposta é o objeto configure-detail com a matriz de recursos que contém o recurso do produto que foi criado junto com sua ID durável.

GET https://graph.microsoft.com/rp/product-ingestion/configure/071b135e-9faf-4ff7-b113-a3f25bb0f468?$version=2022-03-01-preview2

Resposta de exemplo:

            {
"$schema": "https://schema.mp.microsoft.com/schema/configure-detail/2022-03-01-preview2",
"resources": [
{ 
                "$schema": "https://schema.mp.microsoft.com/schema/product/2022-03-01-preview2",
                "id": "product/12345678-abcd-efgh-1234-12345678901",
                "identity": {
                  "externalID": "ds-contoso-image-resize-demo "
                },
                "type": "softwareAsAService",
                "alias": "Contoso Image Resizing Service"
              }
]
}             

Cancelar uma solicitação de configuração

Antes que um trabalho seja concluído, você pode tentar cancelá-lo, se necessário. Para solicitações de longa duração, como publicação em "visualização" ou "ao vivo", a solicitação de cancelamento pode ser rejeitada se o trabalho estiver longe o suficiente para ser totalmente processado.

Para cancelar um trabalho, faça uma chamada POST para o ponto de extremidade de cancelamento e forneça a ID do trabalho da solicitação que você deseja cancelar.

POST https://graph.microsoft.com/rp/product-ingestion/configure<jobID>/cancel?$version=2022-03-01-preview2

Solicitação de exemplo:

POST <https://graph.microsoft.com/rp/product-ingestion/configure/d4261631-c583-4949-a612-5150882632e9/cancel?$version=2022-03-01-preview2>

Exemplo de resposta de uma solicitação de cancelamento bem-sucedida:

            {
                "$schema": "https://schema.mp.microsoft.com/schema/configure-status/2022-03-01-preview2",
                "jobID": "d4261631-c583-4949-a612-5150882632e9",
                "jobStatus": "completed",
                "jobResult": "cancelled",
                "jobStart": "2022-03-01-T13:32:43.123456Z",
                "jobEnd": "2022-03-01T17:34:21.5225132Z",
                "errors": []
            }

Exemplo de resposta caso o cancelamento não seja permitido: HTTP Status code: 400

Conteúdo:

            {
              "error": {
                "code": "badRequest",
                "message": "Cannot cancel job, job has already completed.",
                "details": []
              }
}

Importante

Lembre-se de que o cancelamento só se aplica a recursos que ainda não foram processados. Alguns recursos podem já ter concluído o processamento e refletirão as atualizações de configuração mais recentes, apesar do cancelamento da solicitação.

Você pode buscar o resumo da solicitação de configuração após o cancelamento para verificar quais recursos (se houver) já foram processados antes do cancelamento.

Sincronizar públicos-alvo privados

Para um produto ao vivo, as atualizações para audiências privadas nos ambientes de rascunho, visualização e ao vivo podem ser realizadas ao mesmo tempo sem a necessidade de publicação. Você pode sincronizar o público privado usando o recurso "preço-e-disponibilidade-atualização-audiências-privadas" especificando quais públicos você deseja adicionar ou remover de um plano específico. Isso sincronizará os ambientes de rascunho, visualização e ao vivo para ter os mesmos valores de audiência privada. Você não precisa fornecer o recurso de envio ao sincronizar o público-alvo privado.

Para editar as audiências de rascunho, use o recurso "plano de preço e disponibilidade" e a propriedade "privateAudiences". Isso precisará passar pelo fluxo de publicação regular para que os valores sejam definidos em visualização e ao vivo.

Importante

Os tipos de público com suporte são "assinatura", "ea", "msdn" e "locatário", mas o suporte para eles varia de acordo com o tipo de produto. Se o produto oferecer suporte a mais de um tipo de identificador para configurar o público-alvo privado (por exemplo, IDs de locatário e IDs de assinatura), você deve executar uma publicação completa caso esteja fornecendo um novo tipo de identificador pela primeira vez. Nesse caso, não é possível sincronizar o público privado.

Solicitação de exemplo para sincronizar a configuração de público-alvo privado:

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-preview2",
            "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": "4c2bdcdc-f10e-468d-8a2a-0832e089215b",
                    "label": "test 1"
                  }
              ],
              "remove ":
              [
                {
            "type": "subscription",
                    "id": "412c45bf-c99a-4e96-b683-77b0aa2dd09e",
                    "label": "test 2"
                }
              ]
            }
          }
          ]
        }

Configurar o gerenciamento de clientes potenciais

Conecte seu sistema de gerenciamento de relacionamento com o cliente (CRM) ao seu produto de marketplace comercial para que você possa receber informações de contato do cliente quando um cliente manifestar interesse ou implantar seu produto. Você pode modificar essa conexão a qualquer momento durante ou após a criação do produto. Para saber mais, consulte Obter clientes potenciais.

Solicitação de exemplo para configurar o gerenciamento de leads:

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/customer-leads/2022-03-01-preview3",
            "id": "customer-leads/a0c6484f-b4fb-4129-ac6b-35f2b5628089",
            "product": "product/a0c6484f-b4fb-4129-ac6b-35f2b5628089",
            "leadDestination": "httpsEndpoint",
            "httpsEndpointLeadConfiguration": {
              "httpsEndpointUrl": "https://www.your-crm.com/triggers/invoke"
            }
          }  
          ]
        }

Estados do ciclo de vida do recurso

Há diferentes ações que você pode executar nesse mapa para o estado do ciclo de vida de um recurso. Nem todos os recursos têm um estado de ciclo de vida e nem todos os estados do ciclo de vida é compatível com todos os recursos. Para descobrir se um recurso tem um estado de ciclo de vida e quais valores são suportados, você pode verificar o esquema de recurso para a existência da propriedade "lifecycleState". Vários estados de ciclo de vida com suporte são detalhados abaixo.

Excluído

Você pode excluir recursos específicos atualizando a propriedade "lifecycleState" para "deleted". Você só pode excluir recursos de rascunho que ainda não foram publicados. Essa ação não pode ser desfeita.

Solicitação de exemplo:

No exemplo abaixo, o plano de rascunho "básico" é excluído.

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": "deleted"
            }
          ]
        }

Preterido

A reprovação remove o recurso do marketplace comercial. Para depreciar, defina a propriedade "lifecycleState" como "preterida" nos recursos que a suportam. Existem vários níveis de depreciação. Todos os tipos de produtos suportam a substituição de todo o produto e planos individuais dentro dele. Para restaurar posteriormente um recurso preterido, consulte o estado do ciclo de vida "geralmenteDisponível".

Solicitação de amostra de uma substituição de produto:

No exemplo abaixo, o envio ao vivo do produto é definido como depreciado. Uma vez que essa alteração é aplicada, ela é publicada automaticamente para entrar em vigor.

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"
                }
              ]
            }

Ao substituir planos, a propriedade "lifecycleState" deve ser alterada para "preterida" e as alterações devem ser publicadas em "preview" e depois "live" para que a substituição entre em vigor. Isso é diferente de uma depreciação no nível do produto na qual a substituição será configurada automaticamente no ambiente ativo.

Solicitação de exemplo de uma substituição de plano:

No exemplo abaixo, um plano dentro de um produto SaaS é definido como depreciado. Lembre-se de que, para aplicar essa alteração, você pode publicar posteriormente usando o recurso de envio.

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"
                }
              ]
            }

Existem outras formas de depreciação que variam de acordo com o tipo de produto. Saiba mais sobre a substituição de SaaS, máquinas virtuais e contêineres.

Disponível para o público geral

generallyAvailable é o estado padrão do ciclo de vida para todos os recursos. Depois que um recurso for preterido, você poderá restaurá-lo alterando a propriedade "lifecycleState" de volta para "geralmenteAvailable". Para restaurar um produto preterido, você deve publicar o produto para visualização e depois ao vivo. Você pode encontrar exemplos de SaaS, VMs e contêineres em seus respectivos artigos.

Solicitação de amostra de uma restauração de plano:

No exemplo abaixo, um plano deve ser restaurado. Para aplicar essa alteração, você precisará publicar posteriormente todo o caminho ao vivo usando o recurso de envio.

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"
                }
              ]
            }     

Referência da API de recursos

As versões de esquema abaixo são aplicáveis somente para visualização e serão alteradas assim que a API estiver disponível para o público em geral.

Observação

Você pode exibir os recursos disponíveis existentes e suas versões aqui: resources-index

Tipo de recurso Descrição Esquema
azure-test-drive-technical-configuration Detalhes técnicos que ajudam o mercado comercial da Microsoft a se conectar à sua solução de test drive. https://schema.mp.microsoft.com/schema/azure-test-drive-technical-configuration/2022-03-01-preview3
comercial-marketplace-setup Descreve a configuração transacionável de produtos no mercado comercial. https://schema.mp.microsoft.com/schema/commercial-marketplace-setup/2022-03-01-preview2
clientes-leads Permite conectar-se a um sistema de CRM para receber leads de clientes. https://schema.mp.microsoft.com/schema/customer-leads/2022-03-01-preview3
listagem Isso inclui as descrições do seu produto, que serão exibidas nas vitrines comerciais do Microsoft Marketplace. https://schema.mp.microsoft.com/schema/listing/2022-03-01-preview5
listagem-ativo Capturas de tela e seus ativos de marketing vinculados ao recurso de listagem. https://schema.mp.microsoft.com/schema/listing-asset/2022-03-01-preview5
listagem-trailer Ativos de vídeo vinculados ao recurso de listagem. https://schema.mp.microsoft.com/schema/listing-trailer/2022-03-01-preview5
Integração com o Microsoft365 Habilitação do Microsoft 365 e seleção de tipos. https://schema.mp.microsoft.com/schema/microsoft365-integration/2022-03-01-preview2
plano Para criar planos, que serão referenciados pelos recursos de nível de plano configurados, como listagem de planos. https://schema.mp.microsoft.com/schema/plan/2022-03-01-preview2
lista de planos Defina o nome e a descrição do plano como você deseja que eles apareçam no mercado comercial. https://schema.mp.microsoft.com/schema/plan-listing/2022-03-01-preview5
preço-e-disponibilidade-medidor-personalizado Defina os medidores personalizados compartilhados em seus planos. https://schema.mp.microsoft.com/schema/price-and-availability-custom-meter/2022-03-01-preview3
preço-e-disponibilidade-oferta Defina um público limitado que possa revisar seu produto antes de publicá-lo ao vivo. https://schema.mp.microsoft.com/schema/price-and-availability-offer/2022-03-01-preview3
plano de preço e disponibilidade Configure os mercados em que esse plano está disponível, o modelo de monetização desejado, o preço e os termos de faturamento. https://schema.mp.microsoft.com/schema/price-and-availability-plan/2022-03-01-preview4
preço-e-disponibilidade-atualização-audiências-privadas As atualizações para públicos-alvo privados nos ambientes de rascunho, versão prévia e ao vivo podem ser executadas ao mesmo tempo sem a necessidade de uma publicação. https://schema.mp.microsoft.com/schema/price-and-availability-update-private-audiences/2022-03-01-preview3
plano de oferta privada e de disponibilidade Usado para configurar os detalhes de preços absolutos de um preço de produto/plano usado em uma oferta privada https://schema.mp.microsoft.com/schema/price-and-availability-private-offer-plan/2022-07-01
oferta privada Define o nome e o tipo de oferta privada, com os termos e detalhes da oferta, juntamente com os produtos/plano incluídos e seus preços https://schema.mp.microsoft.com/schema/private-offer/2022-07-01
product Este é o recurso principal, define o nome e o tipo do produto, todos os recursos fazem referência a isso. https://schema.mp.microsoft.com/schema/product/2022-03-01-preview3
property Defina as categorias e os setores aplicáveis à sua oferta, à versão do aplicativo e aos contratos legais. https://schema.mp.microsoft.com/schema/property/2022-03-01-preview5
revendedor Configure os parceiros no programa CSP (Provedores de Soluções na Nuvem) para os quais você deseja disponibilizar seu produto. https://schema.mp.microsoft.com/schema/reseller/2022-03-01-preview2
árvore de recursos Descreve o produto uma lista de recursos para esse produto no estado atual para o ambiente de destino especificado. https://schema.mp.microsoft.com/schema/resource-tree/2022-03-01-preview2
configuração técnica de software como serviço Detalhes técnicos que ajudam o mercado comercial da Microsoft a se conectar à sua solução. https://schema.mp.microsoft.com/schema/software-as-a-service-technical-configuration/2022-03-01-preview3
submissão Pode ser usado para disparar diferentes ações em seu produto e indicar o estado de publicação do seu produto em diferentes ambientes (rascunho, visualização e ativa). https://schema.mp.microsoft.com/schema/submission/2022-03-01-preview2
test-drive Defina se você deseja permitir que seus clientes experimentem o produto gratuitamente por um tempo limitado. https://schema.mp.microsoft.com/schema/test-drive/2022-03-01-preview2
listagem de test-drive Defina os detalhes sobre como os clientes podem experimentar seu produto. https://schema.mp.microsoft.com/schema/test-drive-listing/2022-03-01-preview3
virtual-machine-plan-technical-configuration Detalhes técnicos que descrevem a máquina virtual e o local da imagem. https://schema.mp.microsoft.com/schema/virtual-machine-plan-technical-configuration/2022-03-01-preview3
virtual-machine-test-drive-technical-configuration Detalhes técnicos que ajudam o mercado comercial da Microsoft a se conectar à sua solução de test drive. https://schema.mp.microsoft.com/schema/virtual-machine-test-drive-technical-configuration/2022-03-01-preview2
container-plan-technical-configuration Detalhes técnicos que descrevem as propriedades da imagem do contêiner. https://schema.mp.microsoft.com/schema/container-plan-technical-configuration/2022-03-01-preview3

Orientação de API por tipo de produto

A API de Ingestão de Produtos será disponibilizada para outros tipos de produtos no futuro. À medida que mais tipos de produtos forem suportados, mais orientações específicas para cada tipo de produto serão disponibilizadas.

Tipo de produto Recursos específicos do tipo de produto
Ofertas privadas Crie e gerencie ofertas privadas por meio da API de Ingestão de Produtos
SaaS Criar e gerenciar ofertas SaaS por meio da API de ingestão de produtos
Máquinas virtuais Criar e gerenciar ofertas de máquinas virtuais por meio da API de Ingestão de Produtos
Contêineres Criar e gerenciar ofertas de contêiner por meio da API de ingestão de produtos

Versões e atualizações da API

Atualização O que mudou?
11-2023 Todos os pontos de extremidade do esquema foram atualizados de product-ingestion.azureedge.net para schema.mp.microsoft.com
12-2022 Uma nova versão de esquema 2022-03-01-preview3 da API PC Ingestion para leads de clientes está agora disponível que aceita clientID e clientSecret durante a configuração de leads de clientes e pára de capturar os campos serverID e email de contato. Alterne para a nova versão e forneça o clientID e o clientSecret para continuar configurando o conector Marketo para ofertas do marketplace. Nova URL do esquema: https://``schema.mp.microsoft.com``/schema/customer-leads/2022-03-01-preview3
09-2022 O suporte à visualização de contêiner é lançado como versão 2022-03-01-preview4
08-2022 O suporte à visualização de software como serviço é lançado como versão 2022-03-01-preview3
08-2022 Oferta privada lançamento público como versão 2022-07-01
05-2022 O suporte à visualização de máquina virtual é lançado como versão 2022-03-01-preview2

Próximas etapas