

A referência da 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 autorizações de revenda usando oAWS MarketplaceAPIs
<a name="work-with-resale-authorizations"></a>

Você pode usar o AWS Marketplace Catalog API para automatizar tarefas para trabalhar com autorizações de revenda. 

Embora o *produto* descreva o que está sendo vendidoAWS Marketplace, a *Autorização de Revenda* (também conhecida como oportunidade) descreve os termos e regras sobre como esse produto está autorizado a ser revendido. AWS Marketplace O *CPPO* é o alvo da Autorização de Revenda.

Uma autorização de revenda tem um conjunto de termos e regras a serem aceitos para um contrato de revenda entre fabricantes e parceiros de canal. Aceitar os termos da Autorização de Revenda permite que o revendedor crie ofertas para o produto de acordo com as condições expressas nos termos.

Há dois tipos de regras em uma autorização de revenda:
+ **AvailabilityRule**— Controla o ciclo de vida da autorização de revenda em. AWS Marketplace
+ **PartnerTargetingRule **— Especifica se a autorização de revenda deve ser acessível a um conjunto específico de parceiros de canal.

Consulte os recursos a seguir:
+ *Para laboratórios completos com exemplos de códigos funcionais, consulte [Laboratório: Autorizar um revendedor no workshop do vendedor](https://catalog.workshops.aws/mpseller/en-US/manage-offers-with-api/authorize-a-reseller). AWS Marketplace*
+ Para exemplos de código de solicitações de API, consulte exemplos de [Python](https://github.com/aws-samples/aws-marketplace-reference-code/tree/main/python/src/catalog_api/resale_authorization) e [Java](https://github.com/aws-samples/aws-marketplace-reference-code/tree/main/java/resources/changeSets/channel_partner_offers) em *AWSSamples* on. GitHub
+ Para assistir a um vídeo sobre como criar autorizações de revenda, consulte [Criar autorizações de revenda usando a AWS Marketplace API](https://www.youtube.com/watch?v=vLIbvFYI974) de catálogo em. YouTube

Os tópicos a seguir descrevem como usar a API de catálogo para criar e atualizar autorizações de revenda:

**Topics**
+ [Pré-requisitos de autorização de revenda](#prerequisites)
+ [Criar uma nova autorização de revenda](#create-resale-authorization)
+ [Atualizar a segmentação de compradores](#update-buyer-targeting)
+ [Disponibilidade da atualização](#update-availability-resale-auth)
+ [Atualizar a validade de um contrato com data futura](#update-validity-fda)
+ [Atualizar recursos legais](#update-existing-legal-terms)
+ [Atualizar preços](#update-existing-pricing-terms)
+ [Atualizar o cronograma de pagamento](#update-payment-schedule-details)
+ [Atualizar detalhes da autorização de revenda](#update-resale-auth-information)
+ [Restringir uma autorização de revenda](#restricte-resale-auth)
+ [Libere uma autorização de revenda e torne-a visível para um parceiro de canal](#release-resale-auth)
+ [Descrever uma autorização de revenda existente](#describe-entity-resale-auth)

## Pré-requisitos de autorização de revenda
<a name="prerequisites"></a>

Para usar a Autorização de Revenda, tanto os fornecedores independentes de software (ISVs) quanto os parceiros de AWS Marketplace canal devem criar uma função vinculada ao serviço que forneça permissões de compartilhamento de recursos para. AWS Se os dois grupos não cumprirem esse pré-requisito, não AWS poderão compartilhar o recurso de autorização do ISV com o parceiro de canal. AWS Marketplace Para obter mais informações, consulte [Uso de funções para autorização de revenda AWS Marketplace](https://docs.aws.amazon.com/marketplace/latest/userguide/using-roles-for-resale-authorization.html) no *Guia do AWS Marketplace vendedor*.

## Criar uma nova autorização de revenda
<a name="create-resale-authorization"></a>

Você pode usar a API do Catálogo para criar uma nova Autorização de Revenda emAWS Marketplace.

Se sua solicitação for processada com sucesso, AWS Marketplace Catalog API gerará uma Autorização de Revenda no `Draft` estado para você. É uma autorização de revenda incompleta e não está visível para os parceiros de canal emAWS Marketplace. 

Use os tipos de `Update` alteração para concluir a Autorização de Revenda. Depois que a Autorização de Revenda for concluída, use o tipo de `ReleaseResaleAuthorization` alteração para concluir o processo de criação da Autorização de Revenda e liberar a Autorização de Revenda, que validará toda a Autorização de Revenda e a tornará visível para os parceiros de canal em. AWS Marketplace

Para criar uma autorização de revenda no `Draft` estado, chame a operação da `StartChangeSet` API com o tipo de `CreateResaleAuthorization` 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": "CreateResaleAuthorization",
      "ChangeName": "xyz",
      "Entity":
      {
        "Type": "ResaleAuthorization@1.0"
      },
      "DetailsDocument":
      {
        "ProductId": "prod-ad8EXAMPLE51",
        "Name": "Test ResaleAuthorization",
        "Description": "Worldwide ResaleAuthorization for Test Product",
        "ResellerAccountId": "777788889999"
      }
    }
  ]
}
```

Forneça informações sobre os campos de entrada para adicionar o tipo de `CreateResaleAuthorization` alteração:
+ **Entidade** (objeto) (obrigatório) — Sua autorização de revenda. 
  + **Tipo** (string) (obrigatório) — O `Type` é sempre`ResaleAuthorization@1.0`. 
+ **DetailsDocument**(objeto) (obrigatório) — Detalhes da solicitação.
  + **ProductId**(string) (obrigatório) — ID do produto para o qual criar a autorização de revenda.
  + **Nome** (string) (obrigatório) — Nome associado ao ResaleAuthorization para facilitar a leitura para você e seus parceiros de canal.
  + **Descrição** (string) (opcional) — Um campo de texto de formato livre disponível para adicionar detalhes sobre o. ResaleAuthorization
  + **ResellerAccountId**(string) (obrigatório) — Adicione parceiros de canal específicos Conta da AWS que possam descrever e usar isso `ResaleAuthorization` para criar uma oferta privada.

**Sintaxe de resposta**

Um conjunto de alterações é criado para sua solicitação. A resposta a essa solicitação fornece a `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. 

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

Quando a solicitação for concluída (se `Status` for`SUCCEEDED`), uma nova `ResaleAuthorization` será gerada. Embora o `SUCCEEDED` status indique que a chamada do tipo de `CreateResaleAuthorization` alteração foi concluída, o `ResaleAuthorization` status ainda está no `Draft` estado.

Veja a seguir a resposta da operação [DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)da API.

```
{
  "ChangeSetId": "example123456789012abcdef",
  "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/example123456789012abcdef",
  "ChangeSetName": "Submitted by 123456789012",
  "StartTime": "2021-05-27T22:21:26Z",
  "EndTime": "2021-05-27T22:32:19Z",
  "Status": "SUCCEEDED",
  "ChangeSet":
  [
    {
      "ChangeType": "CreateResaleAuthorization",
      "Entity":
      {
        "Type": "ResaleAuthorization@1.0",
        "Identifier": "resaleauthz-123456789"
      },
      "DetailsDocument":
      {
        "ProductId": "prod-ad8EXAMPLE51",
        "Name": "Test ResaleAuthorization",
        "Description": "Worldwide ResaleAuthorization for Test Product",
        "ResellerAccountId": "777788889999",
        "BulkRequestId": "84977023-5093-4a66-8b24-ef2c5a2f8b1f"
      },
      "ErrorDetailList":
      []
    }
  ]
}
```

**Validações síncronas**

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


| Campo de entrada | Regra de validação | Código HTTP | 
| --- | --- | --- | 
| ProductId | Obrigatório<br />Não deve ser nulo ou vazio<br />O comprimento deve estar entre 1 e 50 caracteres  | 422 | 
| ProductId | O usuário deve estar autorizado a criar ResaleAuthorization para o produto em questão | 403 | 
| ProductId | Deve ser um produto existente no catálogo e não estar no Draft estado O produto deve ter suporte para revenda | 404 | 
| Nome | Obrigatório<br />Não deve ser nulo ou vazio<br />O comprimento deve estar entre 1 e 100 caracteres <br />Não são permitidos caracteres especiais | 422 | 
| Description | Opcional<br />O comprimento deve estar entre 1 e 255 caracteres <br />Não são permitidos caracteres especiais | 422 | 
| ResellerAccountId | Obrigatório<br />Não deve estar vazio<br />Conta da AWSOs IDs devem estar em formato válido (número de 12 dígitos) | 422 | 
| BulkRequestId | Opcional<br />O comprimento deve estar entre 1 e 50 caracteres <br />Deve estar no formato UUID | 422 | 
| Uma propriedade desconhecida | Nenhuma propriedade adicional é permitida | 422 | 

**Erros assíncronos**

Os erros a seguir são específicos `CreateResaleAuthorization ` das ações noAWS 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 | 
| --- | --- | 
| CONTA\_DE\_REVENDEDOR INVÁLIDA | Forneça uma conta de revendedor válida. | 

## Atualizar a segmentação de compradores
<a name="update-buyer-targeting"></a>

Você pode usar a API do Catálogo para atualizar os compradores que direcionam sua Autorização de Revenda em. AWS Marketplace

Todas as opções de segmentação existentes que não estejam incluídas na solicitação mais recente são removidas da Autorização de Revenda. Esse tipo de alteração é opcional para a liberação da Autorização de Revenda.

Para atualizar os compradores que visam sua autorização de revenda, chame a operação da `StartChangeSet` API com o tipo de `UpdateBuyerTargetingTerms` 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":"UpdateBuyerTargetingTerms",
         "Entity":{
            "Type": "ResaleAuthorization@1.0", 
            "Identifier": "resaleauthz-123456789"
         },
         "DetailsDocument":
         {
           "Terms":
           [
             {
               "Type": "BuyerTargetingTerm",
               "PositiveTargeting":
               {
                 "BuyerAccounts":
                 [
                  "123456789012"
                 ]
               }
             }
           ]
         }
      }
   ]
}
```

Forneça informações sobre os campos para adicionar o tipo de `UpdateBuyerTargetingTerms` alteração:
+ **Entidade** (objeto) (obrigatório) — Sua autorização de revenda. 
  + **Tipo** (string) (obrigatório) — O `Type` é sempre`ResaleAuthorization@1.0`. 
  + **Identificador** (string) (obrigatório) — Seu ID de autorização de revenda. Para obter mais informações, consulte [Identificador](catalog-apis.md#identifier).
+ **DetailsDocument**(objeto) (obrigatório) — Detalhes da solicitação.
  + **Termos** (matriz de estruturas) (opcional) — Lista de compradores que segmentam termos que você deseja atualizar. Se a intenção não for direcioná-la `ResaleAuthorization` a nenhum comprador específico, o campo de termos poderá ser ignorado. Por padrão, `ResaleAuthorization` é direcionado a todos os compradores. Os termos aceitos são:
    + **BuyerTargetingTerms**(objeto) (opcional) — Defina a segmentação específica do comprador para sua. ResaleAuthorization
      + **Tipo** (string) (obrigatório) — Categoria do termo que está sendo atualizado.
      + **PositiveTargeting**(objeto) (obrigatório) — Define os critérios que o perfil de qualquer comprador deve cumprir para ter acesso ao`ResaleAuthorization`.
        + **BuyerAccounts**(matriz de strings) (opcional) — Listar como opcional. Você pode adicionar o comprador-alvoContas da AWS. Se a intenção não for `ResaleAuthorization` segmentar compradores específicos, esse campo deverá ser omitido. Por padrão, todos os compradores são segmentados. Os parceiros de canal direcionados podem optar por criar uma oferta privada e segmentar um subconjunto de compradores, se especificado.

**Sintaxe de resposta**

Um conjunto de alterações é criado para sua solicitação. A resposta a essa solicitação fornece a `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 inclui a validação das informações com a equipe de operações do AWS Marketplace vendedor para garantir que elas 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 daPortal de gerenciamento do AWS Marketplace, ou diretamente por meio da API de catálogo, 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 do esquema são específicas para `UpdateBuyerTargetingTerms` 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 requisitos a seguir, ela falhará com uma resposta HTTP.


| Campo de entrada | Regra de validação | 
| --- | --- | 
| Termos | Opcional<br />Não deve ser nulo ou vazio<br />Somente "BuyerTargetingTerm" é permitido na lista <br />O tamanho da lista deve ser 1 (atualmente não há nenhum caso de uso que exija vários termos do comprador) | 
| BuyerTargetingTerm.PositiveTargeting | Obrigatório<br />Não deve estar vazio | 
| BuyerTargetingTerm.PositiveTargeting.BuyerAccounts | Opcional<br />Conta da AWSOs IDs devem estar em formato válido (número de 12 dígitos)<br />Não deve conter mais de 25 contas | 
| Uma propriedade desconhecida | Nenhuma propriedade adicional é permitida | 

**Erros assíncronos**

Os erros a seguir são específicos `UpdateBuyerTargetingTerms` das ações noAWS 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 | 
| --- | --- | 
| SEGMENTAÇÃO DE COMPRADORES INCOMPATÍVEL | Pelo menos uma conta de comprador deve estar presente ResaleAuthorization com PreExistingBuyerAgreement. | 

## Disponibilidade da atualização
<a name="update-availability-resale-auth"></a>

Você pode usar a API do Catálogo para limitar a disponibilidade de quantas ofertas privadas são criadas ou até o momento específico em que uma oferta privada pode ser criada.

Por padrão, o valor é o uso ilimitado dessa Autorização de Revenda, embora você possa verificar a disponibilidade na lista de regras.

Para controlar a disponibilidade e a usabilidade da sua Autorização de Revenda, chame a operação da `StartChangeSet` API com o tipo de `UpdateAvailability` 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": "UpdateAvailability",
      "Entity":
      {
        "Type": "ResaleAuthorization@1.0",
        "Identifier": "resaleauthz-123456789"
      },
      "DetailsDocument":
      {
        "AvailabilityEndDate": "2022-05-31",
        "OffersMaxQuantity": 1
      }
    }
  ]
}
```

Forneça informações sobre os campos para adicionar o tipo de `UpdateAvailability` alteração:
+ **Entidade** (objeto) (obrigatório) — Sua autorização de revenda. 
  + **Tipo** (string) (obrigatório) — O `Type` é sempre`ResaleAuthorization@1.0`. 
  + **Identificador** (string) (obrigatório) — Seu ID de autorização de revenda. Para obter mais informações, consulte [Identificador](catalog-apis.md#identifier).
+ **DetailsDocument**(objeto) (obrigatório) — Detalhes da solicitação.
  + **AvailabilityEndDate**(string) (opcional) — Defina a data de término até que os parceiros de canal possam aproveitar o `ResaleAuthorization` para criar uma oferta. Os parceiros de canal podem usar isso `ResaleAuthorization` várias vezes até a data de término especificada. As datas são representadas no formato ISO\_8601.
  + **OffersMaxQuantity**(inteiro) (opcional) — Defina o número máximo de ofertas privadas que podem ser criadas usando o. ResaleAuthorization Isso não define o número de assinaturas.

**Sintaxe de resposta**

Um conjunto de alterações é criado para sua solicitação. A resposta a essa solicitação fornece a `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 inclui a validação das informações com a equipe de operações do AWS Marketplace vendedor para garantir que elas 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 daPortal de gerenciamento do AWS Marketplace, ou diretamente por meio da API de catálogo, 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 do esquema são específicas para `UpdateAvailability` ações no. AWS Marketplace Catalog API As 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 | 
| --- | --- | 
| OffersMaxQuantity | Opcional<br />Deve ser um número inteiro não negativo<br />Valor permitido apenas “1" (atualmente, nenhum caso de uso para oferecer suporte a várias quantidades) | 
| AvailabilityEndDate | Opcional<br />Deve estar no formato ISO\_8601 <br />Deve ser uma data no futuro | 
| Disponibilidade | Forneça um OffersMaxQuantity ou AvailabilityEndDate. | 
| Uma propriedade desconhecida | Nenhuma propriedade adicional é permitida | 

**Erros assíncronos**

Os erros a seguir são específicos de `UpdateAvailability` ações na API do AWS Marketplace Catalog. 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 | 
| --- | --- | 
| DATA-FINAL DE DISPONIBILIDADE\_INVÁLIDA | Forneça um AvailabilityEndDate que esteja antes ChargeDate de tudo ResalePaymentScheduleTerms. | 
|  DATA-FINAL DE DISPONIBILIDADE\_INVÁLIDA | Ofereça um futuro AvailabilityEndDate. | 

## Atualizar a validade de um contrato com data futura
<a name="update-validity-fda"></a>

Você pode usar a API de catálogo para modificar e controlar uma data futura de início do serviço emAWS Marketplace.

Esse conjunto de alterações não é obrigatório para liberar uma autorização de revenda.

Para modificar e controlar a duração do contrato de produto de sua Autorização de Revenda, chame a operação da `StartChangeSet` API com o tipo de `UpdateBuyerValidityTerms` alteração, conforme mostrado no exemplo a seguir. 

**nota**  
Future-dated os contratos só são compatíveis com tipos de produtos SaaS.

**Sintaxe da solicitação**

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

{
  "Catalog": "AWSMarketplace",
  "ChangeSet":
  [
    {
      "ChangeType": "UpdateBuyerValidityTerms",
      "Entity":
      {
        "Type": "ResaleAuthorization@1.0",
        "Identifier": "resaleauthz-123456789"
      },
      "DetailsDocument":
      {
        "Terms":
        [
          {
            "Type": "BuyerValidityTerm",
            "MaximumAgreementStartDate": "2024-05-31"
          }
        ]
      }
    }
  ]
}
```

Forneça informações sobre os campos de entrada para adicionar o tipo de `UpdateBuyerValidityTerms` alteração:
+ **Entidade** (objeto) (obrigatório) — Sua autorização de revenda. 
  + **Tipo** (string) (obrigatório) — O `Type` é sempre`ResaleAuthorization@1.0`. 
  + **Identificador** (string) (obrigatório) — Seu ID de autorização de revenda. Para obter mais informações, consulte [Identificador](catalog-apis.md#identifier).
+ **DetailsDocument**(objeto) (obrigatório) — Detalhes da solicitação.
  + **Termos** (matriz de estruturas) — Lista dos termos de validade do contrato que você deseja atualizar. Os termos aceitos são:
    + **BuyerValidityTerm**(objeto) — Define as disponibilidades de um serviço para um produto em seu ResaleAuthorization.
      + **Tipo** (string) — Categoria do termo que está sendo atualizada.
      + **MaximumAgreementStartDate**(string) (obrigatório) — Defina a data de início do contrato para o produto oferecido. Ofertas com data futura não podem exceder a data de início desse serviço. As datas são representadas no formato ISO\_8601. 

**Sintaxe de resposta**

Um conjunto de alterações é criado para sua solicitação. A resposta a essa solicitação fornece a `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 inclui a validação das informações com a equipe de operações do AWS Marketplace vendedor para garantir que elas 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 daPortal de gerenciamento do AWS Marketplace, ou diretamente por meio da API de catálogo, 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 do esquema são específicas para `UpdateBuyerValidityTerms` ações no. AWS Marketplace Catalog API As validações são realizadas quando você liga`StartChangeSet`. Se a solicitação não atender aos requisitos a seguir, ela falhará com uma resposta HTTP.


| Campo de entrada | Regra de validação | 
| --- | --- | 
|  Termos  | Obrigatório<br />Não deve ser nulo ou vazio<br />Somente "BuyerValidityTerm" é permitido na lista<br />O tamanho da lista deve ser 1 (atualmente não há nenhum caso de uso que exija vários termos de disponibilidade de serviços) | 
| MaximumAgreementStartDate | Obrigatório<br />Não deve ser nulo ou vazio<br />Deve ser uma data futura e não deve exceder mais de 3 anos a partir de agora <br />Deve estar no formato ISO\_8601 | 
| Uma propriedade desconhecida | Nenhuma propriedade adicional é permitida | 

**Erros assíncronos**

Os erros a seguir são específicos `UpdateBuyerValidityTerms ` das ações noAWS 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\_INCOMPATÍVEL | BuyerValidityTerm não é compatível com o produto. | 
| DATA DE INÍCIO DO CONTRATO MÁXIMA INVÁLIDA | Forneça um future MaximumAgreementStartDate com o limite permitido. | 

## Atualizar recursos legais
<a name="update-existing-legal-terms"></a>

Você pode usar a API de catálogo para substituir completamente os termos legais existentes emAWS Marketplace.

Os termos legais que não estão incluídos na solicitação mais recente serão removidos da Autorização de Revenda. `BuyerLegalTerm`contém o EULA que será incluído no contrato final do comprador e `LegalTerm` inclui o Contrato de Revendedor, que será incluído no contrato de revenda entre o parceiro de canal e o ISV.

Para atualizar seus termos legais`ResaleAuthorization`, chame a operação da `StartChangeSet` API com o tipo de `UpdateLegalTerms` 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": "UpdateLegalTerms",
      "Entity":
      {
        "Type": "ResaleAuthorization@1.0",
        "Identifier": "resaleauthz-123456789"
      },
      "DetailsDocument":
      {
        "Terms":
        [
          {
            "Type": "BuyerLegalTerm",
            "Documents":
            [
              {
                "Type": "CustomEula",
                "Url": "https://my-public-bucket.s3.amazonaws.com/eula-example12345.txt"
              }
            ]
          },
          {
            "Type": "ResaleLegalTerm",
            "Documents":
            [
              {
                "Type": "CustomResellerContract",
                "Url": "https://my-public-bucket.s3.amazonaws.com/reseller-example12345.txt"
              }
            ]
          }
        ]
      }
    }
  ]
}
```

Forneça informações sobre os campos para adicionar o tipo de `UpdateLegalTerms` alteração:
+ **Entidade** (objeto) (obrigatório) — Sua autorização de revenda. 
  + **Tipo** (string) (obrigatório) — O `Type` é sempre`ResaleAuthorization@1.0`. 
  + **Identificador** (string) (obrigatório) — Seu ID de autorização de revenda. Para obter mais informações, consulte [Identificador](catalog-apis.md#identifier).
+ **DetailsDocument**(objeto) (obrigatório) — Detalhes da solicitação.
  + **Termos** (matriz de estruturas) (obrigatório) — Lista de termos legais. Os termos legais aceitos são:
    + **BuyerLegalTerm**(objeto) (obrigatório) — Define a lista de contratos de texto a serem propostos aos aceitantes. Por exemplo, o contrato de licença do usuário final (EULA).
    + **Tipo** (string) (obrigatório) — Categoria do termo que está sendo atualizado.
    + **Documentos** (matriz de estruturas) (obrigatório) — Lista de referências aos recursos legais a serem propostos aos compradores. Por exemplo, o EULA. Cada referência é composta por um `Type` e um`URL`:
      + **Tipo** (string) (obrigatório) — Tipo de documento. Os tipos de documentos disponíveis são:
        + **StandardEula**— Contrato padrão paraAWS Marketplace. Para obter mais informações, consulte [SCMP](https://docs.aws.amazon.com/marketplace/latest/userguide/standardized-license-terms.html#standard-contracts) no *Guia do AWS Marketplace vendedor*. Você não precisa fornecer um URL para esse tipo porque ele é gerenciado porAWS Marketplace.
        + **EnterpriseEula**— Contrato empresarial paraAWS Marketplace. Para obter mais informações, consulte DSA no Guia do AWS Marketplace vendedor. Você não precisa fornecer um URL para esse tipo porque ele é gerenciado porAWS Marketplace.
        + **CustomEula**— EULA personalizado fornecido por você como fabricante. É necessário um URL para o EULA armazenado em um bucket acessível do S3 para esse tipo de documento.
      + **Url** (string) (obrigatório condicionalmente) — Um URL para o documento legal para os compradores lerem. Isso é necessário quando o Tipo de categoria é`CustomEula`.
    + **ResaleLegalTerm**(objeto) (opcional) — Define a lista de contratos de texto a serem propostos somente aos parceiros de canal. Esse termo não estará disponível para compradores.
      + **Tipo** (string) (obrigatório) — Categoria do termo que está sendo atualizada.
      + **Documentos** (matriz de estruturas) (obrigatório) — Lista de referências aos recursos legais do revendedor a serem propostos aos parceiros do canal.
        + **Tipo** (string) (obrigatório) — Categoria do documento. Os tipos de documentos disponíveis são:
          + **StandardResellerContract**— Contrato de revendedor padrão paraAWS Marketplace.
          + **CustomResellerContract**— Um contrato de revendedor personalizado assinado por você como fabricante. Uma URL para o contrato de revendedor é armazenada em um bucket acessível do S3 e é necessária para esse tipo de documento.
        + **Url** (string) (obrigatório condicionalmente) — URL do documento do contrato do revendedor para os parceiros de canal lerem. É necessário quando o Tipo é CustomResellerContract.

**Sintaxe de resposta**

Um conjunto de alterações é criado para sua solicitação. A resposta a essa solicitação fornece a `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 inclui a validação das informações para garantir que elas 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 daPortal de gerenciamento do AWS Marketplace, ou diretamente por meio da API de catálogo, 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 do esquema são específicas para `UpdateLegalTerms` ações no. AWS Marketplace Catalog API As validações são realizadas quando você liga`StartChangeSet`. Se a solicitação não atender aos requisitos a seguir, ela falhará com uma resposta HTTP.


| Campo de entrada | Regra de validação | Código HTTP | 
| --- | --- | --- | 
| Termos | Obrigatório<br />Não deve ser nulo ou vazio | 422 | 
| Termos []. BuyerLegalTerm | Obrigatório<br />Não deve ser nulo ou vazio | 422 | 
| Termos []. ResaleLegalTerm | Opcional<br />Não deve ser nulo ou vazio, se presente | 422 | 
| Termos []. BuyerLegalTerm.Documents | Obrigatório<br />Não deve ser nulo ou vazio | 422 | 
| Termos []. BuyerLegalTerm.Documents[] .Tipo | Obrigatório<br />Não deve ser nulo ou vazio <br />Valores permitidos:[See the AWS documentation website for more details](http://docs.aws.amazon.com/pt_br/marketplace/latest/developerguide/work-with-resale-authorizations.html) | 422 | 
| Termos []. BuyerLegalTerm.Documents[] .URL | Obrigatório e deve ser um URL válido quando “Tipo” é "CustomEula” Não deve ser fornecido quando “Tipo” é um dos [” StandardEula “," EnterpriseEula “] | 422 | 
| Termos []. ResaleLegalTerm.Documents | Obrigatório<br />Não deve ser nulo ou vazio | 422 | 
| Termos []. ResaleLegalTerm.Documents[] .Tipo | Obrigatório<br />Não devem ser nulos ou vazios Valores permitidos:[See the AWS documentation website for more details](http://docs.aws.amazon.com/pt_br/marketplace/latest/developerguide/work-with-resale-authorizations.html) | 422 | 
| Termos []. ResaleLegalTerm.Documents[] .URL | Obrigatório e deve ser um URL válido quando “Tipo” é "CustomResellerContract”<br />Não deve ser fornecido quando “Tipo” é um dos [” StandardContract “] | 422 | 
| Uma propriedade desconhecida | Nenhuma propriedade adicional é permitida | 422 | 

**Erros assíncronos**

Os erros a seguir são específicos `UpdateLegalTerms` das ações noAWS 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 | 
| --- | --- | 
| DOCUMENTOS\_LEGAIS\_COMPRADORES\_INVÁLIDOS | Forneça URLs para documentos legais do comprador armazenados em buckets acessíveis do S3. | 
| DOCUMENTOS LEGAIS DE REVENDA INVÁLIDOS | Forneça URLs para documentos legais de revenda armazenados em buckets acessíveis do S3. | 
| TERMOS\_OBRIGATÓRIOS AUSENTES | Forneça um BuyerLegalTerm. | 

## Atualizar preços
<a name="update-existing-pricing-terms"></a>

Você pode usar a API de catálogo para substituir completamente os termos de preços existentesAWS Marketplace.

Os termos de preços que não estão incluídos na solicitação mais recente serão removidos da Autorização de Revenda. Você pode atualizar os preços com desconto do seu produto por meio dessa API.

Para atualizar os detalhes de preços de suas autorizações de revenda, chame a operação da `StartChangeSet` API com o tipo de `UpdatePricingTerms` 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": "UpdatePricingTerms",
      "Entity":
      {
        "Type": "ResaleAuthorization@1.0",
        "Identifier": "resaleauthz-123456789"
      },
      "DetailsDocument":
      {
        "PricingModel": "Contract",
        "Terms":
        [
          {
            "Type": "ResaleUsageBasedPricingTerm",
            "CurrencyCode": "USD",
            "RateCards":
            [
              {
                "RateCard":
                [
                  {
                    "DimensionKey": "m3.large",
                    "Price": "0.10"
                  },
                  {
                    "DimensionKey": "m4.xlarge",
                    "Price": "0.20"
                  }
                ]
              }
            ]
          },
          {
            "Type": "ResaleConfigurableUpfrontPricingTerm",
            "CurrencyCode": "USD",
            "RateCards":
            [
              {
                "Selector":
                {
                  "Type": "Duration",
                  "Value": "P12M"
                },
                "RateCard":
                [
                  {
                    "DimensionKey": "m3.large",
                    "Price": "300"
                  },
                  {
                    "DimensionKey": "m4.xlarge",
                    "Price": "400"
                  }
                ],
                "Constraints":
                {
                  "MultipleDimensionSelection": "Allowed",
                  "QuantityConfiguration": "Allowed"
                }
              }
            ]
          },
          {
            "Type": "ResaleFixedUpfrontPricingTerm",
            "CurrencyCode": "USD",
            "Duration": "P2M",
            "Price": "200.0",
            "Grants":
            [
              {
                "DimensionKey": "Users",
                "MaxQuantity": 10
              }
            ]
          }
        ]
      }
    }
  ]
}
```

Forneça informações sobre os campos para adicionar o tipo de `UpdatePricingTerms` alteração:
+ **Entidade** (objeto) (obrigatório) — Sua autorização de revenda. 
  + **Tipo** (string) (obrigatório) — O `Type` é sempre`ResaleAuthorization@1.0`. 
  + **Identificador** (string) (obrigatório) — Seu ID de autorização de revenda. Para obter mais informações, consulte [Identificador](catalog-apis.md#identifier).
+ **DetailsDocument**(objeto) (obrigatório) — Detalhes da solicitação.
  + **PricingModel**(string) (obrigatório) — Modelo de preço para sua oferta. Os valores possíveis para o modelo de preços são:
    + **Uso** — modelo Usage-based de preços em que os compradores serão cobrados pelo uso do seu produto.
    + **Contrato** — No modelo de preços baseado em contrato, os compradores são cobrados antecipadamente pelo uso de seu produto ou oferecem um cronograma de pagamento flexível. Os compradores também podem pagar pelo uso adicional acima do contrato. Os parceiros de canal podem adicionar sua margem de lucro a esse cronograma de pagamento e preços para cada dimensão.
  + **Termos** (matriz de estruturas) (obrigatório) — Lista dos termos de preços que você deseja atualizar. Os termos de preços suportados são:
    + **ResaleUsageBasedPricingTerm**(objeto) — Define um modelo de preços pré-pago (PAYG) em que os clientes são cobrados com base no uso do produto.
      + **Tipo** (string) (obrigatório) — Categoria do termo.
      + **CurrencyCode**(string) — Define a moeda dos preços mencionados neste termo. Atualmente, somente USD são aceitos.
      + **RateCards**(matriz de estruturas) — Lista de tabelas de preços.
        + **RateCard**(matriz de estruturas) — Uma tabela de tarifas define as taxas por unidade para as dimensões do produto.
          + **DimensionKey**(string) — Dimensão à qual o direito fornecido se aplica. As dimensões representam categorias de capacidade em um produto e são especificadas quando o produto é listado emAWS Marketplace.
          + **Preço** (string) — Preço por unidade para a dimensão do produto que é usada para calcular o valor a ser cobrado.
        + **Restrições** (objeto) (opcional) — Define limites sobre como o termo pode ser configurado pelos aceitantes.
          + **MultipleDimensionSelection**(string) (opcional) — Determina se os compradores podem selecionar várias dimensões na tabela de tarifas. Os possíveis valores são `Allowed` e `Disallowed`. O valor padrão é `Allowed`.
          + **QuantityConfiguration**(string) (opcional) — Determina se os aceitadores têm permissão para configurar a quantidade para cada dimensão na tabela de tarifas. Os possíveis valores são `Allowed` e `Disallowed`. O valor padrão é `Allowed`.
    + **ResaleFixedUpfrontPricingTerm**(objeto) — Define um modelo de preço pré-pago em que os clientes pagam um valor inicial fixo.
      + **Tipo** (string) (obrigatório) — Categoria do termo que está sendo atualizado.
      + **CurrencyCode**(string) — Define a moeda dos preços mencionados neste termo. Define a moeda para os preços mencionados neste termo. USD, AUD, EUR, GBP e JPY são suportados.
      + **Preço** (sequência de caracteres) (obrigatório) — Valor fixo a ser cobrado do cliente quando esse termo for aceito.
      + **Duração** (string) (obrigatório) — Duração do contrato do ResaleAuthorization. Esse campo é compatível com o formato ISO 8601.
      + **Subsídios** (conjunto de estruturas) (obrigatório) — Direitos que serão concedidos ao aceitante de preços iniciais fixos como parte da execução do contrato.
        + **DimensionKey**(string) (obrigatório) — Chave de dimensão exclusiva definida no documento do produto. As dimensões representam categorias de capacidade em um produto e são especificadas quando o produto é listado emAWS Marketplace.
        + **MaxQuantity**(inteiro) (obrigatório) — Quantidade máxima de capacidade que o comprador pode ter direito à determinada dimensão do produto. Se não MaxQuantity for fornecido, o comprador poderá usar uma quantidade ilimitada da dimensão fornecida.

**Sintaxe de resposta**

Um conjunto de alterações é criado para sua solicitação. A resposta a essa solicitação fornece a `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 inclui a validação das informações para garantir que elas 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 daPortal de gerenciamento do AWS Marketplace, ou diretamente por meio da API de catálogo, 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 seguintes validações de esquema são específicas para `UpdatePricingTerms` ações na API do AWS Marketplace Catalog. As validações são realizadas quando você liga`StartChangeSet`. Se a solicitação não atender aos requisitos a seguir, ela falhará com uma resposta HTTP.


| Campo de entrada | Regra de validação | 
| --- | --- | 
| Termos | Obrigatório<br />Não deve ser nulo ou vazio<br />Cada termo deve apresentar apenas uma única vez. Termos permitidos:[See the AWS documentation website for more details](http://docs.aws.amazon.com/pt_br/marketplace/latest/developerguide/work-with-resale-authorizations.html) | 
| Termos []. ResaleUsageBasedPricingTerm.CurrencyCode | Obrigatório <br />Valores permitidos: USD | 
| Termos []. ResaleUsageBasedPricingTerm.Validity | Obrigatório<br />Não deve ser nulo ou vazio<br />Formato esperado: duração da ISO 8601 | 
| Termos []. ResaleUsageBasedPricingTerm.RateCards | Obrigatório<br />Não deve ser nulo ou vazio | 
| Termos []. ResaleUsageBasedPricingTerm.RateCards[]. DimensionKey | Obrigatório<br />Não deve ser nulo ou vazio <br />O comprimento deve estar entre 1 e 60 | 
| Termos []. ResaleUsageBasedPricingTerm.RateCards[] .Preço | Obrigatório<br />Não deve ser nulo ou vazio <br />O tipo de dados é “String” <br />Deve ser não negativo <br />Support até 8 decimais<br />Não há suporte para caracteres especiais | 
| Termos []. ResaleConfigurableUpfrontPricingTerm.CurrencyCode | Obrigatório <br />Valores permitidos: ["USD”, “AUD”, “EUR”, “GBP”, “JPN"] | 
| Termos []. ResaleConfigurableUpfrontPricingTerm.RateCards[]. Selector.Type | Obrigatório<br />Não deve ser nulo ou vazio <br />Valores permitidos: Duração | 
| Termos []. ResaleConfigurableUpfrontPricingTerm.RateCards[]. Selector.Value | Obrigatório<br />Não deve ser nulo ou vazio<br />Formato esperado: duração da ISO 8601 | 
| Termos []. ResaleConfigurableUpfrontPricingTerm.RateCards[]. RateCard.DimensionKey | Obrigatório<br />Não deve ser nulo ou vazio <br />O comprimento deve estar entre 1 e 60 | 
| Termos []. ResaleConfigurableUpfrontPricingTerm.RateCards[]. RateCard.Price | Obrigatório<br />Não deve ser nulo ou vazio <br />O tipo de dados é “String” <br />Deve ser não negativo <br />Support até 6 decimais<br />Não há suporte para caracteres especiais | 
| Termos []. ResaleConfigurableUpfrontPricingTerm.RateCards[] .Restrições | Opcional | 
| Termos []. ResaleFixedUpfrontPricingTerm.CurrencyCode | Obrigatório Valores permitidos: ["USD”, “AUD”, “EUR”, “GBP”, “JPN"] | 
| Termos []. ResaleFixedUpfrontPricingTerm.Price | Obrigatório<br />Não deve ser nulo ou vazio <br />O tipo de dados é “String” <br />Deve ser não negativo <br />Support até 6 decimais<br />Não há suporte para caracteres especiais <br />Valores permitidos: 0,0 | 
| Termos []. ResaleFixedUpfrontPricingTerm.Duration | Obrigatório<br />Não deve ser nulo ou vazio<br />Formato esperado: duração da ISO 8601 | 
| Termos []. ResaleFixedUpfrontPricingTerm.Grants[]. DimensionKey | Obrigatório<br />Não deve ser nulo ou vazio <br />O comprimento deve estar entre 1 e 60 | 
| Termos []. ResaleFixedUpfrontPricingTerm.Grants[]. MaxQuantty | Obrigatório<br />Não deve ser nulo ou vazio | 
| Uma propriedade desconhecida | Nenhuma propriedade adicional é permitida | 

**Erros assíncronos**

Os erros a seguir são específicos `UpdatePricingTerms` das ações noAWS 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 | 
| --- | --- | 
| CÓDIGO\_DE\_MOEDA INVÁLIDO | Forneça o mesmo CurrencyCode em todos os preços e condições de pagamento. | 
| PRODUTO\_INCOMPATÍVEL | Use as dimensões existentes e disponíveis no produto em [x]. | 
| CHAVES DE DIMENSÃO DUPLICADAS | Forneça uma tabela de tarifas com uma lista exclusiva de chaves de dimensão em [x] | 
| CARTÃO\_TAXA\_INVÁLIDA | Forneça dimensões que tenham a mesma unidade em [x] | 
| CARTÃO\_TAXA\_INVÁLIDA | Forneça uma tabela de tarifas apenas para dimensões medidas. ResaleUsageBasedPricingTerm | 
| CARTÃO\_TAXA\_INVÁLIDA | Forneça taxas baseadas no uso para todas as dimensões medidas disponíveis em ResaleUsageBasedPricingTerm. | 
| MUITAS\_TARIFAS | Forneça RateCards dentro dos limites permitidos em ResaleUsageBasedPricingTerm. | 
| SELETORES\_DUPLICADOS | Forneça uma lista exclusiva de seletores em ResaleConfigurableUpfrontPricingTerm. | 
| CARTÃO\_TAXA\_INVÁLIDA | ConfigurableUpfrontPricingTerm está faltando uma ou mais chaves de dimensão durante a duração [x]. Forneça preços para o mesmo conjunto de chaves de dimensão para todas as durações. | 
| CARTÃO\_TAXA\_INVÁLIDA | Forneça todas as dimensões medidas ou todas as dimensões autorizadas em [x]. | 
| RESTRIÇÕES DE TARIFA\_CARTÃO INCOMPATÍVEIS |  QuantityConfiguration Defina MultipleDimensionSelection e como Não permitido ResaleConfigurableUpfrontPricingTerm para o. PricingModel | 
| MUITOS\_CARTÕES\_TARIFÁRIOS | Somente uma tabela de preços ConfigurableUpfrontPricingTerm é permitida para o produto. | 
| TERMOS\_INCOMPATÍVEIS | Os termos a seguir não são compatíveis com PricingModel: [x, y, z]. | 
| MUITAS\_TARIFAS | Forneça RateCards dentro dos limites permitidos em [x termo]. | 
| MUITOS\_SUBSÍDIOS | Forneça até [N] subsídios em [x prazo]. | 
| VALOR\_DURAÇÃO\_SELETOR\_INVÁLIDO | Forneça uma duração entre [x] e [y] meses em ResaleConfigurableUpfront | 
| MUITOS\_SUBSÍDIOS | Forneça uma duração entre [x] e [y] meses. | 
| VALOR\_DURAÇÃO\_SELETOR\_INVÁLIDO | Certifique-se de que a granularidade da duração esteja no nível do dia para dimensões medidas em ResaleConfigurableUpfront | 
| DURAÇÃO\_INVÁLIDA | Certifique-se de que a granularidade da duração esteja no nível do dia para dimensões medidas em. FixedUpfront | 
| CARTÃO\_TAXA\_INVÁLIDA | Forneça somente as dimensões autorizadas em [x]. | 
| DURAÇÃO\_AUSENTE | Forneça uma duração em [x]. | 
| CHAVES DE DIMENSÃO DUPLICADAS | Forneça aos Grants uma lista exclusiva de chaves de dimensão em [x]. | 
| CONFIGURAÇÕES\_DE PAGAMENTO INCOMPATÍVEIS | Atualize suas configurações de pagamento para serem compatíveis com CurrencyCode o. | 
| VERIFICAÇÃO\_DE\_VENDEDOR INCOMPATÍVEL | Conclua todos os processos necessários de verificação do vendedor. | 
| CÓDIGO\_DE\_MOEDA INVÁLIDO | Forneça um suporte CurrencyCode. | 
| CÓDIGO\_DE\_MOEDA INVÁLIDO | Forneça o mesmo CurrencyCode em todos os preços e condições de pagamento. | 
| CÓDIGO\_DE\_MOEDA INCOMPATÍVEL | CurrencyCode não pode ser alterado após o lançamento da oferta. | 

## Atualizar o cronograma de pagamento
<a name="update-payment-schedule-details"></a>

Você pode usar a API do Catálogo para alterar os detalhes associados ao pagamento, como um cronograma de pagamento flexível, em. AWS Marketplace

Para atualizar os detalhes associados ao pagamento da sua Autorização de Revenda, chame a operação da `StartChangeSet` API com o tipo de `UpdatePaymentScheduleTerms` 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": "UpdatePaymentScheduleTerms",
      "Entity":
      {
        "Type": "ResaleAuthorization@1.0",
        "Identifier": "resaleauthz-123456789"
      },
      "DetailsDocument":
      {
        "Terms":
        [
          {
            "Type": "ResalePaymentScheduleTerm",
            "CurrencyCode": "USD",
            "Schedule":
            [
              {
                "ChargeDate": "2021-12-01",
                "ChargeAmount": "200.00"
              },
              {
                "ChargeDate": "2022-03-01",
                "ChargeAmount": "250.00"
              }
            ]
          }
        ]
      }
    }
  ]
}
```

Forneça informações sobre os campos para adicionar o tipo de `UpdatePaymentScheduleTerms` alteração:
+ **Entidade** (objeto) (obrigatório) — Sua autorização de revenda. 
  + **Tipo** (string) (obrigatório) — O `Type` é sempre`ResaleAuthorization@1.0`. 
  + **Identificador** (string) (obrigatório) — Seu ID de autorização de revenda. Para obter mais informações, consulte [Identificador](catalog-apis.md#identifier).
+ **DetailsDocument**(objeto) (obrigatório) — Detalhes da solicitação.
  + **Condições** (matriz de estruturas) — Lista das condições de pagamento que você deseja atualizar. As condições de pagamento aceitas são:
    + **ResalePaymentScheduleTerm**(objeto) — Define um modelo de preços baseado em parcelas em que os clientes pagam um preço fixo em datas diferentes durante o período de validade do contrato.
      + **Tipo** (string) — Categoria do termo que está sendo atualizado.
      + **CurrencyCode**(string) (obrigatório) — Define a moeda do pagamento mencionado no cronograma. USD, AUD, EUR, GBP e JPY são suportados.
      + **Cronograma** (matriz de estruturas) — Lista do cronograma de pagamento em que cada elemento define uma parcela do pagamento. Ele contém as informações necessárias para calcular o preço a ser pago e a data em que o cliente seria cobrado.
        + **ChargeDate**(string) (obrigatório) — A data em que o cliente pagaria o preço definido nesse prazo do cronograma de pagamento. Esse campo é compatível com o formato ISO 8601.
        + **ChargeAmount**(string) (obrigatório) — O preço que o cliente pagaria em uma data programada (ChargeDate).

**Sintaxe de resposta**

Um conjunto de alterações é criado para sua solicitação. A resposta a essa solicitação fornece a `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 inclui a validação das informações para garantir que elas 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 daPortal de gerenciamento do AWS Marketplace, ou diretamente por meio da API de catálogo, 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 do esquema são específicas para `UpdatePaymentScheduleTerms` ações no. AWS Marketplace Catalog API As validações são realizadas quando você liga`StartChangeSet`. Se a solicitação não atender aos requisitos a seguir, ela falhará com uma resposta HTTP.


| Campo de entrada | Regra de validação | HTTP | 
| --- | --- | --- | 
| Terms.Type | Obrigatório<br />Não é compatível com o produto [x] <br />Termos permitidos: ResalePaymentScheduleTerm | 422 | 
| Termos []. CurrencyCode | Obrigatório<br />Valores permitidos: USD | 422 | 
| Termos []. ResalePaymentScheduleTerm.Schedule | Obrigatório<br />O comprimento deve estar entre 1 e 60 | 422 | 
| Termos []. ResalePaymentScheduleTerm.Shedule.ChargeDate | Obrigatório<br />Deve estar no formato ISO 8601<br />A data deve estar no futuro | 422 | 
| Termos []. ResalePaymentScheduleTerm.Shedule.ChargeAmount | Obrigatório<br />Deve ser não negativo | 422 | 
| Uma propriedade desconhecida | Nenhuma propriedade adicional é permitida | 422 | 

**Erros assíncronos**

Os erros a seguir são específicos `UpdatePaymentScheduleTerms` das ações noAWS 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 | 
| --- | --- | 
| TERMOS\_INCOMPATÍVEIS | OffersMaxQuantity e AvailabilityEndDate deve estar presente com ResalePaymentScheduleTerm. | 
| MUITOS\_PAGAMENTOS\_AGENDADOS | Forneça até 60 pagamentos programados em ResalePaymentScheduleTerm. | 
| DATAS\_DE\_COBRANÇA DUPLICADAS | Forneça datas de cobrança exclusivas em ResalePaymentScheduleTerm. | 
| DATAS\_DE\_COBRANÇA INVÁLIDAS | Ofereça um futuro ChargeDate. | 
| DATAS\_DE\_COBRANÇA INVÁLIDAS | Forneça uma data da última cobrança anterior a [x]. | 
| TERMOS\_OBRIGATÓRIOS AUSENTES | Forneça um ResaleFixedUpfrontPricingTerm e ResalePaymentScheduleTerm juntos. | 
| CÓDIGO\_DE\_MOEDA INVÁLIDO | Forneça o mesmo CurrencyCode em todos os preços e condições de pagamento. | 
| CONFIGURAÇÕES\_DE PAGAMENTO INCOMPATÍVEIS | Atualize suas configurações de pagamento para serem compatíveis com CurrencyCode o. | 
| VERIFICAÇÃO\_DE\_VENDEDOR INCOMPATÍVEL | Conclua todos os processos necessários de verificação do vendedor. | 
| CÓDIGO\_DE\_MOEDA INVÁLIDO | Forneça um suporte CurrencyCode. | 
| CÓDIGO\_DE\_MOEDA INVÁLIDO | Forneça o mesmo CurrencyCode em todos os preços e condições de pagamento. | 
| CÓDIGO\_DE\_MOEDA INCOMPATÍVEL | CurrencyCode não pode ser alterado após o lançamento da oferta. | 

## Atualizar detalhes da autorização de revenda
<a name="update-resale-auth-information"></a>

Você pode usar a API do Catálogo para atualizar os detalhes da Autorização de Revenda emAWS Marketplace.

Para atualizar os detalhes da autorização de revenda, chame a operação da `StartChangeSet` API com o tipo de `UpdateInformation` alteração, conforme mostrado no exemplo a seguir. 

**nota**  
O tipo de `UpdateInformation` alteração atualiza somente as seções fornecidas na solicitação; todas as outras informações permanecem inalteradas.

**Sintaxe da solicitação**

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

{
  "Catalog": "AWSMarketplace",
  "ChangeSet":
  [
    {
      "ChangeType": "UpdateInformation",
      "Entity":
      {
        "Type": "ResaleAuthorization@1.0",
        "Identifier": "resaleauthz-123456789"
      },
      "DetailsDocument":
      {
        "Name": "TestResaleAuthorization",
        "Description": "Worldwide ResaleAuthorization for Test Product",
        "PreExistingBuyerAgreement":
        {
          "AcquisitionChannel": "AwsMarketplace",
          "PricingModel": "Contract"
        }
      }
    }
  ]
}
```

Forneça informações sobre os campos para adicionar o tipo de `UpdateInformation` alteração:
+ **Entidade** (objeto) (obrigatório) — Sua autorização de revenda. 
  + **Tipo** (string) (obrigatório) — O `Type` é sempre`ResaleAuthorization@1.0`. 
  + **Identificador** (string) (obrigatório) — Seu ID de autorização de revenda. Para obter mais informações, consulte [Identificador](catalog-apis.md#identifier).
+ **DetailsDocument**(objeto) (obrigatório) — Detalhes da solicitação, incluindo as informações que você deseja atualizar para a Autorização de Revenda.
  + **Nome** (string) (opcional) — O nome associado ao ResaleAuthorization para facilitar a leitura para você e seus parceiros de canal.
  + **Descrição** (string) (opcional) — A descrição é um texto de formato livre onde você pode adicionar detalhes sobre o. ResaleAuthorization
  + **PreExistingBuyerAgreement**(objeto) (opcional) — Determina se essa oferta é uma renovação de um contrato existente com um cliente existente para o mesmo produto subjacente. O acordo existente pode ser interno ou externoAWS Marketplace. AWSpode auditar e verificar se sua oferta é uma renovação. Se AWS não conseguir verificar sua oferta, AWS poderá revogar a oferta e os direitos do seu cliente.
    + **AcquisitionChannel**(string) (obrigatório) — Indica se o contrato existente com o comprador foi assinado fora AWS Marketplace ou dentroAWS Marketplace.

      Possíveis valores: `External`, `AwsMarketplace`
    + **PricingModel**(string) (obrigatório) **—** Indica qual modelo de preços o contrato existente usa.

      Possíveis valores: `Contract`, `Usage`, `BYOL`, `Free`

**Sintaxe de resposta**

Um conjunto de alterações é criado para sua solicitação. A resposta a essa solicitação fornece a `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 inclui a validação das informações para garantir que elas 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 daPortal de gerenciamento do AWS Marketplace, ou diretamente por meio da API de catálogo, 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 seguintes validações de esquema são específicas para `UpdateInformation` ações no. AWS Marketplace Catalog API Essas validações são realizadas quando você liga`StartChangeSet`, e a solicitação falhará com um erro HTTP se a entrada não atender aos seguintes requisitos.


| Campo de entrada | Regra de validação | Código HTTP | 
| --- | --- | --- | 
| Nome | Opcional<br />Não deve ser nulo ou vazio<br />O comprimento deve estar entre 1 e 100 caracteres <br />Padrão ^ [A-Za-z0-9] \*$<br />Nenhum caractere especial ou espaço em branco é permitido | 422 | 
| Description | Opcional<br />O comprimento deve estar entre 1 e 255 caracteres <br />Padrão ^ [A-Za-z0-9\\\\ s] \*$<br />Não são permitidos caracteres especiais | 422 | 
| Uma propriedade desconhecida | Nenhuma propriedade adicional é permitida | 422 | 

**Erros assíncronos**

Os erros a seguir são específicos `UpdateInformation` das ações noAWS 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 | 
| --- | --- | 
| SEGMENTAÇÃO DE COMPRADORES INCOMPATÍVEL | Pelo menos uma conta de comprador deve estar presente ResaleAuthorization com PreExistingBuyerAgreement. | 

## Restringir uma autorização de revenda
<a name="restricte-resale-auth"></a>

Você pode usar a API de catálogo para definir regras de restrição para uma autorização de revenda emAWS Marketplace.

Uma autorização de revenda restrita não pode mais ser usada por um parceiro de canal para criar uma oferta privada. Uma oferta privada existente não será afetada.

Para restringir sua autorização de revenda, chame a operação da `StartChangeSet` API com o tipo de `RestrictResaleAuthorization` alteração, conforme mostrado no exemplo a seguir. 

**Importante**  
Essa é uma operação irreversível. Depois que a Autorização de Revenda for marcada como`Restricted`, ela não poderá estar em um `Active` estado novamente.

**Sintaxe da solicitação**

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

{
  "Catalog": "AWSMarketplace",
  "ChangeSet": [
    {
      "ChangeType": "RestrictResaleAuthorization",
      "Entity": {
        "Type": "ResaleAuthorization@1.0",
        "Identifier": "resaleauthz-123456789"
      },
      "DetailsDocument": {}
    }
  ]
}
```

Forneça informações sobre os campos para adicionar o tipo de `RestrictResaleAuthorization` alteração:
+ **Entidade** (objeto) (obrigatório) — Sua autorização de revenda. 
  + **Tipo** (string) (obrigatório) — O `Type` é sempre`ResaleAuthorization@1.0`. 
  + **Identificador** (string) (obrigatório) — Seu ID de autorização de revenda. Para obter mais informações, consulte [Identificador](catalog-apis.md#identifier).
+ **DetailsDocument**(objeto) (obrigatório) — Detalhes da solicitação. Deve ser um objeto vazio para`RestrictResaleAuthorization`.

**Sintaxe de resposta**

Um conjunto de alterações é criado para sua solicitação. A resposta a essa solicitação fornece a `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 inclui a validação das informações para garantir que elas 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 daPortal de gerenciamento do AWS Marketplace, ou diretamente por meio da API de catálogo, 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 do esquema são específicas para `RestrictResaleAuthorization` ações na API do AWS Marketplace Catalog. Essas validações são realizadas quando você liga`StartChangeSet`. Se a solicitação não atender aos requisitos a seguir, ela falhará com uma resposta HTTP.


| Campo de entrada | Regra de validação | Código HTTP | 
| --- | --- | --- | 
| DetailsDocument | Deve estar vazio | 422 | 
| RestrictResaleAuthorization | Expirado não ResaleAuthorization pode ser marcado como `Restricted` | 422 | 
| Uma propriedade desconhecida | Nenhuma propriedade adicional é permitida | 422 | 

**Erros assíncronos**

Os erros a seguir são específicos `RestrictResaleAuthorization` das ações noAWS 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 | 
| --- | --- | 
| STATUS\_INCOMPATÍVEL | Expirado não ResaleAuthorization pode ser marcado como restrito. | 

## Libere uma autorização de revenda e torne-a visível para um parceiro de canal
<a name="release-resale-auth"></a>

Você pode usar a API de catálogo para iniciar seu caminho `ResaleAuthorization` para um `Active` estado.

 `ReleaseResaleAuthorization`ativa sua Autorização de Revenda para que um Parceiro de Canal possa usar sua Autorização de Revenda para criar ofertas privadas.

Para liberar sua autorização de revenda, chame a operação da `StartChangeSet` API com o tipo de `ReleaseResaleAuthorization` 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": "ReleaseResaleAuthorization",
      "Entity":
      {
        "Type": "ResaleAuthorization@1.0",
        "Identifier": "resaleauthz-123456789"
      },
      "DetailsDocument": {}
    }
  ]
}
```

Forneça informações sobre os campos para adicionar o tipo de `ReleaseResaleAuthorization` alteração:
+ **Entidade** (objeto) (obrigatório) — Sua autorização de revenda. 
  + **Tipo** (string) (obrigatório) — O `Type` é sempre`ResaleAuthorization@1.0`. 
  + **Identificador** (string) (obrigatório) — Seu ID de autorização de revenda. Para obter mais informações, consulte [Identificador](catalog-apis.md#identifier).
+ **DetailsDocument**(objeto) (obrigatório) — Detalhes da solicitação. Deve estar vazio para`ReleaseResaleAuthorization`.

**Sintaxe de resposta**

Um conjunto de alterações é criado para sua solicitação. A resposta a essa solicitação fornece a `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 inclui a validação das informações para garantir que elas 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 daPortal de gerenciamento do AWS Marketplace, ou diretamente por meio da API de catálogo, 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 do esquema são específicas para `ReleaseResaleAuthorization` ações no. AWS Marketplace Catalog API As validações são realizadas quando você liga`StartChangeSet`. Se a solicitação não atender aos requisitos a seguir, ela falhará com uma resposta HTTP.


| Campo de entrada | Regra de validação | Código HTTP | 
| --- | --- | --- | 
| Uma propriedade desconhecida | Nenhuma propriedade adicional é permitida | 422 | 

**Erros assíncronos**

Os erros a seguir são específicos `ReleaseResaleAuthorization` das ações noAWS 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 detalhes 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 | 
| --- | --- | 
| TERMOS\_OBRIGATÓRIOS AUSENTES | Forneça um BuyerLegalTerm. | 
| TERMOS\_OBRIGATÓRIOS AUSENTES | Forneça um PricingTerm. | 
| PRODUTO\_INCOMPATÍVEL | Use um produto ativo em estado limitado ou público. | 
| TERMO\_DE\_PRECIFICAÇÃO INCOMPATÍVEL | PaymentScheduleTerm e FixedUpfrontPricingTerm devem estar presentes juntos. | 
| SEGMENTAÇÃO DE COMPRADORES INCOMPATÍVEL | Pelo menos uma conta de comprador deve estar presente ResaleAuthorization com PreExistingBuyerAgreement. | 
| TERMOS\_OBRIGATÓRIOS AUSENTES | Forneça pelo menos um de [x, y, z]. | 
| STATUS\_INCOMPATÍVEL | [x] a solicitação não pode ser realizada após a liberação da autorização de revenda. | 

## Descrever uma autorização de revenda existente
<a name="describe-entity-resale-auth"></a>

Para descrever os detalhes da autorização de revenda, chame a operação da `DescribeEntity` API com o tipo de `ResaleAuthorization@1.0` entidade, conforme mostrado no exemplo a seguir.

**Sintaxe da solicitação**

```
GET /DescribeEntity?catalog=<Catalog>&entityId=<EntityId> HTTP/1.1
```

Forneça informações sobre os campos para adicionar o tipo de `DescribeEntity` alteração:
+ **catalog** (string) — O catálogo relacionado à solicitação. Valor fixo:`AWSMarketplace`.
+ **entityId** (string) — O ID exclusivo do `ResaleAuthorization` a ser descrito.

**Sintaxe de resposta**

A resposta a essa solicitação fornece os detalhes da oferta e tem a seguinte aparência.

```
{
  "EntityType": "ResaleAuthorization@1.0",
  "EntityIdentifier": "resaleauthz-123456789",
  "EntityArn": "arn:aws:aws-marketplace:us-east-1:111122223333:AWSMarketplace/ResaleAuthorization/resaleauthz-123456789",
  "LastModifiedDate": "2021-03-10T21:57:16Z",
  "DetailsDocument": {
    "Name": "TestResaleAuthorization",
    "Description": "ResaleAuthorization for Test Product",
    "ProductId": "prod-ad8EXAMPLE51",
    "ProductName": "TestProduct",
    "Status": "Active", /*Draft, Active, Restricted*/
    "PreExistingBuyerAgreement": {
      "AcquisitionChannel": "Unknown",
      "PricingModel": "Unknown"
    },
    "CreatedDate": "2023-07-18T16:39:31.335Z",
    "ManufacturerLegalName": "ChannelCAPI.Inc",
    "ManufacturerAccountId": "123456789012",
    "Dimensions": [
      {
        "Name": "Protected Resources",
        "Description": "Additional 100 protected resources",
        "Key": "hundredresources",
        "Unit": "Units",
        "Types": [
          "Entitled"
        ]
      }
    ],
    "OfferDetails": {
      "OfferExtendedStatus": "Not Started", /* Not Started, Completed-Used, Completed-Usable*/
      "OfferCreatedCount": 0
    },
    "Terms": [
      {
        "Type": "ResaleUsageBasedPricingTerm",
        "Id": "term_id_placeholder",
        "CurrencyCode": "USD",
        "RateCards": [
          {
            "RateCard": [
              {
                "DimensionKey": "resource_number",
                "Price": "0.05"
              },
              {
                "DimensionKey": "scanned_data",
                "Price": "0.05"
              }
            ]
          }
        ]
      },
      {
        "Type": "ResaleConfigurableUpfrontPricingTerm",
        "Id": "term_id_placeholder",
        "CurrencyCode": "USD",
        "RateCards": [
          {
            "Selector": {
              "Type": "Duration",
              "Value": "P24M"
            },
            "RateCard": [
              {
                "DimensionKey": "hundredresources",
                "Price": "0.04"
              },
              {
                "DimensionKey": "tenTBData",
                "Price": "0.03"
              },
              {
                "DimensionKey": "channel_custom",
                "Price": "0.02"
              }
            ],
            "Constraints": {
              "MultipleDimensionSelection": "Allowed",
              "QuantityConfiguration": "Allowed"
            }
          }
        ]
      },
      {
        "Type": "ResaleFixedUpfrontPricingTerm",
        "Id": "term-sdh27fb2",
        "CurrencyCode": "USD",
        "Duration": "P180D",
        "Price": "0.0",
        "Grants": [
          {
            "DimensionKey": "sdf73rbns93nl120d10xm1",
            "MaxQuantity": 1
          }
        ]
      },
      {
        "Type": "ResalePaymentScheduleTerm",
        "Id": "term-sdh27fb2",
        "CurrencyCode": "USD",
        "Schedule": [
          {
            "ChargeDate": "2018-07-01T00:00:00.000Z",
            "ChargeAmount": "200.00"
          },
          {
            "ChargeDate": "2019-05-01T00:00:00.000Z",
            "ChargeAmount": "200.00"
          }
        ]
      },
      {
        "Type": "BuyerLegalTerm",
        "Id": "term_id_placeholder",
        "Documents": [
          {
            "Type": "StandardEula",
            "Url": "https://resale-auth-legal-terms-iad-beta.s3.us-east-1.amazonaws.com/09ae57d6-c75a-3a4c-aadf-9b866bae64ab/a85cace8-6d9d-40ca-a053-78fc265479bf?isSigned=yes"
          }
        ]
      },
      {
        "Type": "ResaleLegalTerm",
        "Id": "term_id_placeholder",
        "Documents": [
          {
            "Type": "StandardResellerContract",
            "Url": "https://resale-auth-legal-terms-iad-beta.s3.us-east-1.amazonaws.com/09ae57d6-c75a-3a4c-aadf-9b866bae64ab/bed55b56-7ab4-4c4c-b633-3bf4f6efcb98?isSigned=yes"
          }
        ]
      },
      {
        "Type": "BuyerValidityTerm",
        "Id": "term_id_placeholder",
        "MaximumAgreementStartDate": "2023-09-25T23:59:59.000Z"
      },
      {
        "Type": "BuyerTargetingTerm",
        "Id": "term_id_placeholder",
        "PositiveTargeting": {
          "BuyerAccounts": [
            {
              "AwsAccountId": "444455556666"
            }
          ]
        }
      }
    ],
    "Rules": [
      {
        "Type": "AvailabilityRule",
        "Id": "availability_rule_id_placeholder",
        /* If the AvailabilityEndDate and OffersMaxQuantity not present Usage will be Unlimited*/
        "Usage": "Limited",
        "AvailabilityEndDate": "2022-05-31T23:59:59Z",
        "OffersMaxQuantity": 1
      },
      {
        "Type": "PartnerTargetingRule",
        "Id": "partner_targeting_rule_id_placeholder",
        "ResellerAccountId": "777777777777",
        "ResellerLegalName": "ChannelCAPICP.Inc"
      }
    ]
  }
}
```

A seguir estão as informações sobre os campos que você vê na `DescribeEntity` resposta.
+ **EntityType**(string) — O tipo nomeado da entidade, que é ResaleAuthorization @1 .0.
+ **EntityIdentifier**(string) — O identificador da entidade, no formato EntityId @RevisionId.
+ **EntityArn**(string) — O ARN associado ao identificador exclusivo do conjunto de alterações referenciado nessa solicitação.
+ **LastModifiedDate**(string) — A data da última modificação da entidade, no formato ISO 8601 (27/02/2018T13:45:22Z).
+ **DetailsDocument**(objeto) (obrigatório) — Essa string JSON inclui os detalhes da entidade.
  + **Nome** (string) — Nome associado ao ResaleAuthorization para melhor legibilidade para você e seus parceiros de canal. Ele é exibido como parte das informações do Contrato.
  + **Descrição** (string) — A descrição é um texto de formato livre que deve ser usado somente por você e nunca será exposto aos compradores.
  + **ProductId**(string) — A descrição é um texto de formato livre que deve ser usado somente por você e nunca será exposto aos compradores.
  + **AgreementToken**(string) — Gerado a partir do conteúdo em ResaleAuthorization. Ele contém informações sobre termos, regras e proponente ao criar um contrato. É usado para verificações e validações de autorização durante a aquisição.
  + **Termos** (matriz de estruturas) — Lista de termos apresentados para aceitação.
  + **Regras** (matriz de estruturas) — Lista de regras ou conjunto de instruções.