

A referência de API do AWS Marketplace foi reestruturada. Para obter mais informações sobre as operações de API suportadas, consulte a Referência de API do [ AWS Marketplace](https://docs.aws.amazon.com/marketplace/latest/APIReference/Welcome.html).

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Trabalhe com AMI-based produtos
<a name="work-with-single-ami-products"></a>

Você pode usar o AWS Marketplace Catalog API para automatizar tarefas para trabalhar com produtos baseados em Amazon Machine Image (AMI). 

Para obter informações sobre como criar um AMI-based produto usando a API Catalog, consulte[Crie um produto](work-with-seller-products.md#create-product).

Os tópicos a seguir descrevem como usar a API Catalog para realizar ações em seus AMI-based produtos:

**Topics**
+ [Adicionar uma nova versão](#ami-add-version)
+ [Atualizar as informações da versão](#ami-update-version)
+ [Restringir uma versão](#ami-restrict-version)
+ [Atualize o futuro Região da AWS Suporte  ](#update-future-region-support)
+ [Adicionar um compatível Região da AWS](#add-regions)
+ [Restringir um Região da AWS](#restrict-regions)
+ [Adicionar um novo tipo de instância](#add-instance-types)
+ [Restringir um tipo de instância](#restrict-instance-types)

## Adicionar uma nova versão
<a name="ami-add-version"></a>

Você pode usar a API Catalog para adicionar uma nova versão a um AMI-based produto existente em AWS Marketplace. Para obter mais informações sobre como adicionar novas versões de AMI ao seu produto usando o Portal de gerenciamento do AWS Marketplace, consulte [ Adicionar uma nova versão ](https://docs.aws.amazon.com/marketplace/latest/userguide/ami-single-ami-products.html#single-ami-adding-version) no Guia do *AWS Marketplace vendedor*.

 Quando você cria uma solicitação que inclui a adição de uma nova AMI ao AWS Marketplace, a AMI deve ser copiada para o sistema do AWS Marketplace e depois escaneada em busca de problemas de segurança. Você deve conceder ao AWS Marketplace acesso à AMI criando uma função do AWS Identity and Access Management (IAM) com permissões para realizar ações na sua AMI. Para obter mais informações sobre as permissões necessárias, consulte [ Conceder ao AWS Marketplace acesso à sua AMI ](https://docs.aws.amazon.com/marketplace/latest/userguide/single-ami-marketplace-ami-access.html) no Guia do *AWS Marketplace vendedor. *

Para adicionar uma nova versão, chame a operação da `StartChangeSet` API com o tipo de `AddDeliveryOptions` alteração AMI-based dos produtos, conforme mostrado no exemplo a seguir. Para testar sua chamada de API sem realmente criar uma nova versão, defina o `Intent` parâmetro como`VALIDATE`. Para obter mais informações, consulte [ Intent. ](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_StartChangeSet.html#API_StartChangeSet_RequestBody)

**nota**  
Para produtos AMI, uma versão é composta por uma ou mais opções de entrega. Todas as opções de entrega na mesma versão devem ter o mesmo `AmiSource` objeto com os mesmos detalhes. Todas as opções de entrega devem ser adicionadas a uma versão quando a versão for criada. Não é possível adicionar opções de entrega a uma versão existente.

**Sintaxe da solicitação**

```
POST /StartChangeSet HTTP/1.1
Content-type: application/json

{
  "Catalog": "AWSMarketplace",
  "ChangeSet":
  [
    {
      "ChangeType": "AddDeliveryOptions",
      "Entity":
      {
        "Type": "AmiProduct@1.0",
        "Identifier": "prod-example12345"
      },
      "DetailsDocument":
      {
        "Version":
        {
          "VersionTitle": "My new title",
          "ReleaseNotes": "My new Release notes"
        },
        "DeliveryOptions":
        [
          {
            "Details":
            {
              "AmiDeliveryOptionDetails":
              {
                "AmiSource":
                {
                  "AmiId": "ami-1234567890abcdef",
                  "AccessRoleArn": "arn:aws:iam::12345678901:role/AwsMarketplaceAmiIngestion",
                  "UserName": "ec2-user",
                  "OperatingSystemName": "AMAZONLINUX",
                  "OperatingSystemVersion": "Amazon Linux 2 AMI 2.0.20210126.0 x86_64 HVM gp2",
                  "AfiIds": ["afi-1234567890abcdefg", "afi-abcdefg1234567890"] //Optional (Required only for FPGA products)
                },
                "UsageInstructions": "Easy to use AMI",
                "RecommendedInstanceType": "m4.xlarge",
                "SecurityGroups":
                [
                  {
                    "IpProtocol": "tcp",
                    "FromPort": 443,
                    "ToPort": 443,
                    "IpRanges":
                    [
                      "0.0.0.0/0"
                    ]
                  }
                ]
              }
            }
          },
          {
            "DeliveryOptionTitle": "My new AMI with CFTdelivery option",
            "Details":
            {
              "DeploymentTemplateDeliveryOptionDetails":
              {
                "ShortDescription": "My new short description",
                "LongDescription": "My new long description",
                "UsageInstructions": "My new usage instructions",
                "RecommendedInstanceType": "m4.xlarge",
                "ArchitectureDiagram": "https://my-bucket.s3.amazonaws.com/my-folder/diagram.png",
                "Template": "https://my-bucket.s3.amazonaws.com/my-folder/cft.template",
                "TemplateSources":
                [
                  {
                    "ParameterName": "MyAmiParam",
                    "AmiSource":
                    {
                      "AmiId": "ami-1234567890abcdef",
                      "AccessRoleArn": "arn:aws:iam::12345678901:role/AwsMarketplaceAmiIngestion",
                      "UserName": "ec2-user",
                      "OperatingSystemName": "AMAZONLINUX",
                      "OperatingSystemVersion": "Amazon Linux 2 AMI 2.0.20210126.0 x86_64 HVM gp2"
                    }
                  }
                ]
              }
            }
          }
        ]
      }
    }
  ],
  "Intent": "APPLY"
}
```

A lista a seguir fornece informações sobre os campos de entrada que você usa com o tipo de `AddDeliveryOptions` alteração. Todos os campos são obrigatórios, salvo indicação em contrário. Para obter mais informações sobre esses campos, consulte [ Adicionar uma nova versão ](https://docs.aws.amazon.com/marketplace/latest/userguide/ami-single-ami-products.html#single-ami-adding-version) no Guia do AWS Marketplace vendedor.
+ **DeliveryOptions**(matriz de objetos) — Uma lista de objetos de opção de entrega, incluindo os detalhes de cada um. Você deve incluir pelo menos um.
  + Para a opção de * entrega * AMI (independente), especifique um objeto com os detalhes a seguir. Você só pode ter uma opção de entrega com esse tipo.
    + **Detalhes ** (objeto) — Contém os detalhes dessa opção de entrega. Observe que esse objeto de detalhes aninhado não precisa ter um escape duplo.
      + **AmiDeliveryOptionDetails**(objeto) — Use para fornecer os detalhes de cada opção de entrega da AMI.
        + **AmiSource**(objeto) — Detalhes sobre a AMI a ser usada na versão adicionada.
          + **AmiId**(string) — ID da AMI de origem, localizada no Região da AWS local em que a API está sendo chamada. Sempre deve ser no Leste dos EUA (Norte da Virgínia), pois essa é a única região em que a API Catalog está disponível. Deve pertencer à conta do chamador.
          + **AccessRoleArn**(string) — função do IAM Amazon Resource Name (ARN) usada AWS Marketplace para acessar a AMI fornecida. Para obter detalhes sobre como criar e usar esse ARN, consulte [ Conceder ao AWS Marketplace acesso à sua AMI ](https://docs.aws.amazon.com/marketplace/latest/userguide/ami-single-ami-products.html#single-ami-marketplace-ami-access) no Guia * do *AWS Marketplace vendedor.
          + **UserName**(string) — Nome de usuário de login para acessar o sistema operacional (OS) na AMI. Normalmente ec2-user para AMIs Linux ou Administrator para Windows.
          + **ScanningPort**(inteiro) — Porta SSH ou RDP usada para acessar o sistema operacional. Usado para verificar a AMI fornecida em busca de vulnerabilidades de segurança. O padrão é 22.
          + **OperatingSystemName**(string) — Nome do sistema operacional exibido aos compradores.
          + **OperatingSystemVersion**(string) — Sequência de caracteres da versão do sistema operacional exibida aos compradores.
          + **AfiIds**(matriz de cadeias de caracteres) (opcional) — IDs de imagem FPGA (AFI) da Amazon para habilitar o suporte de FPGA para esta versão. Quando fornecido, isso permite que seu produto seja executado em tipos de instância FPGA-enabled F2. Você pode fornecer até 15 IDs AFI por versão. Todos os IDs de AFI fornecidos devem proceder da região Leste dos EUA (Norte da Virgínia) e residir na sua conta de vendedor do AWS Marketplace, e o perfil de acesso do IAM fornecido deve ter permissões para compartilhar essa AFI com o AWS Marketplace. Para obter mais detalhes sobre as permissões necessárias, consulte [ Conceder ao AWS Marketplace acesso às suas imagens de FPGA ](https://docs.aws.amazon.com/marketplace/latest/userguide/single-ami-marketplace-ami-access.html#single-ami-marketplace-afi-access) no Guia do *AWS Marketplace vendedor. *
        + **UsageInstructions**(string) — Instruções para usar a AMI ou um link para obter mais informações sobre a AMI.
        + **AccessEndpointUrl**(object) (opcional) — Usado para criar um caminho para acessar a AMI depois que ela for usada.
          + **Porta ** (string) — O número da porta usada para acessar o serviço em execução na AMI.
          + **Protocolo ** (string) — O protocolo (http ou https) usado para acessar o serviço em execução na AMI.
          + **RelativePath**(string) — O caminho da raiz da web para acessar o serviço em execução na AMI (por exemplo, /index.html).
        + **RecommendedInstanceType**(string) — O tipo de instância recomendado para executar o serviço com a AMI e é o padrão para instalações do seu serviço com 1 clique. Para obter uma lista dos tipos de instância, consulte Tipos de [ instância ](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) no Guia do usuário do * Amazon Elastic Compute Cloud para instâncias * Linux.
        + **SecurityGroups**(matriz de objetos) — Uma lista de objetos que representam as regras de entrada para os grupos criados automaticamente para a versão.
          + **IpProtocol**(string) — O protocolo a ser usado (tcp ou udp).
          + **FromPort**(integer) — A porta de origem.
          + **ToPort**(inteiro) — A porta de destino.
          + **IpRanges**(matriz de cadeias de caracteres) — intervalos de IP permitidos, no formato CIDR (no formato xxx.xxx.xxx. xxx/nn, por exemplo,{{192.0.2.0/24}}).
  + Para * AMI com opção CloudFormation * de entrega, especifique um objeto com os detalhes a seguir. Você pode ter até três opções de entrega desse tipo.
    + **DeliveryOptionTitle**(string) — Título da opção de entrega.
    + **Detalhes ** (objeto) — Contém os detalhes de uma opção de entrega da AMI. Observe que esse objeto de detalhes aninhado não precisa ter um escape duplo.
      + **DeploymentTemplateDeliveryOptionDetails**(objeto) — Use para fornecer os detalhes de cada opção de entrega de CFT.
        + **ShortDescription**(string) — Breve descrição da opção de entrega do seu CloudFormation modelo.
        + **LongDescription**(string) — Descrição detalhada da opção de entrega do seu CloudFormation modelo.
        + **UsageInstructions**(string) — Instruções para usar a AMI ou um link para obter mais informações sobre a AMI.
        + **RecommendedInstanceType**(string) — O tipo de instância recomendado para executar o serviço com a AMI e é o padrão para instalações do seu serviço com 1 clique. Para obter uma lista dos tipos de instância, consulte Tipos de [ instância ](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) no Guia do usuário do * Amazon Elastic Compute Cloud para instâncias * Linux.
        + **ArchitectureDiagram**(string) — URL para a localização do seu diagrama arquitetônico no Amazon S3. 
        + **Modelo ** (string) — URL para a localização do seu CloudFormation modelo no Amazon S3. 
        + **TemplateSources**(matriz de objetos)
          + **ParameterName**(string) — Nome do parâmetro no CloudFormation modelo para o qual a AMI nesta versão deve ser passada. Para obter mais informações, consulte [Requisitos dos detalhes de AMI](https://docs.aws.amazon.com/marketplace/latest/userguide/cloudformation.html#ami-requirements-sse).
          + **AmiSource**(objeto)
            + **AmiId**(string) — ID da AMI de origem, localizada no Região da AWS local em que a API está sendo chamada (atualmente deve estar sempre no Leste dos EUA (Norte da Virgínia) porque essa é a única região em que a API do catálogo está disponível). Deve pertencer à conta do chamador.
            + **AccessRoleArn**(string) — função do IAM Amazon Resource Name (ARN) usada Região da AWS para acessar a AMI fornecida. Para obter detalhes sobre como criar e usar esse ARN, consulte [ Conceder ao AWS Marketplace acesso à sua AMI ](https://docs.aws.amazon.com/marketplace/latest/userguide/ami-single-ami-products.html#single-ami-marketplace-ami-access) no Guia * do *AWS Marketplace vendedor.
            + **UserName**(string) — Nome de usuário de login para acessar o sistema operacional (OS) na AMI. Normalmente, `ec2-user` para AMIs Linux ou `Administrator` Windows.
            + **OperatingSystemName**(string) — Nome do sistema operacional exibido aos compradores.
            + **OperatingSystemVersion**(string) — Sequência de caracteres da versão do sistema operacional exibida aos compradores.

**Sintaxe de resposta **

Um conjunto de alterações é criado para sua solicitação. A resposta a essa solicitação fornece o `ChangeSetId` e `ChangeSetArn` para o conjunto de alterações e tem a seguinte aparência.

```
{
  "ChangeSetId": "example123456789012abcdef",
   "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef"
}
```

A solicitação de alteração é adicionada a uma fila e processada. Isso incluiu a validação de informações para garantir que atendam às AWS Marketplace diretrizes. O processo de validação pode levar de alguns minutos a algumas horas.

Você pode verificar o status da solicitação por meio da Portal de gerenciamento do AWS Marketplace API Catalog ou diretamente pela API Catalog usando a operação da `[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)` API.

Para obter mais informações sobre erros nos conjuntos de alterações de produtos do vendedor, consulte[Alterar o status e os erros do conjunto](work-with-seller-products.md#seller-product-change-set-errors).

Quando a solicitação for concluída, a versão será adicionada e todos os assinantes existentes receberão uma mensagem de e-mail informando sobre a nova versão. Para obter mais informações sobre o processo de adição de uma nova versão, consulte [ Adicionar uma nova versão ](https://docs.aws.amazon.com/marketplace/latest/userguide/ami-single-ami-products.html#single-ami-adding-version) no Guia do *AWS Marketplace vendedor*.

**Erros assíncronos **

Os erros a seguir são específicos `AddDeliveryOptions` das ações no AWS Marketplace Catalog API. Esses erros são retornados quando você liga `DescribeChangeSet` após o processamento de um conjunto de alterações. Para obter mais informações sobre como usar `DescribeChangeSet` para obter o status de uma solicitação de alteração, consulte[Trabalhando com conjuntos de alterações](catalog-apis.md#working-with-change-sets).


| Código de erro | Mensagem de erro | 
| --- | --- | 
| NOME\_AMI INVÁLIDO | O prefixo (x) no nome da AMI é inválido. Forneça um novo nome usando o nome da sua empresa ou marca como prefixo.  | 
| PRODUTO\_INVÁLIDO | Use um produto limitado ou público existente.  | 
| TÍTULO\_DO\_VERSÃO DUPLICADO | O título da versão deve ser diferente de qualquer outro título de versão deste produto.  | 
| TÍTULO\_DO\_VERSÃO\_INVÁLIDO | Remova os espaços antes do símbolo da marca comercial.  | 
| TÍTULO\_DO\_VERSÃO\_INVÁLIDO | Remover caracteres não suportados: [x, y, z]  | 
| TÍTULO\_DO\_VERSÃO\_INVÁLIDO | Remova os espaços do início do título da versão.  | 
| TÍTULO\_DO\_VERSÃO\_INVÁLIDO | Forneça o título da versão com menos de [x] caracteres.  | 
| NOTAS DE LANÇAMENTO INVÁLIDAS | Remova os espaços antes do símbolo da marca comercial.  | 
| NOTAS DE LANÇAMENTO INVÁLIDAS | Remover caracteres não suportados: [x, y, z]  | 
| NOTAS DE LANÇAMENTO INVÁLIDAS | Remova os espaços do início das notas de lançamento.  | 
| NOTAS DE LANÇAMENTO INVÁLIDAS | Forneça notas de lançamento com menos de (x) caracteres.  | 
| INSTRUÇÕES\_DE\_USO INVÁLIDAS | Remova os espaços antes do símbolo da marca comercial.  | 
| INSTRUÇÕES\_DE\_USO INVÁLIDAS | Remover caracteres não suportados: [x, y, z]  | 
| INSTRUÇÕES\_DE\_USO INVÁLIDAS | Remova os espaços do início das notas de lançamento.  | 
| INSTRUÇÕES\_DE\_USO INVÁLIDAS | Forneça instruções de uso com menos de (x) caracteres.  | 
| TIPO\_INSTÂNCIA\_RECOMENDADO\_NOT\_DISPONÍVEL | Forneça um tipo de instância existente e disponível.  | 
| TIPO\_DE\_INSTÂNCIA\_RECOMENDADO INVÁLIDO | Forneça um tipo de instância válido.  | 
| GRUPO\_DE\_SEGURANÇA INVÁLIDO | As portas do grupo de segurança devem estar entre 1 e [max].  | 
| GRUPO\_DE\_SEGURANÇA INVÁLIDO | Forneça um valor para os intervalos de IP CIDR.  | 
| GRUPO\_DE\_SEGURANÇA INVÁLIDO | Forneça uma porta inicial do grupo de segurança que não seja maior que a porta final.  | 
| PROTOCOLO\_DE\_GRUPO\_DE\_SEGURANÇA INVÁLIDO | O protocolo do grupo de segurança deve ser 'tcp' ou 'udp'.  | 
| CIDR\_IP INVÁLIDO | Forneça um intervalo de IP CIDR padrão no formato '0.0.0. 0/0'.  | 
| PORTA\_ENDPOINT\_ENDPOINT\_INVÁLIDA | Forneça uma porta de endpoint menor que [x].  | 
| PORTA\_ENDPOINT\_ENDPOINT\_INVÁLIDA | Forneça uma porta de endpoint entre 1 e [max].  | 
| PORTA\_ENDPOINT\_ENDPOINT\_INVÁLIDA | Forneça a porta do endpoint.  | 
| CAMINHO\_RELATIVO\_ENDPOINT\_ENDPOINT\_INVÁLIDO | Remova os espaços no caminho relativo.  | 
| CAMINHO\_RELATIVO\_ENDPOINT\_ENDPOINT\_INVÁLIDO | Remova o '/' anterior do caminho relativo.  | 
| SISTEMA\_OPERACIONAL\_INCOMPATÍVEL | Forneça o nome e a versão do sistema operacional compatíveis com os tipos de instância: [x]  | 
| NOME\_DO\_SISTEMA\_OPERACIONAL\_INCOMPATÍVEL | Forneça um nome com menos de (x) caracteres.  | 
| NOME\_DO\_SISTEMA\_OPERACIONAL\_INCOMPATÍVEL | Forneça o nome do sistema operacional compatível.  | 
| VERSÃO\_DO\_SISTEMA\_OPERACIONAL\_INCOMPATÍVEL | Forneça uma versão com menos de (x) caracteres.  | 
| PORTA\_DIGITALIZAÇÃO\_INVÁLIDA | Forneça uma porta de digitalização entre 1 e [max].  | 
| AMI\_ID INVÁLIDO | Forneça um ID de AMI válido.  | 
| CÓDIGO\_AMI\_PRODUTO\_EXISTENTE | Remova o código do produto anexado à imagem X.  | 
| ARQUITETURA\_AMI\_INVÁLIDA | Forneça uma nova AMI com arquitetura [x].  | 
| TIPO\_DA\_VIRTUALIZAÇÃO\_AMI\_INVÁLIDO | Forneça uma nova AMI com tipo de virtualização [x].  | 
| TIPO\_DA\_VIRTUALIZAÇÃO\_AMI\_INVÁLIDO | Forneça o volume [z] esperado na imagem [x].  | 
| INCOMPATIBLE\_AMI | Forneça uma nova AMI, pois a arquitetura [x] em [y] não é suportada pelos seguintes tipos de instância: [z]  | 
| INCOMPATIBLE\_AMI | Forneça uma nova AMI, pois o tipo de virtualização [x] em [y] não é suportado pelos seguintes tipos de instância: [z]  | 
| INCOMPATIBLE\_AMI | Ative o suporte de ENA para a imagem x porque os seguintes tipos de instância exigem suporte de ENA: [y]  | 
| ATIVO NÃO ENCONTRADO | Verifique se [ami-id] existe na região us-east-1 de [account-id] Conta da AWS e se o [ARN] AccessARN fornecido tem permissões para compartilhar essa AMI. AWS Marketplace | 
| ASSET\_ACCESS\_EXCEPTION | Não é possível copiar a AMI [x] na AWS Marketplace conta.  | 
| ERRO\_DE\_DIGITALIZAÇÃO | Corrija a vulnerabilidade de segurança [y] na imagem [x].  | 
| ATIVO NÃO ENCONTRADO | Verifique se [afi-id] existe na região us-east-1 de [account-id] Conta da AWS e se o [ARN] AccessARN fornecido tem permissões para compartilhar essa AFI. AWS Marketplace | 
| ASSET\_ACCESS\_EXCEPTION | Não é possível acessar o AFI. Verifique se o AccessARN fornecido pelo [ARN] tem permissões para compartilhar essa AFI AWS Marketplace e a função de acesso A conta é proprietária da AFI.  | 
| TIPO\_FPGA\_INSTANCE\_TYPE AUSENTE | Nenhum tipo de instância baseado em FPGA foi encontrado. Use o tipo de AddInstanceTypes alteração para adicionar o tipo de instância baseado em FPGA.  | 

Você também pode criar um AMI-based produto usando Portal de gerenciamento do AWS Marketplace o. Para obter mais informações, consulte os produtos [ AMI ](https://docs.aws.amazon.com/marketplace/latest/userguide/ami-single-ami-products.html) no Guia do *AWS Marketplace vendedor*.

Para ver um passo a passo que mostra como automatizar a atualização de seu AMI-based produto, você também pode consultar o vídeo [ Automatizando atualizações em suas listas de produtos AWS Marketplace com a API Catalog (5:08). ](https://www.youtube.com/watch?v=7KpUJ6Wcqrg)

## Atualizar as informações da versão
<a name="ami-update-version"></a>

Você pode usar a API Catalog para atualizar os detalhes de uma versão existente do seu AMI-based produto em AWS Marketplace. 

**nota**  
Para obter mais informações sobre como atualizar as informações da versão usando o Portal de gerenciamento do AWS Marketplace, consulte [ Atualização das informações da versão ](https://docs.aws.amazon.com/marketplace/latest/userguide/ami-single-ami-products.html#single-ami-updating-version) no Guia do *AWS Marketplace vendedor*. 

Você não pode atualizar a AMI para a versão. Se você precisar atualizar a AMI, crie uma nova versão.

Para adicionar uma nova versão, chame a operação da `StartChangeSet` API com o tipo de `UpdateDeliveryOptions` alteração, conforme mostrado no exemplo a seguir.

**Sintaxe da solicitação**

```
POST /StartChangeSet HTTP/1.1
Content-type: application/json

{
  "Catalog": "AWSMarketplace",
  "ChangeSet":
  [
    {
      "ChangeType": "UpdateDeliveryOptions",
      "Entity":
      {
        "Identifier": "example1-abcd-1234-5ef6-7890abcdef12@1",
        "Type": "AmiProduct@1.0"
      },
      "DetailsDocument":
      {
        "Version":
        {
          "ReleaseNotes": "*My new Release notes*"
        },
        "DeliveryOptions":
        [
          {
            "Id": "example1-2222-cccc-2222-cccccccccccc",
            "Details":
            {
              "AmiDeliveryOptionDetails":
              {
                "UsageInstructions": "Easy to use AMI"
              }
            }
          },
          {
            "Id": "example1-2222-dddd-2222-dddddddddddd",
            "Details":
            {
              "DeploymentTemplateDeliveryOptionDetails":
              {work with ami
                "DeliveryOptionTitle": "My updated delivery option title",
                "UsageInstructions": "Updated usage instructions here."
              }
            }
          }
        ]
      }
    }
  ]
}
```

A seguir estão as informações sobre os campos de entrada que você fornece para adicionar o tipo de `UpdateDeliveryOptions` alteração. Para obter mais informações sobre esses campos, consulte [ Atualização das informações da versão ](https://docs.aws.amazon.com/marketplace/latest/userguide/ami-single-ami-products.html#single-ami-updating-version) no Guia do AWS Marketplace vendedor.
+ **Entidade ** (objeto) (obrigatório) — Seu AMI-based produto. 
  + **Identificador ** (string) (obrigatório) — ID do seu produto. Para obter mais informações, consulte [Identificador](catalog-apis.md#identifier).
  + **Tipo ** (string) (obrigatório) - `Type` É baseado no método de entrega (tipo de produto) que seu produto usará:`AmiProduct@1.0`. 
+ **DetailsDocument**(objeto) (obrigatório) — Detalhes da solicitação. Ele inclui todas as informações sobre a versão do seu AMI-based produto que você gostaria de atualizar. Os campos incluídos são todos opcionais, mas você deve incluir pelo menos um campo para atualizar.
  + **Versão ** (objeto) — Detalhes sobre a versão do software.
    + **ReleaseNotes**(string) — Notas para que os compradores falem sobre as mudanças de uma versão para a outra. 
  + **DeliveryOptions**(matriz de objetos) — Lista de objetos de opção de entrega. Inclua somente as opções de entrega que você deseja atualizar.
    + Para a opção de * entrega * AMI (independente), especifique um objeto com os detalhes a seguir. Inclua somente os campos que você deseja atualizar. Todos os campos são opcionais, salvo indicação em contrário.
      + **Id ** (string) (obrigatório) — Identificador exclusivo para a opção de entrega (você pode obter o identificador exclusivo da opção de entrega chamando a `DescribeEntity` ação no produto que você está atualizando).
      + **Detalhes ** (objeto) — Contém os detalhes de uma opção de entrega da AMI. Observe que esse objeto de detalhes aninhado * não * precisa ter um escape duplo.
        + **AmiDeliveryOptionDetails**(objeto) — Os detalhes de uma opção de entrega da AMI.
          + **UsageInstructions**(string) — Instruções para usar a AMI ou um link para obter mais informações sobre a AMI.
          + **AccessEndpointUrl**(objeto) — Usado para criar um caminho para acessar a AMI depois que ela for usada.
            + **Porta ** (string) — O número da porta usada para acessar o serviço em execução na AMI.
            + **Protocolo ** (string) — O protocolo (`http`ou`https`) usado para acessar o serviço em execução na AMI.
            + **RelativePath**(string) — O caminho da raiz da web para acessar o serviço em execução na AMI (por exemplo{{/index.html}}).
          + **RecommendedInstanceType**(string) — O tipo de instância recomendado para executar o serviço com a AMI e é o padrão para instalações do seu serviço com 1 clique.
          + **SecurityGroups**(matriz de objetos) — Uma lista de objetos representando regras de entrada para os grupos criados automaticamente para a versão:
            + **FromPort**(integer) — A porta de origem.
            + **IpProtocol**(string) — O protocolo a ser usado (`tcp`ou`idp`).
            + **IpRanges**(matriz de cadeias de caracteres) — intervalos de IP permitidos, no formato CIDR (no formato xxx.xxx.xxx. * xxx/nn*, por exemplo,{{192.0.2.0/24}}).
            + **ToPort**(inteiro) — A porta de destino.
    + Para * AMI com opção CloudFormation * de entrega, especifique um objeto com os detalhes a seguir. Inclua somente os campos que você deseja atualizar. Todos os campos são opcionais, salvo indicação em contrário.
      + **Id ** (string) (obrigatório) — Identificador exclusivo para a opção de entrega (você pode obter o identificador exclusivo da opção de entrega chamando a `DescribeEntity` ação no produto que você está atualizando).
      + **Detalhes ** (objeto) — Contém os detalhes de uma opção de entrega da AMI. Observe que esse objeto de detalhes aninhado * não * precisa ter um escape duplo.
        + **DeploymentTemplateDeliveryOptionDetails**(objeto) — Use para fornecer os detalhes de cada opção de entrega de CFT.
          + **DeliveryOptionTitle**(string) — Título da opção de entrega.
          + **ShortDescription**(string) — Breve descrição da opção de entrega do seu CloudFormation modelo.
          + **LongDescription**(string) — Descrição detalhada da opção de entrega do seu CloudFormation modelo.
          + **UsageInstructions**(string) — Instruções para usar a AMI ou um link para obter mais informações sobre a AMI.
          + **RecommendedInstanceType**(string) — O tipo de instância recomendado para executar o serviço com a AMI e é o padrão para instalações do seu serviço com 1 clique. Para obter uma lista dos tipos de instância, consulte Tipos de [ instância ](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) no Guia do usuário do * Amazon Elastic Compute Cloud para instâncias * Linux.
          + **ArchitectureDiagram**(string) — URL para a localização do seu diagrama arquitetônico no Amazon S3. 
          + **Modelo ** (string) — URL para a localização do seu CloudFormation modelo no Amazon S3. 
          + **TemplateSources**(matriz de objetos)
            + **ParameterName**(string) — Nome do parâmetro no CloudFormation modelo para o qual a AMI nesta versão deve ser passada. Para obter mais informações, consulte [Requisitos dos detalhes de AMI](https://docs.aws.amazon.com/marketplace/latest/userguide/cloudformation.html#ami-requirements-sse).
            + **AmiSource**(objeto)
              + **AmiId**(string) — ID da AMI de origem, localizada no Região da AWS local em que a API está sendo chamada (atualmente deve estar sempre no Leste dos EUA (Norte da Virgínia) porque essa é a única região em que a API do catálogo está disponível). Deve pertencer à conta do chamador.
              + **AccessRoleArn**(string) — função do IAM Amazon Resource Name (ARN) usada Região da AWS para acessar a AMI fornecida. Para obter detalhes sobre como criar e usar esse ARN, consulte [ Conceder ao AWS Marketplace acesso à sua AMI ](https://docs.aws.amazon.com/marketplace/latest/userguide/ami-single-ami-products.html#single-ami-marketplace-ami-access) no Guia * do *AWS Marketplace vendedor.
              + **UserName**(string) — Nome de usuário de login para acessar o sistema operacional (OS) na AMI. Normalmente, `ec2-user` para AMIs Linux ou `Administrator` Windows.
              + **OperatingSystemName**(string) — Nome do sistema operacional exibido aos compradores.
              + **OperatingSystemVersion**(string) — Sequência de caracteres da versão do sistema operacional exibida aos compradores.

**Sintaxe de resposta **

Um conjunto de alterações é criado para sua solicitação. A resposta a essa solicitação fornece o `ChangeSetId` e `ChangeSetArn` para o conjunto de alterações e tem a seguinte aparência.

```
{
  "ChangeSetId": "example123456789012abcdef",
   "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef"
}
```

A solicitação de alteração é adicionada a uma fila e processada. Isso incluiu a validação de informações para garantir que atendam às AWS Marketplace diretrizes. O processo de validação pode levar de alguns minutos a algumas horas.

Você pode verificar o status da solicitação por meio da Portal de gerenciamento do AWS Marketplace API Catalog ou diretamente pela API Catalog usando a operação da `[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)` API.

Para obter mais informações sobre conjuntos de alterações, consulte [Trabalhando com conjuntos de alterações](catalog-apis.md#working-with-change-sets). Para obter mais informações sobre erros nos conjuntos de alterações de produtos do vendedor, consulte[Alterar o status e os erros do conjunto](work-with-seller-products.md#seller-product-change-set-errors).

**Erros assíncronos **

Os erros a seguir são específicos `UpdateDeliveryOptions` das ações no AWS Marketplace Catalog API. Esses erros são retornados quando você liga `DescribeChangeSet` após o processamento de um conjunto de alterações. Para obter mais informações sobre como usar `DescribeChangeSet` para obter o status de uma solicitação de alteração, consulte[Trabalhando com conjuntos de alterações](catalog-apis.md#working-with-change-sets).

Você pode recuperar `UpdatePricingTerms` ações usando a `DescribeChangeSet` operação após o início do processamento do conjunto de alterações. Para obter mais informações sobre detalhes de erros e solução de problemas, consulte[Alterar o status e os erros do conjunto](work-with-seller-products.md#seller-product-change-set-errors), anteriormente, neste guia.


| Código de erro | Mensagem de erro | 
| --- | --- | 
| PRODUTO\_INVÁLIDO | Use um produto limitado ou público existente.  | 
| IDS\_OPÇÕES\_DE\_ENTREGA AUSENTES | Forneça pelo menos um ID de opção de entrega.  | 
| IDS\_OPÇÕES\_DE\_ENTREGA INVÁLIDAS | Forneça os IDs das opções de entrega que podem ser encontrados no produto. IDs não encontrados: [x]  | 
| OPÇÕES\_DE\_ENTREGA INVÁLIDAS | Forneça IDs de opções de entrega que pertençam à mesma versão.  | 

## Restringir uma versão
<a name="ami-restrict-version"></a>

Você pode usar a API Catalog para restringir uma versão do seu AMI-based produto. Isso impede que novos compradores usem essa versão, mas a mantém disponível para os compradores existentes. Restringir todas as opções de entrega de uma versão restringe a versão. Restringir uma ou mais opções de entrega de uma versão, mas não todas, restringe apenas as opções de entrega nessa versão. Você deve sempre ter pelo menos uma versão irrestrita de um produto disponível, portanto, não é possível restringir a última versão disponível publicamente de um produto.

**nota**  
Para obter mais informações sobre como restringir as versões da AMI AWS Marketplace por meio do Portal de gerenciamento do AWS Marketplace, consulte [ Restringindo uma versão ](https://docs.aws.amazon.com/marketplace/latest/userguide/ami-single-ami-products.html#single-ami-restricting-version) no Guia do *AWS Marketplace vendedor. *

Para restringir uma versão, chame a operação da `StartChangeSet` API com o tipo de `RestrictDeliveryOptions` alteração, conforme mostrado no exemplo a seguir.

**nota**  
Todos os assinantes podem usar a versão atual, independentemente do status da restrição. AWS Marketplace as diretrizes exigem que você continue oferecendo suporte aos compradores existentes por 90 dias após restringir a versão. A AMI será marcada como obsoleta depois que a versão for restrita. Para obter mais informações, consulte [Desativar uma AMI](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ami-deprecate.html) no *Guia do usuário do Amazon Elastic Compute Cloud para instâncias do Windows *.

**Sintaxe da solicitação**

```
POST /StartChangeSet HTTP/1.1
Content-type: application/json

{
  "Catalog": "AWSMarketplace",
  "ChangeSet":
  [
    {
      "ChangeType": "RestrictDeliveryOptions",
      "Entity":
      {
        "Identifier": "{{example1-abcd-1234-5ef6-7890abcdef12@1}}",
        "Type": "AmiProduct@1.0"
      },
      "DetailsDocument":
      {
        "DeliveryOptionIds":
        [
          "{{example1-2222-cccc-2222-cccccccccccc}}"
        ]
      }
    }
  ]
}
```

A seguir estão as informações sobre os campos de entrada que você fornece para adicionar o tipo de `RestrictDeliveryOptions` alteração:
+ **Entidade ** (objeto) (obrigatório) — Seu AMI-based produto. 
  + **Identificador ** (string) (obrigatório) — ID do seu produto. Para obter mais informações, consulte [Identificador](catalog-apis.md#identifier).
  + **Tipo ** (string) (obrigatório) - `Type` É baseado no método de entrega (tipo de produto) que seu produto usará:`AmiProduct@1.0`. 
+ **DetailsDocument**(objeto) (obrigatório) — Detalhes da solicitação. Ele inclui IDs para as versões do seu AMI-based produto que você gostaria de restringir. 
  + **DeliveryOptionIds**(matriz de objetos) — Lista de `DeliveryOption` IDs das versões que você deseja restringir. Você pode obter o identificador exclusivo do `DeliveryOption` chamando a `DescribeEntity` ação na versão que você está restringindo.

**Sintaxe de resposta **

Um conjunto de alterações é criado para sua solicitação. A resposta a essa solicitação fornece o `ChangeSetId` e `ChangeSetArn` para o conjunto de alterações e tem a seguinte aparência.

```
{
  "ChangeSetId": "example123456789012abcdef",
   "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:{{123456789012}}:AWSMarketplace/ChangeSet/{{example123456789012abcdef}}"
}
```

A solicitação de alteração é adicionada a uma fila e processada. Isso incluiu a validação de informações para garantir que atendam às AWS Marketplace diretrizes. O processo de validação pode levar de alguns minutos a algumas horas.

Você pode verificar o status da solicitação por meio da Portal de gerenciamento do AWS Marketplace API Catalog ou diretamente pela API Catalog usando a operação da `[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)` API.

**Erros assíncronos **

Os erros a seguir são específicos `RestrictDeliveryOptions` das ações no AWS Marketplace Catalog API. Esses erros são retornados quando você liga `DescribeChangeSet` após o processamento de um conjunto de alterações. Para obter mais informações sobre como usar `DescribeChangeSet` para obter o status de uma solicitação de alteração, consulte[Trabalhando com conjuntos de alterações](catalog-apis.md#working-with-change-sets).


| Código de erro | Mensagem de erro | 
| --- | --- | 
| PRODUTO\_INVÁLIDO | Use um produto público existente.  | 
| IDS\_OPÇÕES\_DE\_ENTREGA AUSENTES | Forneça pelo menos um ID de opção de entrega.  | 
| IDS\_OPÇÕES\_DE\_ENTREGA INVÁLIDAS | Forneça os IDs das opções de entrega que podem ser encontrados no produto. IDs não encontrados: [x]  | 
| OPÇÃO\_DE\_ENTREGA INVÁLIDA | Forneça IDs de opções de entrega que estejam em um estado público. IDs que não estão em estado público: [x]  | 
| TODAS AS OPÇÕES DE ENTREGA SÃO RESTRITAS | Forneça menos opções de entrega para restringir, pois pelo menos uma deve permanecer no estado público.  | 

## Atualize o futuro Região da AWS Suporte  
<a name="update-future-region-support"></a>

Você pode usar a API Catalog para alterar futuras preferências de Região da AWS suporte para seu AMI-based produto em AWS Marketplace. 

**nota**  
Para obter mais informações sobre como alterar o suporte futuro da região usando o Portal de gerenciamento do AWS Marketplace, consulte [ Atualizar suporte para futuras regiões da AWS ](https://docs.aws.amazon.com/marketplace/latest/userguide/ami-single-ami-products.html#single-ami-updating-future-region-support) no Guia do *AWS Marketplace vendedor*. 

**nota**  
O tipo de `UpdateFutureRegionSupport` alteração só está disponível em`AmiProduct@1.0`.

Para alterar futuras preferências de Região da AWS suporte, chame a operação da `StartChangeSet` API com o tipo de `UpdateFutureRegionSupport` alteração, conforme mostrado no exemplo a seguir.

**Sintaxe da solicitação**

```
POST /StartChangeSet HTTP/1.1
Content-type: application/json

{
  "Catalog": "AWSMarketplace",
  "ChangeSet":
  [
    {
      "ChangeType": "UpdateFutureRegionSupport",
      "Entity":
      {
        "Identifier": "{{prod-example12345}}",
        "Type": "AmiProduct@1.0"
      },
      "DetailsDocument":
      {
        "FutureRegionSupport":
        {
          "SupportedRegions":
          [
            "All"
          ]
        }
      }
    }
  ]
}
```

Forneça informações para os campos para adicionar o tipo de `UpdateFutureRegionSupport` alteração:
+ `Entity`(objeto) (obrigatório) — Seu AMI-based produto. 
  + `Identifier`(string) (obrigatório) — Seu ID do produto. Para obter mais informações, consulte [Identificador](catalog-apis.md#identifier).
  + `Type`(string) (obrigatório) — `Type` É baseado no método de entrega (tipo de produto) que seu produto usará:`AmiProduct@1.0`. 
+ `DetailsDocument`(objeto) (obrigatório) — Os detalhes necessários para executar ChangeSet o.
  + `FutureRegionSupport`— Objeto
    + `SupportedRegions`— Single-element matriz de cordas

      Valores suportados pelo elemento: um dos [`"All"`,`"US"`,`"None"`]

**Sintaxe de resposta **

Um conjunto de alterações é criado para sua solicitação. A resposta a essa solicitação fornece o `ChangeSetId` e `ChangeSetArn` para o conjunto de alterações e tem a seguinte aparência.

```
{
  "ChangeSetId": "{{example123456789012abcdef}}",
  "ChangeSetArn": "arn:aws:aws-marketplace:{{us-east-1}}:{{123456789012}}:AWSMarketplace/ChangeSet/{{example123456789012abcdef}}"
}
```

A solicitação de alteração é adicionada a uma fila e processada. Isso incluiu a validação de informações para garantir que atendam às AWS Marketplace diretrizes. O processo de validação pode levar de alguns minutos a algumas horas.

Você pode verificar o status da solicitação por meio da Portal de gerenciamento do AWS Marketplace API Catalog ou diretamente pela API Catalog usando a operação da `[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)` API.

**Erros assíncronos **

Os erros a seguir são específicos `UpdateFutureRegionSupport` das ações no AWS Marketplace Catalog API. Esses erros são retornados quando você liga `DescribeChangeSet` após o processamento de um conjunto de alterações. Para obter mais informações sobre como usar `DescribeChangeSet` para obter o status de uma solicitação de alteração, consulte[Trabalhando com conjuntos de alterações](catalog-apis.md#working-with-change-sets).


| Código de erro  | Mensagem de erro | 
| --- | --- | 
| MUITAS\_REGIÕES\_DE\_ | Atualmente, somente 1 valor é suportado para FutureRegionSupport: Todos, EUA ou Nenhum  | 
| REGIÕES\_INVÁLIDAS | As regiões solicitadas [a, b, c] são inválidas ou não estão disponíveis. Somente os valores suportados são [x, y, z].  | 
| INVALID\_INPUT | SupportedRegions não pode estar vazio.  | 

## Adicionar um compatível Região da AWS
<a name="add-regions"></a>

Você pode usar a API Catalog para adicionar novos suportes Regiões da AWS para seu AMI-based produto em AWS Marketplace. 

**nota**  
Para obter mais informações sobre como adicionar novas regiões compatíveis usando o Portal de gerenciamento do AWS Marketplace, consulte [ Adicionar uma região da AWS ](https://docs.aws.amazon.com/marketplace/latest/userguide/ami-single-ami-products.html#single-ami-adding-regions) no Guia do *AWS Marketplace vendedor*. 

**nota**  
O tipo de `AddRegions` alteração só está disponível em`AmiProduct@1.0`.

Para adicionar novas regiões compatíveis, chame a operação da `StartChangeSet` API com o tipo de `AddRegions` alteração, conforme mostrado no exemplo a seguir.

**Sintaxe da solicitação**

```
POST /StartChangeSet HTTP/1.1
Content-type: application/json

{
  "Catalog": "AWSMarketplace",
  "ChangeSet": [
    {
      "ChangeType": "AddRegions",
      "DetailsDocument": {
        "Regions": [
          "{{us-east-1}}",
          "{{ap-northeast-2}}"
        ]
      },
      "Entity": {
        "Identifier": "{{prod-123456@1}}",
        "Type": "AmiProduct@1.0"
      }
    }
  ]
}
```

Forneça informações para os campos para adicionar o tipo de `AddRegions` alteração. 
+ `Entity`(objeto) (obrigatório) — Seu AMI-based produto. 
  + `Identifier`(string) (obrigatório) — Seu ID do produto. Para obter mais informações, consulte [Identificador](catalog-apis.md#identifier).
  + `Type`(string) (obrigatório) — `Type` É baseado no método de entrega (tipo de produto) que seu produto usará:`AmiProduct@1.0`. 
+   
**Example**  
  + `Regions`: matriz de strings

    Valores suportados pelo elemento: cadeias de Região da AWS código válidas. 

    Por exemplo, [`"us-east- 1"`].

**Sintaxe de resposta **

Um conjunto de alterações é criado para sua solicitação. A resposta a essa solicitação fornece o `ChangeSetId` e `ChangeSetArn` para o conjunto de alterações e tem a seguinte aparência.

```
{
  "ChangeSetId": "{{example123456789012abcdef}}",
   "ChangeSetArn": "arn:aws:aws-marketplace:{{us-east-1}}:{{123456789012}}:AWSMarketplace/ChangeSet/{{example123456789012abcdef}}"
}
```

A solicitação de alteração é adicionada a uma fila e processada. Isso incluiu a validação de informações para garantir que atendam às AWS Marketplace diretrizes. O processo de validação pode levar de alguns minutos a algumas horas.

Você pode verificar o status da solicitação por meio da Portal de gerenciamento do AWS Marketplace API Catalog ou diretamente pela API Catalog usando a operação da `[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)` API.
+ Se o status de execução do conjunto de alterações for`SUCCEEDED`: Uma nova entidade `Identifier` (ou`EntityId`) é gerada. Você pode usar a operação [`DescribeEntity`](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeEntity.html) da API na entidade do produto para verificar o resultado. 
+ Se o status de execução do conjunto de alterações for`CLIENT_ERROR`: A `DescribeChangeSet` resposta fornece os detalhes do erro, bem como as ações correspondentes a serem tomadas para corrigir o erro.

**Erros assíncronos **

Os erros a seguir são específicos `AddRegions` das ações no AWS Marketplace Catalog API. Esses erros são retornados quando você liga `DescribeChangeSet` após o processamento de um conjunto de alterações. Para obter mais informações sobre como usar `DescribeChangeSet` para obter o status de uma solicitação de alteração, consulte[Trabalhando com conjuntos de alterações](catalog-apis.md#working-with-change-sets).


| Código de erro  | Mensagem de erro | 
| --- | --- | 
| REGIÕES\_INVÁLIDAS | As regiões solicitadas [a, b, c] são inválidas ou não estão disponíveis. Somente os valores suportados são [x, y, z].  | 
| INVALID\_INPUT | As regiões não podem estar vazias.  | 

## Restringir um Região da AWS
<a name="restrict-regions"></a>

Você pode usar a API Catalog para restringir o suporte anterior Regiões da AWS para seu AMI-based produto em AWS Marketplace. 

**nota**  
Para obter mais informações sobre como restringir regiões anteriormente suportadas usando o Portal de gerenciamento do AWS Marketplace, consulte [ Restringir uma região da AWS ](https://docs.aws.amazon.com/marketplace/latest/userguide/ami-single-ami-products.html#single-ami-restricting-regions) no Guia * do *AWS Marketplace vendedor. 

**nota**  
O tipo de `RestrictRegions` alteração só está disponível em`AmiProduct@1.0`.

Para restringir regiões suportadas anteriormente, chame a operação da `StartChangeSet` API com o tipo de `RestrictRegions` alteração, conforme mostrado no exemplo a seguir.

**Sintaxe da solicitação**

```
POST /StartChangeSet HTTP/1.1
Content-type: application/json

{
  "Catalog": "AWSMarketplace",
  "ChangeSet": [
    {
      "ChangeType": "RestrictRegions",
      "DetailsDocument": {
        "Regions": [
          "{{us-east-1}}",
          "{{ap-northeast-2}}"
        ]
      },
      "Entity": {
        "Identifier": "{{prod-123456@1}}",
        "Type": "AmiProduct@1.0"
      }
    }
  ]
}
```

Forneça informações para os campos para adicionar o tipo de `AddRegions` alteração. 
+ `Entity`(objeto) (obrigatório) — Seu AMI-based produto. 
  + `Identifier`(string) (obrigatório) — Seu ID do produto. Para obter mais informações, consulte [Identificador](catalog-apis.md#identifier).
  + `Type`(string) (obrigatório) — `Type` É baseado no método de entrega (tipo de produto) que seu produto usará:`AmiProduct@1.0`. 
+ **DetailsDocument**(objeto) (obrigatório) — Os detalhes necessários para executar ChangeSet o.
  + `Regions`— Matriz de cordas

    Valores suportados pelo elemento: cadeias Região da AWS de código válidas, como`"us-east-1"`.

**Sintaxe de resposta **

Um conjunto de alterações é criado para sua solicitação. A resposta a essa solicitação fornece o `ChangeSetId` e `ChangeSetArn` para o conjunto de alterações e tem a seguinte aparência.

```
{
  "ChangeSetId": "{{example123456789012abcdef}}",
   "ChangeSetArn": "arn:aws:aws-marketplace:{{us-east-1}}:{{123456789012}}:AWSMarketplace/ChangeSet/{{example123456789012abcdef}}"
}
```

A solicitação de alteração é adicionada a uma fila e processada. Isso incluiu a validação de informações para garantir que atendam às AWS Marketplace diretrizes. O processo de validação pode levar de alguns minutos a algumas horas.

Você pode verificar o status da solicitação por meio da Portal de gerenciamento do AWS Marketplace API Catalog ou diretamente pela API Catalog usando a operação da `[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)` API.
+ Se o status de execução do conjunto de alterações for `SUCCEEDED` — Uma nova entidade `Identifier` (ou`EntityId`) é gerada. Você pode usar `DescribeEntity` na entidade do produto para verificar o resultado. Para obter mais informações, consulte [`DescribeEntity`](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeEntity.html).
+ Se o status de execução do conjunto de alterações for`CLIENT_ERROR`: A `DescribeChangeSet` resposta fornece os detalhes do erro, bem como as ações correspondentes a serem tomadas para corrigir o erro.

**Erros assíncronos **

Os erros a seguir são específicos `AddRegions` das ações no AWS Marketplace Catalog API. Esses erros são retornados quando você liga `DescribeChangeSet` após o processamento de um conjunto de alterações. Para obter mais informações sobre como usar `DescribeChangeSet` para obter o status de uma solicitação de alteração, consulte[Trabalhando com conjuntos de alterações](catalog-apis.md#working-with-change-sets).


| Código de erro  | Mensagem de erro | 
| --- | --- | 
| REGIÕES\_INVÁLIDAS | As regiões solicitadas [a, b, c] são inválidas ou não estão disponíveis. Somente os valores suportados são [x, y, z].  | 
| INVALID\_INPUT | As regiões não podem estar vazias.  | 

## Adicionar um novo tipo de instância
<a name="add-instance-types"></a>

Você pode usar a API Catalog para adicionar novos tipos de instância ao seu AMI-based produto AWS Marketplace. 

**nota**  
Para obter mais informações sobre como adicionar tipos de instância usando o Portal de gerenciamento do AWS Marketplace, consulte [ Adicionar uma instância ](https://docs.aws.amazon.com/marketplace/latest/userguide/ami-single-ami-products.html#single-ami-adding-instance-types) no Guia do *AWS Marketplace vendedor*. 

`AddInstanceTypes`adicionará novos tipos de instância aos produtos existentes e aos produtos recém-criados ao criar um produto. O tipo de alteração atualizará todas as versões no documento do produto com um novo tipo de instância.

**nota**  
O tipo de `AddInstanceTypes` alteração só está disponível em`AmiProduct@1.0`.

Ao adicionar um tipo de instância restrito, o tipo de instância pode ser removido da lista restrita e adicionado à lista de tipos de instância disponíveis. Isso dá aos vendedores mais controle para alterar suas restrições de produtos. A lista de tipos de instância é intercambiável e não é um status restrito permanente para um produto.

Para produtos medidos internamente, os vendedores precisam ligar para diferentes tipos de alteração `AddDimensions` e `UpdatePricingTerms` atualizar os preços para o tipo de instância.

Para adicionar novos tipos de instância, chame a operação da `StartChangeSet` API com o tipo de `RestrictRegions` alteração, conforme mostrado no exemplo a seguir.

**Sintaxe da solicitação**

Somente o tipo de `AddInstanceTypes` alteração é mostrado abaixo. Embora seja necessário que os vendedores de AMI medidos internamente liguem `AddInstanceTypes` e `UpdatePricingTerms` alterem os tipos de AMI.

```
POST /StartChangeSet HTTP/1.1
Content-type: application/json

{
  "Catalog": "AWSMarketplace",
  "ChangeSet":
  [
    {
      "ChangeType": "AddInstanceTypes",
      "Entity":
      {
        "Identifier": "{{prod-example12345}}",
        "Type": "AmiProduct@1.0"
      },
      "DetailsDocument":
      {
        "InstanceTypes":
        [
          "m1.medium"
        ]
      }
    }
  ]
}
```

Forneça informações para os campos para adicionar o tipo de `AddInstanceTypes` alteração:
+ `Entity`(objeto) (obrigatório) — Seu AMI-based produto. 
  + `Identifier`(string) (obrigatório) — Seu ID do produto. Para obter mais informações, consulte [Identificador](catalog-apis.md#identifier).
  + `Type`(string) (obrigatório) — `Type` É baseado no método de entrega (tipo de produto) que seu produto usará:`AmiProduct@1.0`. 
+ **DetailsDocument**(objeto) (obrigatório) — Os detalhes necessários para executar o. nesse caso`InstanceTypes`. `ChangeSet`
  + `InstanceTypes`(matriz de strings) (obrigatório) — Lista de `InstanceTypes` para adicionar ao produto. Essas instâncias serão adicionadas às existentes`InstanceTypes`.

**Sintaxe de resposta **

Um conjunto de alterações é criado para sua solicitação. A resposta a essa solicitação fornece o `ChangeSetId` e `ChangeSetArn` para o conjunto de alterações e tem a seguinte aparência.

```
{
  "ChangeSetId": "{{example123456789012abcdef}}",
   "ChangeSetArn": "arn:aws:aws-marketplace:{{us-east-1}}:{{123456789012}}:AWSMarketplace/ChangeSet/{{example123456789012abcdef}}"
}
```

A solicitação de alteração é adicionada a uma fila e processada. Isso incluiu a validação de informações para garantir que atendam às AWS Marketplace diretrizes. O processo de validação pode levar de alguns minutos a algumas horas.

Você pode verificar o status da solicitação por meio da Portal de gerenciamento do AWS Marketplace API Catalog ou diretamente pela API Catalog usando a operação da `[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)` API.

**Validações síncronas **

As validações de esquema a seguir são específicas `AddInstanceTypes` das ações no. AWS Marketplace Catalog API Essas validações são realizadas quando você liga`StartChangeSet`. Se a solicitação não atender aos seguintes requisitos, ela falhará com uma resposta HTTP.


| Campo de entrada | Regra de validação | HTTP | 
| --- | --- | --- | 
| InstanceTypes | Obrigatório | 422 | 
| InstanceTypes | Não deve estar vazio | 422 | 
| InstanceTypes | As entradas devem ter entre 1 e 24 caracteres. Deve corresponder a ^ [A-Za-z0-9\_.-] \+$ | 422 | 
| InstanceTypes | As inscrições devem ser exclusivas | 422 | 
| InstanceTypes | Não deve ter mais de 1500 entradas | 422 | 
| Uma propriedade desconhecida | Nenhuma propriedade adicional é permitida | 422 | 

**Erros assíncronos **

Os erros a seguir são específicos `AddInstanceTypes` das ações no AWS Marketplace Catalog API. Esses erros são retornados quando você liga `DescribeChangeSet` após o processamento de um conjunto de alterações. Para obter mais informações sobre como usar `DescribeChangeSet` para obter o status de uma solicitação de alteração, consulte[Trabalhando com conjuntos de alterações](catalog-apis.md#working-with-change-sets).


| Código de erro | Mensagem de erro | 
| --- | --- | 
| TIPOS\_INSTÂNCIA\_INVÁLIDOS | Os seguintes tipos de instância não são válidos: [x]  | 
| VIRTUALIZAÇÃO\_INSTÂNCIA\_INVÁLIDA | A virtualização do produto é [x]. Não é compatível com os seguintes tipos de instância: [x]  | 
| ARQUITETURA\_AMI\_INVÁLIDA | A arquitetura de CPU do produto é '%s'.” \+ “Não é compatível com os seguintes tipos de instância: [x]  | 
|  SISTEMA\_OPERACIONAL\_INCOMPATÍVEL  | Os tipos de instância são incompatíveis com o sistema operacional definido no produto. Forneça tipos de instância compatíveis com o sistema operacional definido no produto.  | 
| TIPO\_DO\_PRODUTO INVÁLIDO | Use um único produto AMI existente.  | 
| CONFIGURAÇÃO\_ENA\_INVÁLIDA | O produto não é compatível com ENA. O suporte do ENA é exigido pelos seguintes tipos de instância: [x]  | 
| DIMENSÕES\_INVÁLIDAS | Nenhuma dimensão medida internamente foi encontrada para os tipos de instância: [x]  | 
| DIMENSÕES\_AUSENTES | Nenhuma dimensão encontrada para o produto. AddDimensions é necessário antes AddInstanceTypes.  | 
| ATUALIZAR\_PREÇO\_OBRIGATÓRIO | UpdatePricingTerms o tipo de alteração é necessário quando as dimensões medidas internamente estão disponíveis no produto.  | 

## Restringir um tipo de instância
<a name="restrict-instance-types"></a>

Você pode usar a API Catalog para limitar ou restringir os tipos de instância disponíveis para seu AMI-based produto em AWS Marketplace. 

**nota**  
Para obter mais informações sobre como limitar ou restringir os tipos de instância disponíveis usando o Portal de gerenciamento do AWS Marketplace, consulte [ Restringir uma instância ](https://docs.aws.amazon.com/marketplace/latest/userguide/ami-single-ami-products.html#single-ami-restricting-instance-types) no Guia * do *AWS Marketplace vendedor. 

Os assinantes existentes não serão afetados por essa mudança e poderão usar os tipos de instância restritos. No entanto, nenhum novo comprador poderá usar tipos de instância restritos. Para interromper as assinaturas atuais dos tipos de instância (quando os tipos de instância forem restritos), você deve entrar em contato com a equipe de operações do AWS Marketplace vendedor.

`RestrictInstanctTypes`restringe os tipos de instância a todas as versões no documento do produto. No tipo de `AddInstanceTypes` alteração, você está atualizando todas as versões do produto. Você não poderá restringir os tipos de instância recomendados. O tipo de instância recomendado está no nível da versão, então é possível que o vendedor não consiga restringir vários tipos de instância.

Para um produto medido internamente, você precisa ligar para diferentes tipos de alteração ao ligar. `RestrictDimensions` Isso evita que novas ofertas sejam criadas para os tipos de instâncias restritas.

**nota**  
O tipo de `RestrictInstanceTypes` alteração só está disponível em`AmiProduct@1.0`.

Para limitar ou restringir os tipos de instância disponíveis para seu AMI-based produto, chame a operação da `StartChangeSet` API com o tipo de `RestrictInstanceTypes` alteração, conforme mostrado no exemplo a seguir.

**Sintaxe da solicitação**

```
POST /StartChangeSet HTTP/1.1
Content-type: application/json

{
  "Catalog": "AWSMarketplace",
  "ChangeSet":
  [
    {
      "ChangeType": "RestrictInstanceTypes",
      "Entity":
      {
        "Identifier": "{{prod-example12345}}",
        "Type": "AmiProduct@1.0"
      },
      "DetailsDocument":
      {
        "InstanceTypes":
        [
          "m1.medium"
        ]
      }
    }
  ]
}
```

Forneça informações para os campos para adicionar o tipo de `RestrictInstanceTypes` alteração. 
+ `Entity`(objeto) (obrigatório) — Seu AMI-based produto. 
  + `Identifier`(string) (obrigatório) — Seu ID do produto. Para obter mais informações, consulte [Identificador](catalog-apis.md#identifier).
  + `Type`(string) (obrigatório) — `Type` É baseado no método de entrega (tipo de produto) que seu produto usará:`AmiProduct@1.0`. 
+ **DetailsDocument**(objeto) (obrigatório) — Os detalhes necessários para executar o. nesse caso`InstanceTypes`. `ChangeSet`
  + `InstanceTypes`(matriz de strings) (obrigatório) — Lista de `InstanceTypes` para restringir ao produto. Essas instâncias são adicionadas à atual (ou, se não houver nenhum tipo de instância existente, ela será adicionada) à restrita`InstanceTypes`.

**Sintaxe de resposta **

Um conjunto de alterações é criado para sua solicitação. A resposta a essa solicitação fornece o `ChangeSetId` e `ChangeSetArn` para o conjunto de alterações e tem a seguinte aparência.

```
{
  "ChangeSetId": "{{example123456789012abcdef}}",
   "ChangeSetArn": "arn:aws:aws-marketplace:{{us-east-1}}:{{123456789012}}:AWSMarketplace/ChangeSet/{{example123456789012abcdef}}"
}
```

A solicitação de alteração é adicionada a uma fila e processada. Isso incluiu a validação de informações para garantir que atendam às AWS Marketplace diretrizes. O processo de validação pode levar de alguns minutos a algumas horas.

Você pode verificar o status da solicitação por meio da Portal de gerenciamento do AWS Marketplace API Catalog ou diretamente pela API Catalog usando a operação da `[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)` API.

**Validações síncronas **

As validações de esquema a seguir são específicas `RestrictInstanceTypes` das ações no. AWS Marketplace Catalog API Essas validações são realizadas quando você liga`StartChangeSet`. Se a solicitação não atender aos seguintes requisitos, ela falhará com uma resposta HTTP.


| Campo de entrada | Regra de validação | HTTP | 
| --- | --- | --- | 
| InstanceTypes | Obrigatório | 422 | 
| InstanceTypes | Não deve estar vazio | 422 | 
| InstanceTypes | As entradas devem ter entre 1 e 24 caracteres. Deve corresponder a ^ [A-Za-z0-9\_.-] \+$ | 422 | 
| InstanceTypes | As inscrições devem ser exclusivas | 422 | 
| InstanceTypes | Não deve ter mais de 1500 entradas | 422 | 
| Uma propriedade desconhecida | Nenhuma propriedade adicional é permitida | 422 | 

**Erros assíncronos **

Os erros a seguir são específicos `RestrictInstanceTypes` das ações no AWS Marketplace Catalog API. Esses erros são retornados quando você liga `DescribeChangeSet` após o processamento de um conjunto de alterações. Para obter mais informações sobre como usar `DescribeChangeSet` para obter o status de uma solicitação de alteração, consulte[Trabalhando com conjuntos de alterações](catalog-apis.md#working-with-change-sets).


| Código de erro | Mensagem de erro | 
| --- | --- | 
| TIPOS\_ DE INSTÂNCIA\_ INVÁLIDOS | Os seguintes tipos de instância não são válidos: [x]  | 
| TIPO\_ DE PRODUTO\_ INVÁLIDO | Use um único produto AMI existente.  | 
| TIPO\_DE\_INSTÂNCIA DUPLICADA | Forneça tipos de instância sem duplicatas.  | 
| TIPO\_INSTÂNCIA\_INDISPONÍVEL | Forneça um tipo de instância disponível.  | 
|  INSTÂNCIA\_TIPO\_RESTRITA RECOMENDADA  | Os seguintes tipos de instância não podem ser restritos. O tipo de instância recomendado deve ser alterado para outro antes de ser restringido. ID das opções de entrega [X] Tipo de instância [X]  | 
|  DIMENSÕES\_NÃO\_RESTRITAS  | Restrinja as dimensões antes de restringir os tipos de instância medidos internamente: [x]  | 
|  REGION\_NO\_INSTANCES  | Seus tipos de instância restritos causariam falha no lançamento do produto na região: X. Considere restringir menos instâncias.  | 
| RESTRIÇÃO\_INCOMPATÍVEL | Seus tipos de instância restritos causariam um produto sem tipos de instância baseados em FPGA para AFIs. O produto precisa oferecer suporte a pelo menos um tipo de instância baseado em FPGA.  | 