

La référence de l'API AWS Marketplace a été restructurée. Pour plus d'informations sur les opérations d'API prises en charge, consultez le manuel [ AWS Marketplace API Reference](https://docs.aws.amazon.com/marketplace/latest/APIReference/Welcome.html).

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Travaillez avec les autorisations de revente à l'aide du AWS Marketplace API
<a name="work-with-resale-authorizations"></a>

Vous pouvez les utiliser AWS Marketplace Catalog API pour automatiser les tâches liées à l'utilisation des autorisations de revente. 

Alors que le * produit * décrit l'objet de la vente AWS Marketplace, l'autorisation de * revente * (également appelée opportunité) décrit les termes et règles concernant la manière dont ce produit est autorisé à être revendu. AWS Marketplace Le * CPPO * est la cible de l'autorisation de revente.

Une autorisation de revente comporte un ensemble de conditions et de règles à accepter pour un contrat de revente entre les fabricants et les partenaires de distribution. L'acceptation des termes de l'autorisation de revente permet au revendeur de créer des offres pour le produit conformément aux conditions énoncées dans les conditions.

Il existe deux types de règles dans une autorisation de revente :
+ **AvailabilityRule**— Contrôle le cycle de vie de l'autorisation de revente dans AWS Marketplace.
+ **PartnerTargetingRule **— Spécifie si l'autorisation de revente doit être accessible à un ensemble spécifique de partenaires de distribution.

Consultez les ressources suivantes :
+ Pour des ateliers complets contenant des exemples de code fonctionnel, voir [ Atelier : Autoriser un revendeur ](https://catalog.workshops.aws/mpseller/en-US/manage-offers-with-api/authorize-a-reseller) dans l'atelier * du *AWS Marketplace vendeur.
+ Pour des exemples de code de requêtes d'API, consultez les [ exemples [ Python ](https://github.com/aws-samples/aws-marketplace-reference-code/tree/main/python/src/catalog_api/resale_authorization) et ](https://github.com/aws-samples/aws-marketplace-reference-code/tree/main/java/resources/changeSets/channel_partner_offers) Java dans *AWS Samples * on GitHub.
+ Pour visionner une vidéo sur la création d'autorisations de revente, voir [ Création d'autorisations de revente à l'aide de l'API du AWS Marketplace catalogue activée. ](https://www.youtube.com/watch?v=vLIbvFYI974) YouTube

Les rubriques suivantes décrivent comment utiliser l'API du catalogue pour créer et mettre à jour des autorisations de revente :

**Topics**
+ [Conditions préalables à l'autorisation de revente](#prerequisites)
+ [Créer une nouvelle autorisation de revente](#create-resale-authorization)
+ [Actualiser le ciblage des acheteurs](#update-buyer-targeting)
+ [Mettre à jour la disponibilité](#update-availability-resale-auth)
+ [Mettre à jour la validité d'un contrat daté d'une date ultérieure](#update-validity-fda)
+ [Mettre à jour les ressources juridiques](#update-existing-legal-terms)
+ [Mettre à jour les prix](#update-existing-pricing-terms)
+ [Mettre à jour le calendrier de paiement](#update-payment-schedule-details)
+ [Mettre à jour les conditions de paiement net](#update-resale-net-payment-terms)
+ [Mettre à jour les détails de l'autorisation de revente](#update-resale-auth-information)
+ [Restreindre une autorisation de revente](#restricte-resale-auth)
+ [Déclarer une autorisation de revente et la rendre visible à un partenaire de distribution](#release-resale-auth)
+ [Décrire une autorisation de revente existante](#describe-entity-resale-auth)

## Conditions préalables à l'autorisation de revente
<a name="prerequisites"></a>

Pour utiliser l'autorisation de revente, les éditeurs de logiciels indépendants (ISV) et les partenaires de AWS Marketplace distribution doivent créer un rôle lié à un service qui fournit des autorisations de partage de ressources à. AWS Si les deux groupes ne remplissent pas cette condition préalable, ils ne AWS peuvent pas partager la ressource d'autorisation de l'ISV avec le partenaire de AWS Marketplace distribution. Pour plus d'informations, consultez la section [ Utilisation des rôles pour l'autorisation de revente AWS Marketplace](https://docs.aws.amazon.com/marketplace/latest/userguide/using-roles-for-resale-authorization.html) dans le Guide * du *AWS Marketplace vendeur.

## Créer une nouvelle autorisation de revente
<a name="create-resale-authorization"></a>

Vous pouvez utiliser l'API du catalogue pour créer une nouvelle autorisation de revente dans AWS Marketplace.

Si votre demande est traitée avec succès, AWS Marketplace Catalog API génère une autorisation de revente en `Draft` état pour vous. Il s'agit d'une autorisation de revente incomplète et non visible pour les partenaires de distribution. AWS Marketplace

Utilisez les types de `Update` modification pour compléter l'autorisation de revente. Une fois l'autorisation de revente terminée, utilisez le type de `ReleaseResaleAuthorization` modification pour terminer le processus de création de l'autorisation de revente et libérer l'autorisation de revente, qui validera l'intégralité de l'autorisation de revente et la rendra visible pour les partenaires de distribution. AWS Marketplace

Pour créer une autorisation de revente dans `Draft` l'état, appelez l'opération d'`StartChangeSet`API avec le type de `CreateResaleAuthorization` modification, comme indiqué dans l'exemple suivant. 

**Syntaxe de la demande**

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

Fournissez des informations pour les champs de saisie afin d'ajouter le type de `CreateResaleAuthorization` modification :
+ **Entité ** (objet) (obligatoire) — Votre autorisation de revente. 
  + **Type ** (chaîne) (obligatoire) — `Type` C'est toujours`ResaleAuthorization@1.0`. 
+ **DetailsDocument**(objet) (obligatoire) — Détails de la demande.
  + **ProductId**(chaîne) (obligatoire) — Identifiant du produit pour lequel créer l'autorisation de revente.
  + **Nom ** (chaîne) (obligatoire) — Nom associé au ResaleAuthorization pour une meilleure lisibilité pour vous et vos partenaires de distribution.
  + **Description ** (chaîne) (facultatif) — Un champ de texte libre disponible pour ajouter des détails sur le ResaleAuthorization.
  + **ResellerAccountId**(string) (obligatoire) — Ajoutez des partenaires de distribution ciblés Compte AWS qui peuvent le décrire et l'utiliser `ResaleAuthorization` pour créer une offre privée.

**Syntaxe de réponse **

Un ensemble de modifications est créé pour votre demande. La réponse à cette demande vous donne le `ChangeSetId` et `ChangeSetArn` pour l'ensemble de modifications et ressemble à ce qui suit.

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

La demande de modification est ajoutée à une file d'attente et traitée. 

Vous pouvez vérifier l'état de la demande via l' Portail de gestion AWS Marketplace API Catalog ou directement via l'API Catalog à l'aide de l'opération `[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)` API.

Lorsque la demande est terminée (si `Status` c'est le cas`SUCCEEDED`), une nouvelle demande `ResaleAuthorization` est générée. Bien que le `SUCCEEDED` statut indique que l'appel de type de `CreateResaleAuthorization` changement est terminé, le `ResaleAuthorization` statut est toujours `Draft` actif.

Ce qui suit montre la réponse de l'opération [ DescribeChangeSet ](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html) d'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":
      []
    }
  ]
}
```

**Validations synchrones **

Les validations de schéma sont spécifiques aux `CreateResaleAuthorization` actions du AWS Marketplace Catalog API. Les validations sont effectuées lorsque vous appelez`StartChangeSet`. Si la demande ne répond pas aux exigences suivantes, elle échouera avec une réponse HTTP.


| Champ de saisie | Règle de validation | Code HTTP | 
| --- | --- | --- | 
| ProductId | Obligatoire<br />Ne doit pas être nul ou vide<br />La longueur doit être comprise entre 1 et 50 caractères  | 422 | 
| ProductId | L'utilisateur doit être autorisé à créer ResaleAuthorization pour le produit donné | 403 | 
| ProductId | Il doit s'agir d'un produit existant dans le catalogue et non en Draft cours Le produit doit être pris en charge pour être revendu | 404 | 
| Nom | Obligatoire<br />Ne doit pas être nul ou vide<br />La longueur doit être comprise entre 1 et 100 caractères <br />Aucun caractère spécial n'est autorisé | 422 | 
| Description | Facultatif<br />La longueur doit être comprise entre 1 et 255 caractères <br />Aucun caractère spécial n'est autorisé | 422 | 
| ResellerAccountId | Obligatoire<br />Ne doit pas être vide<br />Compte AWS Les identifiants doivent être dans un format valide (numéro à 12 chiffres) | 422 | 
| BulkRequestId | Facultatif<br />La longueur doit être comprise entre 1 et 50 caractères <br />Doit être au format UUID | 422 | 
| Une propriété inconnue | Aucune propriété supplémentaire n'est autorisée | 422 | 

**Erreurs asynchrones **

Les erreurs suivantes sont spécifiques aux `CreateResaleAuthorization ` actions du AWS Marketplace Catalog API. Ces erreurs sont renvoyées lorsque vous appelez `DescribeChangeSet` après le traitement d'un ensemble de modifications. Pour plus d'informations sur l'utilisation `DescribeChangeSet` pour obtenir le statut d'une demande de modification, consultez[Travailler avec des ensembles de modifications](catalog-apis.md#working-with-change-sets).


| Code d’erreur  | Message d’erreur | 
| --- | --- | 
| COMPTE\_REVENDEUR NON VALIDE | Fournissez un compte revendeur valide.  | 

## Actualiser le ciblage des acheteurs
<a name="update-buyer-targeting"></a>

Vous pouvez utiliser l'API du catalogue pour mettre à jour les acheteurs qui ciblent votre autorisation de revente dans AWS Marketplace.

Toutes les options de ciblage existantes qui ne sont pas incluses dans la dernière demande sont supprimées de l'autorisation de revente. Ce type de modification est facultatif pour la délivrance de l'autorisation de revente.

Pour mettre à jour les acheteurs qui ciblent votre autorisation de revente, appelez l'opération d'`StartChangeSet`API avec le type de `UpdateBuyerTargetingTerms` modification, comme indiqué dans l'exemple suivant. 

**Syntaxe de la demande**

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

Fournissez des informations pour les champs permettant d'ajouter le type de `UpdateBuyerTargetingTerms` modification :
+ **Entité ** (objet) (obligatoire) — Votre autorisation de revente. 
  + **Type ** (chaîne) (obligatoire) — `Type` C'est toujours`ResaleAuthorization@1.0`. 
  + **Identifiant ** (chaîne) (obligatoire) : votre numéro d'autorisation de revente. Pour de plus amples informations, veuillez consulter [Identifiant](catalog-apis.md#identifier).
+ **DetailsDocument**(objet) (obligatoire) — Détails de la demande.
  + **Termes ** (tableau de structures) (facultatif) : liste des acheteurs ciblant les termes que vous souhaitez mettre à jour. Si l'intention n'est pas de `ResaleAuthorization` cibler un acheteur en particulier, le champ des termes peut être ignoré. Par défaut, `ResaleAuthorization` s'adresse à tous les acheteurs. Les termes pris en charge sont les suivants :
    + **BuyerTargetingTerms**(objet) (facultatif) — Définissez un ciblage spécifique aux acheteurs pour votre. ResaleAuthorization
      + **Type ** (chaîne) (obligatoire) — Catégorie du terme en cours de mise à jour.
      + **PositiveTargeting**(objet) (obligatoire) — Définit les critères que tout profil d'acheteur doit remplir pour être autorisé à accéder au`ResaleAuthorization`.
        + **BuyerAccounts**(tableau de chaînes) (facultatif) — Liste comme facultative. Vous pouvez ajouter celui de l'acheteur ciblé Comptes AWS. Si l'intention n'est pas `ResaleAuthorization` de cibler des acheteurs spécifiques, ce champ doit être omis. Par défaut, tous les acheteurs sont ciblés. Les partenaires de distribution ciblés peuvent choisir de créer une offre privée et de cibler un sous-ensemble d'acheteurs, le cas échéant.

**Syntaxe de réponse **

Un ensemble de modifications est créé pour votre demande. La réponse à cette demande vous donne le `ChangeSetId` et `ChangeSetArn` pour l'ensemble de modifications et ressemble à ce qui suit.

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

La demande de modification est ajoutée à une file d'attente et traitée. Cela inclut la validation des informations auprès de l'équipe des opérations des AWS Marketplace vendeurs pour s'assurer qu'elles sont conformes aux AWS Marketplace directives. Le processus de validation peut prendre de quelques minutes à quelques heures. 

Vous pouvez vérifier l'état de la demande via l' Portail de gestion AWS Marketplace API Catalog ou directement via l'API Catalog à l'aide de l'opération `[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)` API.

**Validations synchrones **

Les validations de schéma sont spécifiques aux `UpdateBuyerTargetingTerms` actions du AWS Marketplace Catalog API. Ces validations sont effectuées lorsque vous appelez`StartChangeSet`. Si la demande ne répond pas aux exigences suivantes, elle échouera avec une réponse HTTP.


| Champ de saisie | Règle de validation | 
| --- | --- | 
| Termes | Facultatif<br />Ne doit pas être nul ou vide<br />Seul « BuyerTargetingTerm » est autorisé dans la liste <br />La taille de la liste doit être de 1 (il n'existe aujourd'hui aucun cas d'utilisation nécessitant plusieurs conditions d'achat) | 
| BuyerTargetingTerm.PositiveTargeting | Obligatoire<br />Ne doit pas être vide | 
| BuyerTargetingTerm.PositiveTargeting.BuyerAccounts | Facultatif<br />Compte AWS Les identifiants doivent être dans un format valide (numéro à 12 chiffres)<br />Ne doit pas contenir plus de 25 comptes | 
| Une propriété inconnue | Aucune propriété supplémentaire n'est autorisée | 

**Erreurs asynchrones **

Les erreurs suivantes sont spécifiques aux `UpdateBuyerTargetingTerms` actions du AWS Marketplace Catalog API. Ces erreurs sont renvoyées lorsque vous appelez `DescribeChangeSet` après le traitement d'un ensemble de modifications. Pour plus d'informations sur l'utilisation `DescribeChangeSet` pour obtenir le statut d'une demande de modification, consultez[Travailler avec des ensembles de modifications](catalog-apis.md#working-with-change-sets).


| Code d’erreur  | Message d’erreur | 
| --- | --- | 
| CIBLAGE INCOMPATIBLE\_DES ACHETEURS | Au moins un compte acheteur doit être présent pour ResaleAuthorization PreExistingBuyerAgreement.  | 

## Mettre à jour la disponibilité
<a name="update-availability-resale-auth"></a>

Vous pouvez utiliser l'API du catalogue pour limiter la disponibilité du nombre d'offres privées créées ou jusqu'à quelle heure précise une offre privée peut être créée.

Par défaut, la valeur est l'utilisation illimitée de cette autorisation de revente, bien que vous puissiez vérifier la disponibilité dans la liste des règles.

Pour contrôler la disponibilité et la facilité d'utilisation de votre autorisation de revente, appelez l'opération `StartChangeSet` API avec le type de `UpdateAvailability` modification, comme indiqué dans l'exemple suivant. 

**Syntaxe de la demande**

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

Fournissez des informations pour les champs permettant d'ajouter le type de `UpdateAvailability` modification :
+ **Entité ** (objet) (obligatoire) — Votre autorisation de revente. 
  + **Type ** (chaîne) (obligatoire) — `Type` C'est toujours`ResaleAuthorization@1.0`. 
  + **Identifiant ** (chaîne) (obligatoire) : votre numéro d'autorisation de revente. Pour de plus amples informations, veuillez consulter [Identifiant](catalog-apis.md#identifier).
+ **DetailsDocument**(objet) (obligatoire) — Spécificités de la demande.
  + **AvailabilityEndDate**(chaîne) (facultatif) — Définissez la date de fin jusqu'à ce que les partenaires de distribution puissent en tirer parti `ResaleAuthorization` pour créer une offre. Les partenaires de distribution peuvent l'utiliser `ResaleAuthorization` plusieurs fois jusqu'à la date de fin spécifiée. Les dates sont représentées au format ISO\_8601.
  + **OffersMaxQuantity**(entier) (facultatif) — Définissez le nombre maximum d'offres privées pouvant être créées à l'aide du ResaleAuthorization. Cela ne définit pas le nombre d'abonnements.

**Syntaxe de réponse **

Un ensemble de modifications est créé pour votre demande. La réponse à cette demande vous donne le `ChangeSetId` et `ChangeSetArn` pour l'ensemble de modifications et ressemble à ce qui suit.

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

La demande de modification est ajoutée à une file d'attente et traitée. Cela inclut la validation des informations auprès de l'équipe des opérations des AWS Marketplace vendeurs pour s'assurer qu'elles sont conformes aux AWS Marketplace directives. Le processus de validation peut prendre de quelques minutes à quelques heures. 

Vous pouvez vérifier l'état de la demande via l' Portail de gestion AWS Marketplace API Catalog ou directement via l'API Catalog à l'aide de l'opération `[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)` API.

**Validations synchrones **

Les validations de schéma sont spécifiques aux `UpdateAvailability` actions du AWS Marketplace Catalog API. Les validations sont effectuées lorsque vous appelez`StartChangeSet`. Si la demande ne répond pas aux exigences suivantes, elle échouera avec une réponse HTTP


| Champ de saisie | Règle de validation | 
| --- | --- | 
| OffersMaxQuantity | Facultatif<br />Doit être un entier non négatif<br />Valeur autorisée uniquement « 1 » (aucun cas d'utilisation ne permet actuellement de prendre en charge plusieurs quantités) | 
| AvailabilityEndDate | Facultatif<br />Doit être au format ISO\_8601 <br />Doit être daté dans le futur | 
| Disponibilité | Fournissez l'un OffersMaxQuantity ou l'autre AvailabilityEndDate. | 
| Une propriété inconnue | Aucune propriété supplémentaire n'est autorisée | 

**Erreurs asynchrones **

Les erreurs suivantes sont spécifiques aux `UpdateAvailability` actions de l'API AWS Marketplace Catalog. Ces erreurs sont renvoyées lorsque vous appelez `DescribeChangeSet` après le traitement d'un ensemble de modifications. Pour plus d'informations sur l'utilisation `DescribeChangeSet` pour obtenir le statut d'une demande de modification, consultez[Travailler avec des ensembles de modifications](catalog-apis.md#working-with-change-sets).


| Code d’erreur  | Message d’erreur | 
| --- | --- | 
| DATE\_FIN\_DE DISPONIBILITÉ NON VALIDE | Fournissez une AvailabilityEndDate réponse qui se trouve avant ChargeDate le tout ResalePaymentScheduleTerms.  | 
|  DATE\_FIN\_DE DISPONIBILITÉ NON VALIDE | Offrez un avenir AvailabilityEndDate.  | 

## Mettre à jour la validité d'un contrat daté d'une date ultérieure
<a name="update-validity-fda"></a>

Vous pouvez utiliser l'API du catalogue pour modifier et contrôler une date de début de service ultérieure dans AWS Marketplace.

Cet ensemble de modifications n'est pas obligatoire pour délivrer une autorisation de revente.

Pour modifier et contrôler la durée du contrat de produit de votre autorisation de revente, appelez l'opération `StartChangeSet` API avec le type de `UpdateBuyerValidityTerms` modification, comme indiqué dans l'exemple suivant. 

**Note**  
Future-dated les contrats ne sont pris en charge que pour les types de produits SaaS.

**Syntaxe de la demande**

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

Fournissez des informations pour les champs de saisie afin d'ajouter le type de `UpdateBuyerValidityTerms` modification :
+ **Entité ** (objet) (obligatoire) — Votre autorisation de revente. 
  + **Type ** (chaîne) (obligatoire) — `Type` C'est toujours`ResaleAuthorization@1.0`. 
  + **Identifiant ** (chaîne) (obligatoire) : votre numéro d'autorisation de revente. Pour de plus amples informations, veuillez consulter [Identifiant](catalog-apis.md#identifier).
+ **DetailsDocument**(objet) (obligatoire) — Spécificités de la demande.
  + **Termes ** (tableau de structures) : liste des conditions de validité de l'accord que vous souhaitez mettre à jour. Les termes pris en charge sont les suivants :
    + **BuyerValidityTerm**(objet) — Définit les disponibilités d'un service pour un produit de votre ResaleAuthorization.
      + **Type ** (chaîne) — Catégorie du terme en cours de mise à jour.
      + **MaximumAgreementStartDate**(chaîne) (obligatoire) — Définissez la date de début du contrat pour le produit proposé. Les offres à venir ne peuvent pas dépasser cette date de début de service. Les dates sont représentées au format ISO\_8601. 

**Syntaxe de réponse **

Un ensemble de modifications est créé pour votre demande. La réponse à cette demande vous donne le `ChangeSetId` et `ChangeSetArn` pour l'ensemble de modifications et ressemble à ce qui suit.

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

La demande de modification est ajoutée à une file d'attente et traitée. Cela inclut la validation des informations auprès de l'équipe des opérations des AWS Marketplace vendeurs pour s'assurer qu'elles sont conformes aux AWS Marketplace directives. Le processus de validation peut prendre de quelques minutes à quelques heures. 

Vous pouvez vérifier l'état de la demande via l' Portail de gestion AWS Marketplace API Catalog ou directement via l'API Catalog à l'aide de l'opération `[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)` API.

**Validations synchrones **

Les validations de schéma sont spécifiques aux `UpdateBuyerValidityTerms` actions du AWS Marketplace Catalog API. Les validations sont effectuées lorsque vous appelez`StartChangeSet`. Si la demande ne répond pas aux exigences suivantes, elle échouera avec une réponse HTTP.


| Champ de saisie | Règle de validation | 
| --- | --- | 
|  Termes  | Obligatoire<br />Ne doit pas être nul ou vide<br />Seul « BuyerValidityTerm » est autorisé dans la liste<br />La taille de la liste doit être de 1 (il n'existe aujourd'hui aucun cas d'utilisation nécessitant plusieurs conditions de disponibilité des services) | 
| MaximumAgreementStartDate | Obligatoire<br />Ne doit pas être nul ou vide<br />Doit être une date future et ne devrait pas dépasser 3 ans <br />Doit être au format ISO\_8601 | 
| Une propriété inconnue | Aucune propriété supplémentaire n'est autorisée | 

**Erreurs asynchrones **

Les erreurs suivantes sont spécifiques aux `UpdateBuyerValidityTerms ` actions du AWS Marketplace Catalog API. Ces erreurs sont renvoyées lorsque vous appelez `DescribeChangeSet` après le traitement d'un ensemble de modifications. Pour plus d'informations sur l'utilisation `DescribeChangeSet` pour obtenir le statut d'une demande de modification, consultez[Travailler avec des ensembles de modifications](catalog-apis.md#working-with-change-sets).


| Code d’erreur  | Message d’erreur | 
| --- | --- | 
| PRODUIT\_INCOMPATIBLE | BuyerValidityTerm n'est pas pris en charge pour le produit.  | 
| DATE\_DE\_DÉBUT\_DU\_ACCORD\_MAXIMALE NON VALIDE | Prévoyez un futur MaximumAgreementStartDate avec une limite autorisée.  | 

## Mettre à jour les ressources juridiques
<a name="update-existing-legal-terms"></a>

Vous pouvez utiliser l'API du catalogue pour remplacer complètement les termes juridiques existants dans AWS Marketplace.

Les termes juridiques qui ne figurent pas dans la dernière demande seront supprimés de l'autorisation de revente. `BuyerLegalTerm`contient le CLUF qui sera inclus dans le contrat final de l'acheteur et `LegalTerm` inclut le contrat de revendeur qui sera inclus dans le contrat de revendeur entre le partenaire de distribution et l'ISV.

Pour mettre à jour vos termes juridiques`ResaleAuthorization`, appelez l'opération d'`StartChangeSet`API avec le type de `UpdateLegalTerms` modification, comme indiqué dans l'exemple suivant. 

**Syntaxe de la demande**

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

Fournissez des informations pour les champs permettant d'ajouter le type de `UpdateLegalTerms` modification :
+ **Entité ** (objet) (obligatoire) — Votre autorisation de revente. 
  + **Type ** (chaîne) (obligatoire) — `Type` C'est toujours`ResaleAuthorization@1.0`. 
  + **Identifiant ** (chaîne) (obligatoire) : votre numéro d'autorisation de revente. Pour de plus amples informations, veuillez consulter [Identifiant](catalog-apis.md#identifier).
+ **DetailsDocument**(objet) (obligatoire) — Détails de la demande.
  + **Termes ** (ensemble de structures) (obligatoire) — Liste des termes juridiques. Les termes juridiques pris en charge sont les suivants :
    + **BuyerLegalTerm**(objet) (obligatoire) — Définit la liste des accords textuels à proposer aux accepteurs. Par exemple, le contrat de licence utilisateur final (CLUF).
    + **Type ** (chaîne) (obligatoire) — Catégorie du terme en cours de mise à jour.
    + **Documents ** (ensemble de structures) (obligatoire) — Liste de références aux ressources juridiques à proposer aux acheteurs. Par exemple, le CLUF. Chaque référence est composée de a `Type` et de `URL` :
      + **Type ** (chaîne) (obligatoire) — Type de document. Les types de documents disponibles sont les suivants :
        + **StandardEula**— Contrat standard pour AWS Marketplace. Pour plus d'informations, consultez [ SCMP ](https://docs.aws.amazon.com/marketplace/latest/userguide/standardized-license-terms.html#standard-contracts) dans le Guide * du *AWS Marketplace vendeur. Vous n'avez pas besoin de fournir d'URL pour ce type car il est géré par AWS Marketplace.
        + **EnterpriseEula**— Contrat d'entreprise pour AWS Marketplace. Pour plus d'informations, consultez DSA dans le Guide du AWS Marketplace vendeur. Vous n'avez pas besoin de fournir d'URL pour ce type car il est géré par AWS Marketplace.
        + **CustomEula**— CLUF personnalisé fourni par vous en tant que fabricant. Une URL pour le CLUF stocké dans un compartiment S3 accessible est requise pour ce type de document.
      + **URL ** (chaîne) (obligatoire sous certaines conditions) : URL du document juridique que les acheteurs peuvent lire. Cela est obligatoire lorsque le type de catégorie est`CustomEula`.
    + **ResaleLegalTerm**(objet) (facultatif) — Définit la liste des accords textuels à proposer uniquement aux partenaires de distribution. Ce terme ne sera pas disponible pour les acheteurs.
      + **Type ** (chaîne) (obligatoire) — Catégorie du terme en cours de mise à jour.
      + **Documents ** (ensemble de structures) (obligatoire) — Liste de références aux ressources juridiques des revendeurs à proposer aux partenaires de distribution.
        + **Type ** (chaîne) (obligatoire) — Catégorie du document. Les types de documents disponibles sont les suivants :
          + **StandardResellerContract**— Contrat de revendeur standard pour AWS Marketplace.
          + **CustomResellerContract**— Un contrat de revendeur personnalisé conclu par vous en tant que fabricant. L'URL du contrat de revendeur est stockée dans un compartiment S3 accessible et est requise pour ce type de document.
        + **URL ** (chaîne) (obligatoire sous certaines conditions) : URL du document du contrat de revendeur que les partenaires de distribution peuvent lire. C'est obligatoire lorsque le Type est CustomResellerContract.

**Syntaxe de réponse **

Un ensemble de modifications est créé pour votre demande. La réponse à cette demande vous donne le `ChangeSetId` et `ChangeSetArn` pour l'ensemble de modifications et ressemble à ce qui suit.

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

La demande de modification est ajoutée à une file d'attente et traitée. Cela inclut la validation des informations pour s'assurer qu'elles sont conformes aux AWS Marketplace directives. Le processus de validation peut prendre de quelques minutes à quelques heures.

Vous pouvez vérifier l'état de la demande via l' Portail de gestion AWS Marketplace API Catalog ou directement via l'API Catalog à l'aide de l'opération `[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)` API.

**Validations synchrones **

Les validations de schéma sont spécifiques aux `UpdateLegalTerms` actions du AWS Marketplace Catalog API. Les validations sont effectuées lorsque vous appelez`StartChangeSet`. Si la demande ne répond pas aux exigences suivantes, elle échouera avec une réponse HTTP.


| Champ de saisie | Règle de validation | Code HTTP | 
| --- | --- | --- | 
| Termes | Obligatoire<br />Ne doit pas être nul ou vide | 422 | 
| Termes []. BuyerLegalTerm | Obligatoire<br />Ne doit pas être nul ou vide | 422 | 
| Termes []. ResaleLegalTerm | Facultatif<br />Ne doit pas être nul ou vide s'il est présent | 422 | 
| Termes []. BuyerLegalTerm.Documents | Obligatoire<br />Ne doit pas être nul ou vide | 422 | 
| Termes []. BuyerLegalTerm.Documents[]. Tapez | Obligatoire<br />Ne doit pas être nul ou vide <br />Valeurs autorisées :+  StandardEula <br />+  EnterpriseEula <br />+  CustomEula  | 422 | 
| Termes []. BuyerLegalTerm.Documents[] .Adresse | Obligatoire et doit être une URL valide lorsque « Type » est « CustomEula » Ne doit pas être fourni lorsque « Type » est l'un des [» StandardEula «," EnterpriseEula «] | 422 | 
| Termes []. ResaleLegalTerm.Documents | Obligatoire<br />Ne doit pas être nul ou vide | 422 | 
| Termes []. ResaleLegalTerm.Documents[]. Tapez | Obligatoire<br />Ne doit pas être nul ou vide. Valeurs autorisées :+   StandardEula <br />+   CustomResellerContract  | 422 | 
| Termes []. ResaleLegalTerm.Documents[] .Adresse | Obligatoire et doit être une URL valide lorsque « Type » est « CustomResellerContract »<br />Ne doit pas être fourni lorsque « Type » est l'un des [» StandardContract «] | 422 | 
| Une propriété inconnue | Aucune propriété supplémentaire n'est autorisée | 422 | 

**Erreurs asynchrones **

Les erreurs suivantes sont spécifiques aux `UpdateLegalTerms` actions du AWS Marketplace Catalog API. Ces erreurs sont renvoyées lorsque vous appelez`DescribeChangeSet`, après le traitement d'un ensemble de modifications. Pour plus d'informations sur l'utilisation `DescribeChangeSet` pour obtenir le statut d'une demande de modification, consultez[Travailler avec des ensembles de modifications](catalog-apis.md#working-with-change-sets).


| Code d’erreur  | Message d’erreur | 
| --- | --- | 
| DOCUMENTS\_LÉGAUX\_D'ACHETEUR\_INVALIDES | Fournissez des URL pour les documents juridiques de l'acheteur stockés dans des compartiments S3 accessibles.  | 
| DOCUMENTS\_LÉGAUX\_RELATIFS À LA REVENTE NON VALIDES | Fournissez des URL pour les documents juridiques de revente stockés dans des compartiments S3 accessibles.  | 
| TERMES\_OBLIGATOIRES\_MANQUANTES | Fournissez un BuyerLegalTerm.  | 

## Mettre à jour les prix
<a name="update-existing-pricing-terms"></a>

Vous pouvez utiliser l'API du catalogue pour remplacer complètement les conditions tarifaires existantes AWS Marketplace.

Les conditions tarifaires qui ne sont pas incluses dans la dernière demande seront supprimées de l'autorisation de revente. Vous pouvez mettre à jour les prix réduits de votre produit via cette API.

Pour mettre à jour les détails de tarification de vos autorisations de revente, appelez l'opération `StartChangeSet` API avec le type de `UpdatePricingTerms` modification, comme indiqué dans l'exemple suivant. 

**Syntaxe de la demande**

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

Fournissez des informations pour les champs permettant d'ajouter le type de `UpdatePricingTerms` modification :
+ **Entité ** (objet) (obligatoire) — Votre autorisation de revente. 
  + **Type ** (chaîne) (obligatoire) — `Type` C'est toujours`ResaleAuthorization@1.0`. 
  + **Identifiant ** (chaîne) (obligatoire) : votre numéro d'autorisation de revente. Pour de plus amples informations, veuillez consulter [Identifiant](catalog-apis.md#identifier).
+ **DetailsDocument**(objet) (obligatoire) — Spécificités de la demande.
  + **PricingModel**(string) (obligatoire) — Modèle de tarification pour votre offre. Les valeurs possibles pour le modèle de tarification sont les suivantes :
    + **Utilisation ** : modèle de Usage-based tarification dans lequel les acheteurs seront facturés pour leur utilisation de votre produit.
    + **Contrat ** — Dans le modèle de tarification basé sur les contrats, les acheteurs sont soit facturés à l'avance pour l'utilisation de votre produit, soit bénéficient d'un calendrier de paiement flexible. Les acheteurs peuvent également payer pour une utilisation supplémentaire au-delà de leur contrat. Les partenaires de distribution peuvent ajouter leur majoration à ce calendrier de paiement et à la tarification pour chaque dimension.
  + **Conditions ** (ensemble de structures) (obligatoire) : liste des conditions tarifaires que vous souhaitez mettre à jour. Les conditions tarifaires prises en charge sont les suivantes :
    + **ResaleUsageBasedPricingTerm**(objet) — Définit un modèle de tarification par répartition (PAYG) dans lequel les clients sont facturés en fonction de l'utilisation des produits.
      + **Type ** (chaîne) (obligatoire) — Catégorie du terme.
      + **CurrencyCode**(string) — Définit la devise des prix mentionnés dans ce terme. Actuellement, seul le dollar américain est pris en charge.
      + **RateCards**(tableau de structures) — Liste des cartes tarifaires.
        + **RateCard**(tableau de structures) — Une carte tarifaire définit les taux unitaires pour les dimensions du produit.
          + **DimensionKey**(string) — Dimension pour laquelle le droit donné s'applique. Les dimensions représentent les catégories de capacité d'un produit et sont spécifiées lorsque le produit est répertorié dans AWS Marketplace.
          + **Prix ** (chaîne) — Prix unitaire pour la dimension du produit utilisée pour calculer le montant à facturer.
        + **Contraintes ** (objet) (facultatif) — Définit les limites de la manière dont le terme peut être configuré par les accepteurs.
          + **MultipleDimensionSelection**(chaîne) (facultatif) — Détermine si les acheteurs sont autorisés à sélectionner plusieurs dimensions dans la grille tarifaire. Les valeurs possibles sont `Allowed` et `Disallowed`. La valeur par défaut est `Allowed`.
          + **QuantityConfiguration**(chaîne) (facultatif) — Détermine si les accepteurs sont autorisés à configurer la quantité pour chaque dimension de la carte tarifaire. Les valeurs possibles sont `Allowed` et `Disallowed`. La valeur par défaut est `Allowed`.
    + **ResaleFixedUpfrontPricingTerm**(objet) — Définit un modèle de tarification prépayé dans lequel les clients se voient facturer un montant initial fixe.
      + **Type ** (chaîne) (obligatoire) — Catégorie du terme en cours de mise à jour.
      + **CurrencyCode**(string) — Définit la devise des prix mentionnés dans ce terme. Définit la devise pour les prix mentionnés dans ce terme. Les USD, AUD, EUR, GBP et JPY sont pris en charge.
      + **Prix ** (chaîne) (obligatoire) — Montant fixe à facturer au client lorsque ce terme est accepté.
      + **Durée ** (chaîne) (obligatoire) — Durée du contrat du ResaleAuthorization. Ce champ prend en charge le format ISO 8601.
      + **Subventions ** (ensemble de structures) (obligatoire) — Droits qui seront accordés à l'accepteur à un prix initial fixe dans le cadre de l'exécution du contrat.
        + **DimensionKey**(chaîne) (obligatoire) — Clé de dimension unique définie dans le document du produit. Les dimensions représentent les catégories de capacité d'un produit et sont spécifiées lorsque le produit est répertorié dans AWS Marketplace.
        + **MaxQuantity**(entier) (obligatoire) — Capacité maximale à laquelle l'acheteur peut avoir droit pour la dimension donnée du produit. S' MaxQuantity il n'est pas fourni, l'acheteur pourra utiliser une quantité illimitée de la dimension donnée.

**Syntaxe de réponse **

Un ensemble de modifications est créé pour votre demande. La réponse à cette demande vous donne le `ChangeSetId` et `ChangeSetArn` pour l'ensemble de modifications et ressemble à ce qui suit.

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

La demande de modification est ajoutée à une file d'attente et traitée. Cela inclut la validation des informations pour s'assurer qu'elles sont conformes aux AWS Marketplace directives. Le processus de validation peut prendre de quelques minutes à quelques heures.

Vous pouvez vérifier l'état de la demande via l' Portail de gestion AWS Marketplace API Catalog ou directement via l'API Catalog à l'aide de l'opération `[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)` API.

**Validations synchrones **

Les validations de schéma suivantes sont spécifiques aux `UpdatePricingTerms` actions de l'API AWS Marketplace Catalog. Les validations sont effectuées lorsque vous appelez`StartChangeSet`. Si la demande ne répond pas aux exigences suivantes, elle échouera avec une réponse HTTP.


| Champ de saisie | Règle de validation | 
| --- | --- | 
| Termes | Obligatoire<br />Ne doit pas être nul ou vide<br />Chaque terme ne doit être présenté qu'une seule fois. Termes autorisés :+  \* ResaleUsageBasedPricingTerm <br />+  \* ResaleConfigurableUpfrontPricingTerm <br />+  \* ResaleFixedupfrontPricingTerm  | 
| Termes []. ResaleUsageBasedPricingTerm.CurrencyCode | Obligatoire <br />Valeurs autorisées : USD | 
| Termes []. ResaleUsageBasedPricingTerm.Validity | Obligatoire<br />Ne doit pas être nul ou vide<br />Format attendu : durée ISO 8601 | 
| Termes []. ResaleUsageBasedPricingTerm.RateCards | Obligatoire<br />Ne doit pas être nul ou vide | 
| Termes []. ResaleUsageBasedPricingTerm.RateCards[]. DimensionKey | Obligatoire<br />Ne doit pas être nul ou vide <br />La longueur doit être comprise entre 1 et 60 | 
| Termes []. ResaleUsageBasedPricingTerm.RateCards[] .Prix | Obligatoire<br />Ne doit pas être nul ou vide <br />Le type de données est « String » <br />Doit être non négatif <br />Supporte jusqu'à 8 décimales<br />Aucun caractère spécial n'est pris en charge | 
| Termes []. ResaleConfigurableUpfrontPricingTerm.CurrencyCode | Obligatoire <br />Valeurs autorisées : ["USD », « AUD », « EUR », « GBP », « JPN"] | 
| Termes []. ResaleConfigurableUpfrontPricingTerm.RateCards[]. Selector.Type | Obligatoire<br />Ne doit pas être nul ou vide <br />Valeurs autorisées : Durée | 
| Termes []. ResaleConfigurableUpfrontPricingTerm.RateCards[]. Selector.Value | Obligatoire<br />Ne doit pas être nul ou vide<br />Format attendu : durée ISO 8601 | 
| Termes []. ResaleConfigurableUpfrontPricingTerm.RateCards[]. RateCard.DimensionKey | Obligatoire<br />Ne doit pas être nul ou vide <br />La longueur doit être comprise entre 1 et 60 | 
| Termes []. ResaleConfigurableUpfrontPricingTerm.RateCards[]. RateCard.Price | Obligatoire<br />Ne doit pas être nul ou vide <br />Le type de données est « String » <br />Doit être non négatif <br />Supporte jusqu'à 6 décimales<br />Aucun caractère spécial n'est pris en charge | 
| Termes []. ResaleConfigurableUpfrontPricingTerm.RateCards[]. Contraintes | Facultatif | 
| Termes []. ResaleFixedUpfrontPricingTerm.CurrencyCode | Obligatoire Valeurs autorisées : ["USD », « AUD », « EUR », « GBP », « JPN"] | 
| Termes []. ResaleFixedUpfrontPricingTerm.Price | Obligatoire<br />Ne doit pas être nul ou vide <br />Le type de données est « String » <br />Doit être non négatif <br />Supporte jusqu'à 6 décimales<br />Aucun caractère spécial n'est pris en charge <br />Valeurs autorisées : 0,0 | 
| Termes []. ResaleFixedUpfrontPricingTerm.Duration | Obligatoire<br />Ne doit pas être nul ou vide<br />Format attendu : durée ISO 8601 | 
| Termes []. ResaleFixedUpfrontPricingTerm.Grants[]. DimensionKey | Obligatoire<br />Ne doit pas être nul ou vide <br />La longueur doit être comprise entre 1 et 60 | 
| Termes []. ResaleFixedUpfrontPricingTerm.Grants[]. MaxQuantty | Obligatoire<br />Ne doit pas être nul ou vide | 
| Une propriété inconnue | Aucune propriété supplémentaire n'est autorisée | 

**Erreurs asynchrones **

Les erreurs suivantes sont spécifiques aux `UpdatePricingTerms` actions du AWS Marketplace Catalog API. Ces erreurs sont renvoyées lorsque vous appelez `DescribeChangeSet` après le traitement d'un ensemble de modifications. Pour plus d'informations sur l'utilisation `DescribeChangeSet` pour obtenir le statut d'une demande de modification, consultez[Travailler avec des ensembles de modifications](catalog-apis.md#working-with-change-sets).


| Code d’erreur | Message d’erreur | 
| --- | --- | 
| CODE\_DE\_DEVISE NON VALIDE | Fournissez les mêmes informations pour CurrencyCode toutes les conditions de tarification et de paiement.  | 
| PRODUIT\_INCOMPATIBLE | Utilisez les dimensions existantes et disponibles dans le produit en [x].  | 
| CLÉS\_DIMENSIONNELLES DUPLIQUÉES | Fournissez une carte tarifaire avec une liste unique de clés de dimensions dans [x]  | 
| CARTE\_DE\_TARIF NON VALIDE | Indiquez les dimensions qui ont la même unité en [x]  | 
| CARTE\_DE\_TARIF NON VALIDE | Fournissez une carte tarifaire pour les dimensions mesurées uniquement. ResaleUsageBasedPricingTerm  | 
| CARTE\_DE\_TARIF NON VALIDE | Fournissez des taux basés sur l'utilisation pour toutes les dimensions mesurées disponibles en ResaleUsageBasedPricingTerm.  | 
| TROP\_NOMBREUX\_TARIFS | Fournissez RateCards dans les limites autorisées dans ResaleUsageBasedPricingTerm.  | 
| DUPLICATE\_SELECTORS | Fournissez une liste unique de sélecteurs dans. ResaleConfigurableUpfrontPricingTerm  | 
| CARTE\_DE\_TARIF NON VALIDE | ConfigurableUpfrontPricingTerm il manque une ou plusieurs clés de dimension pour la durée [x]. Indiquez les prix pour le même ensemble de clés dimensionnelles pour toutes les durées.  | 
| CARTE\_DE\_TARIF NON VALIDE | Indiquez toutes les dimensions mesurées ou toutes les dimensions autorisées en [x].  | 
| CONTRAINTES\_TARIFS\_CARTES\_INCOMPATIBLES | Réglez MultipleDimensionSelection et QuantityConfiguration sur Interdit ResaleConfigurableUpfrontPricingTerm pour le PricingModel.  | 
| TROP DE CARTES\_TARIFS | Une seule carte tarifaire ConfigurableUpfrontPricingTerm est autorisée pour le produit.  | 
| TERMES\_INCOMPATIBLES\_ | Les termes suivants ne sont pas compatibles avec PricingModel : [x, y, z].  | 
| TROP\_NOMBREUX\_TARIFS | Fournissez RateCards dans les limites autorisées dans [x term].  | 
| TROP DE SUBVENTIONS | Offrez jusqu'à [N] subventions en [x trimestre].  | 
| VALEUR\_DURÉ\_DE\_SÉLECTIONNEUR\_NON VALIDE | Indiquez une durée comprise entre [x] et [y] mois dans ResaleConfigurableUpfront  | 
| TROP DE SUBVENTIONS | Indiquez une durée comprise entre [x] et [y] mois.  | 
| VALEUR\_DURÉ\_DE\_SÉLECTIONNEUR\_NON VALIDE | Assurez-vous que la granularité de la durée est au niveau du jour pour les dimensions mesurées dans ResaleConfigurableUpfront  | 
| DURÉE\_INVALIDE | Assurez-vous que la granularité de la durée est au niveau du jour pour les dimensions mesurées en. FixedUpfront  | 
| CARTE\_DE\_TARIF NON VALIDE | Indiquez uniquement les dimensions autorisées en [x].  | 
| DURÉE\_MANQUANTE | Entrez une durée entre [x].  | 
| CLÉS\_DIMENSIONNELLES DUPLIQUÉES | Fournissez à Grants une liste unique de clés de dimension dans [x].  | 
| PARAMÈTRES\_DE\_PAYEMENT\_INCOMPATIBLES | Mettez à jour vos paramètres de paiement pour les rendre compatibles avec CurrencyCode.  | 
| VÉRIFICATION\_INCOMPATIBLE\_VENDEUR | Effectuez tous les processus de vérification du vendeur requis.  | 
| CODE\_DE\_DEVISE NON VALIDE | Fournissez un support CurrencyCode.  | 
| CODE\_DE\_DEVISE NON VALIDE | Fournissez les mêmes informations pour CurrencyCode toutes les conditions de tarification et de paiement.  | 
| CODE\_DE\_DEVISE INCOMPATIBLE | CurrencyCode ne peut pas être modifiée après la publication de l'offre.  | 

## Mettre à jour le calendrier de paiement
<a name="update-payment-schedule-details"></a>

Vous pouvez utiliser l'API du catalogue pour modifier les informations associées au paiement, telles qu'un calendrier de paiement flexible, dans. AWS Marketplace

Pour mettre à jour les informations associées au paiement pour votre autorisation de revente, appelez l'opération `StartChangeSet` API avec le type de `UpdatePaymentScheduleTerms` modification, comme indiqué dans l'exemple suivant.

**Syntaxe de la demande**

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

Fournissez des informations pour les champs permettant d'ajouter le type de `UpdatePaymentScheduleTerms` modification :
+ **Entité ** (objet) (obligatoire) — Votre autorisation de revente. 
  + **Type ** (chaîne) (obligatoire) — `Type` C'est toujours`ResaleAuthorization@1.0`. 
  + **Identifiant ** (chaîne) (obligatoire) : votre numéro d'autorisation de revente. Pour de plus amples informations, veuillez consulter [Identifiant](catalog-apis.md#identifier).
+ **DetailsDocument**(objet) (obligatoire) — Spécificités de la demande.
  + **Conditions ** (ensemble de structures) — Liste des conditions de paiement que vous souhaitez mettre à jour. Les conditions de paiement prises en charge sont les suivantes :
    + **ResalePaymentScheduleTerm**(objet) — Définit un modèle de tarification échelonné dans lequel les clients sont facturés un prix fixe à différentes dates pendant la période de validité du contrat.
      + **Type ** (chaîne) — Catégorie du terme en cours de mise à jour.
      + **CurrencyCode**(chaîne) (obligatoire) — Définit la devise pour le paiement mentionné dans le calendrier. Les USD, AUD, EUR, GBP et JPY sont pris en charge.
      + **Calendrier ** (ensemble de structures) — Liste du calendrier de paiement où chaque élément définit un versement de paiement. Il contient les informations nécessaires au calcul du prix à payer et de la date à laquelle le client serait facturé.
        + **ChargeDate**(string) (obligatoire) — Date à laquelle le client paierait le prix défini dans ce délai de paiement. Ce champ prend en charge le format ISO 8601.
        + **ChargeAmount**(string) (obligatoire) — Le prix que le client paierait à une date planifiée (ChargeDate).

**Syntaxe de réponse **

Un ensemble de modifications est créé pour votre demande. La réponse à cette demande vous donne le `ChangeSetId` et `ChangeSetArn` pour l'ensemble de modifications et ressemble à ce qui suit.

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

La demande de modification est ajoutée à une file d'attente et traitée. Cela inclut la validation des informations pour s'assurer qu'elles sont conformes aux AWS Marketplace directives. Le processus de validation peut prendre de quelques minutes à quelques heures.

Vous pouvez vérifier l'état de la demande via l' Portail de gestion AWS Marketplace API Catalog ou directement via l'API Catalog à l'aide de l'opération `[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)` API.

**Validations synchrones **

Les validations de schéma sont spécifiques aux `UpdatePaymentScheduleTerms` actions du AWS Marketplace Catalog API. Les validations sont effectuées lorsque vous appelez`StartChangeSet`. Si la demande ne répond pas aux exigences suivantes, elle échouera avec une réponse HTTP.


| Champ de saisie | Règle de validation | HTTP | 
| --- | --- | --- | 
| Terms.Type | Obligatoire<br />Non pris en charge pour le produit [x] <br />Termes autorisés : ResalePaymentScheduleTerm | 422 | 
| Termes []. CurrencyCode | Obligatoire<br />Valeurs autorisées : USD | 422 | 
| Termes []. ResalePaymentScheduleTerm.Schedule | Obligatoire<br />La longueur doit être comprise entre 1 et 60 | 422 | 
| Termes []. ResalePaymentScheduleTerm.Shedule.ChargeDate | Obligatoire<br />Doit être au format ISO 8601<br />La date doit être dans le futur | 422 | 
| Termes []. ResalePaymentScheduleTerm.Shedule.ChargeAmount | Obligatoire<br />Doit être non négatif | 422 | 
| Une propriété inconnue | Aucune propriété supplémentaire n'est autorisée | 422 | 

**Erreurs asynchrones **

Les erreurs suivantes sont spécifiques aux `UpdatePaymentScheduleTerms` actions du AWS Marketplace Catalog API. Ces erreurs sont renvoyées lorsque vous appelez `DescribeChangeSet` après le traitement d'un ensemble de modifications. Pour plus d'informations sur l'utilisation `DescribeChangeSet` pour obtenir l'état d'une demande de modification, consultez. [Travailler avec des ensembles de modifications](catalog-apis.md#working-with-change-sets)


| Code d’erreur | Message d’erreur | 
| --- | --- | 
| TERMES\_INCOMPATIBLES | OffersMaxQuantity et AvailabilityEndDate doit être présent avec ResalePaymentScheduleTerm.  | 
| TROP\_NOMBREUX\_PAIEMENTS PLANIFIÉS | Fournissez jusqu'à 60 paiements planifiés dans ResalePaymentScheduleTerm.  | 
| DATES\_DE\_FACTURATION EN DOUBLE | Indiquez des dates de facturation uniques dans ResalePaymentScheduleTerm.  | 
| DATES\_DE\_FACTURATION NON VALIDES | Offrez un avenir ChargeDate.  | 
| DATES\_DE\_FACTURATION NON VALIDES | Indiquez une date de dernière recharge antérieure à [x].  | 
| TERMES\_OBLIGATOIRES\_MANQUANTES | Fournissez un ResaleFixedUpfrontPricingTerm et ResalePaymentScheduleTerm ensemble.  | 
| CODE\_DE\_DEVISE NON VALIDE | Fournissez les mêmes informations pour CurrencyCode toutes les conditions de tarification et de paiement.  | 
| PARAMÈTRES\_DE\_PAYEMENT\_INCOMPATIBLES | Mettez à jour vos paramètres de paiement pour les rendre compatibles avec CurrencyCode.  | 
| VÉRIFICATION\_INCOMPATIBLE\_VENDEUR | Effectuez tous les processus de vérification du vendeur requis.  | 
| CODE\_DE\_DEVISE NON VALIDE | Fournissez un support CurrencyCode.  | 
| CODE\_DE\_DEVISE NON VALIDE | Fournissez les mêmes informations pour CurrencyCode toutes les conditions de tarification et de paiement.  | 
| CODE\_DE\_MONNAIE\_INCOMPATIBLE | CurrencyCode ne peut pas être modifiée après la publication de l'offre.  | 

## Mettre à jour les conditions de paiement net
<a name="update-resale-net-payment-terms"></a>

Vous pouvez utiliser l'API du catalogue pour définir les conditions de paiement nettes de votre autorisation de revente dans AWS Marketplace. Un délai de paiement net est un terme dans lequel vous spécifiez le nombre de jours après l'émission de la facture auquel le paiement est dû.

Le délai de paiement net que vous définissez sur une autorisation de revente est la durée maximale que le partenaire de distribution peut proposer à un acheteur dans le cadre d'une offre privée d'un partenaire de distribution (CPPO). Le partenaire de distribution peut proposer la même période ou une période plus courte, mais pas plus longue. Pour de plus amples informations, veuillez consulter [Création d'un CPPO](work-with-cppos.md#create-offer-using-resale-auth).

**Note**  
Les conditions de paiement nettes s'appliquent uniquement aux acheteurs qui disposent d'un mode de paiement par facture avec. AWS Si vous ne définissez pas de conditions de paiement net sur votre autorisation de revente, le partenaire de distribution ne peut pas définir de conditions de paiement net sur le CPPO et les conditions de paiement de l'acheteur s'appliqueront. AWS 

Pour définir le délai de paiement net de votre autorisation de revente, appelez l'opération `StartChangeSet` API avec le type de `UpdateNetPaymentTerms` modification, comme indiqué dans l'exemple suivant.

**Syntaxe de la demande**

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

{
  "Catalog": "AWSMarketplace",
  "ChangeSet": [
    {
      "ChangeType": "UpdateNetPaymentTerms",
      "Entity": {
        "Type": "ResaleAuthorization@1.0",
        "Identifier": "resaleauthz-123456789"
      },
      "DetailsDocument": {
        "Terms": [
          {
            "Type": "ResaleNetPaymentTerm",
            "PaymentDuePeriod": "P60D"
          }
        ]
      }
    }
  ]
}
```

Fournissez des informations pour les champs permettant d'ajouter le type de `UpdateNetPaymentTerms` modification :
+ **Entité ** (objet) (obligatoire) — Votre autorisation de revente.
  + **Type ** (chaîne) (obligatoire) — `Type` C'est toujours`ResaleAuthorization@1.0`.
  + **Identifiant ** (chaîne) (obligatoire) : votre numéro d'autorisation de revente. Pour de plus amples informations, veuillez consulter [Identifiant](catalog-apis.md#identifier).
+ **DetailsDocument**(objet) (obligatoire) — Valeur JSON des spécificités de la demande.
  + **Conditions ** (ensemble de structures) (obligatoire) — Liste des conditions de paiement net que vous souhaitez mettre à jour. Une autorisation de revente peut contenir au plus un délai de paiement net. Pour supprimer le délai de paiement net, fournissez une liste vide. Les termes pris en charge sont les suivants :
    + **ResaleNetPaymentTerm**(objet) — Définit le délai de paiement net maximum que le partenaire de distribution peut proposer à un acheteur.
      + **Type ** (chaîne) — Type du terme en cours de mise à jour. Voici la valeur de l'objet :`"ResaleNetPaymentTerm"`.
      + **PaymentDuePeriod**(chaîne) — Nombre de jours après la date d'émission de la facture pendant lesquels le paiement est dû. Ce champ prend en charge le format ISO 8601. Les valeurs prises en charge sont `P15D`, `P30D`, `P45D`, `P60D`, `P90D`, et `P120D`.

**Syntaxe de réponse **

Un ensemble de modifications est créé pour votre demande. La réponse à cette demande vous donne le `ChangeSetId` et `ChangeSetArn` pour l'ensemble de modifications et ressemble à ce qui suit.

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

La demande de modification est ajoutée à une file d'attente et traitée. Cela inclut la validation des informations pour s'assurer qu'elles sont conformes aux AWS Marketplace directives. Le processus de validation peut prendre quelques minutes. 

Vous pouvez vérifier l'état de la demande via l' Portail de gestion AWS Marketplace API Catalog ou directement via l'API Catalog à l'aide de l'opération `[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)` API.

**Validations synchrones **

Les validations de schéma suivantes sont spécifiques aux `UpdateNetPaymentTerms` actions du AWS Marketplace Catalog API. Ces validations sont effectuées lorsque vous appelez`StartChangeSet`. Si la demande ne répond pas aux exigences suivantes, elle échouera avec une réponse HTTP.


| Champ de saisie | Règle de validation | Code HTTP | 
| --- | --- | --- | 
| Termes | Obligatoire<br />Seul `ResaleNetPaymentTerm` est autorisé<br />La taille de la liste doit être inférieure à 2 | 422 | 
| Termes [] .Type | Obligatoire<br />Ne peut être `ResaleNetPaymentTerm` | 422 | 
| Termes []. ResaleNetPaymentTerm.PaymentDuePeriod | Obligatoire<br />Format attendu : durée ISO 8601<br />Valeurs autorisées : ["P15D », « P30D », « P45D », « P60D », « P90D », « P120D"] | 422 | 

**Erreurs asynchrones **

Les erreurs suivantes sont spécifiques aux `UpdateNetPaymentTerms` actions du AWS Marketplace Catalog API. Ces erreurs sont renvoyées lorsque vous appelez `DescribeChangeSet` après le traitement d'un ensemble de modifications. Pour plus d'informations sur l'utilisation `DescribeChangeSet` pour obtenir le statut d'une demande de modification, consultez[Travailler avec des ensembles de modifications](catalog-apis.md#working-with-change-sets).


| Code d’erreur | Message d’erreur | 
| --- | --- | 
| ÉTAT\_INCOMPATIBLE | UpdateNetPaymentTerms la demande ne peut pas être exécutée une fois l'autorisation de revente délivrée.  | 
| TERMES\_INCOMPATIBLES\_ | ResaleNetPaymentTerm n'est pas disponible pour le compte vendeur [x].  | 

## Mettre à jour les détails de l'autorisation de revente
<a name="update-resale-auth-information"></a>

Vous pouvez utiliser l'API du catalogue pour mettre à jour les détails de l'autorisation de revente dans AWS Marketplace.

Pour mettre à jour les détails de l'autorisation de revente, appelez l'opération d'`StartChangeSet`API avec le type de `UpdateInformation` modification, comme indiqué dans l'exemple suivant. 

**Note**  
Le type de `UpdateInformation` modification ne met à jour que les sections fournies dans la demande ; toutes les autres informations restent inchangées.

**Syntaxe de la demande**

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

Fournissez des informations pour les champs permettant d'ajouter le type de `UpdateInformation` modification :
+ **Entité ** (objet) (obligatoire) — Votre autorisation de revente. 
  + **Type ** (chaîne) (obligatoire) — `Type` C'est toujours`ResaleAuthorization@1.0`. 
  + **Identifiant ** (chaîne) (obligatoire) : votre numéro d'autorisation de revente. Pour de plus amples informations, veuillez consulter [Identifiant](catalog-apis.md#identifier).
+ **DetailsDocument**(objet) (obligatoire) — Détails de la demande, y compris les informations que vous souhaitez mettre à jour pour l'autorisation de revente.
  + **Nom ** (chaîne) (facultatif) — Le nom associé au ResaleAuthorization pour une meilleure lisibilité pour vous et vos partenaires de distribution.
  + **Description ** (chaîne) (facultatif) — La description est un texte libre dans lequel vous pouvez ajouter des détails sur le ResaleAuthorization.
  + **PreExistingBuyerAgreement**(objet) (facultatif) — Détermine si cette offre est le renouvellement d'un contrat existant avec un client existant pour le même produit sous-jacent. L'accord existant peut être interne ou externe AWS Marketplace. AWS peut auditer et vérifier que votre offre est un renouvellement. S'il n' AWS est pas en mesure de vérifier votre offre, il AWS peut révoquer l'offre et les droits de votre client.
    + **AcquisitionChannel**(chaîne) (obligatoire) — Indique si le contrat d'achat existant a été signé à l'extérieur AWS Marketplace ou à l'intérieur AWS Marketplace.

      Valeurs possibles : `External`, `AwsMarketplace`
    + **PricingModel**(chaîne) (obligatoire) ** — ** Indique le modèle de tarification utilisé par le contrat existant.

      Valeurs possibles : `Contract`, `Usage`, `BYOL`, `Free`

**Syntaxe de réponse **

Un ensemble de modifications est créé pour votre demande. La réponse à cette demande vous donne le `ChangeSetId` et `ChangeSetArn` pour l'ensemble de modifications et ressemble à ce qui suit.

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

La demande de modification est ajoutée à une file d'attente et traitée. Cela inclut la validation des informations pour s'assurer qu'elles sont conformes aux AWS Marketplace directives. Le processus de validation peut prendre de quelques minutes à quelques heures.

Vous pouvez vérifier l'état de la demande via l' Portail de gestion AWS Marketplace API Catalog ou directement via l'API Catalog à l'aide de l'opération `[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)` API.

**Validations synchrones **

Les validations de schéma suivantes sont spécifiques aux `UpdateInformation` actions du AWS Marketplace Catalog API. Ces validations sont effectuées lorsque vous appelez`StartChangeSet`, et la demande échouera avec une erreur HTTP si l'entrée ne répond pas aux exigences suivantes.


| Champ de saisie | Règle de validation | Code HTTP | 
| --- | --- | --- | 
| Nom | Facultatif<br />Ne doit pas être nul ou vide<br />La longueur doit être comprise entre 1 et 100 caractères <br />Motif ^ [A-Za-z0-9] \*$<br />Aucun caractère spécial ou espace blanc n'est autorisé | 422 | 
| Description | Facultatif<br />La longueur doit être comprise entre 1 et 255 caractères <br />Motif ^ [A-Za-z0-9\\ \\ s] \*$<br />Aucun caractère spécial n'est autorisé | 422 | 
| Une propriété inconnue | Aucune propriété supplémentaire n'est autorisée | 422 | 

**Erreurs asynchrones **

Les erreurs suivantes sont spécifiques aux `UpdateInformation` actions du AWS Marketplace Catalog API. Ces erreurs sont renvoyées lorsque vous appelez `DescribeChangeSet` après le traitement d'un ensemble de modifications. Pour plus d'informations sur l'utilisation `DescribeChangeSet` pour obtenir l'état d'une demande de modification, consultez. [Travailler avec des ensembles de modifications](catalog-apis.md#working-with-change-sets)


| Code d’erreur | Message d’erreur | 
| --- | --- | 
| CIBLAGE INCOMPATIBLE\_DES ACHETEURS | Au moins un compte acheteur doit être présent pour ResaleAuthorization PreExistingBuyerAgreement.  | 

## Restreindre une autorisation de revente
<a name="restricte-resale-auth"></a>

Vous pouvez utiliser l'API du catalogue pour définir des règles restreignant une autorisation de revente dans AWS Marketplace.

Une autorisation de revente restreinte ne peut plus être utilisée par un partenaire de distribution pour créer une offre privée. Une offre privée existante ne sera pas affectée.

Pour restreindre votre autorisation de revente, appelez l'opération `StartChangeSet` d'API avec le type de `RestrictResaleAuthorization` modification, comme indiqué dans l'exemple suivant. 

**Important**  
Il s'agit d'une opération irréversible. Une fois que l'autorisation de revente est marquée comme`Restricted`, elle ne peut plus être dans un `Active` état nouveau.

**Syntaxe de la demande**

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

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

Fournissez des informations pour les champs permettant d'ajouter le type de `RestrictResaleAuthorization` modification :
+ **Entité ** (objet) (obligatoire) — Votre autorisation de revente. 
  + **Type ** (chaîne) (obligatoire) — `Type` C'est toujours`ResaleAuthorization@1.0`. 
  + **Identifiant ** (chaîne) (obligatoire) : votre numéro d'autorisation de revente. Pour de plus amples informations, veuillez consulter [Identifiant](catalog-apis.md#identifier).
+ **DetailsDocument**(objet) (obligatoire) — Spécificités de la demande. Il doit s'agir d'un objet vide pour`RestrictResaleAuthorization`.

**Syntaxe de réponse **

Un ensemble de modifications est créé pour votre demande. La réponse à cette demande vous donne le `ChangeSetId` et `ChangeSetArn` pour l'ensemble de modifications et ressemble à ce qui suit.

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

La demande de modification est ajoutée à une file d'attente et traitée. Cela inclut la validation des informations pour s'assurer qu'elles sont conformes aux AWS Marketplace directives. Le processus de validation peut prendre de quelques minutes à quelques heures.

Vous pouvez vérifier l'état de la demande via l' Portail de gestion AWS Marketplace API Catalog ou directement via l'API Catalog à l'aide de l'opération `[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)` API.

**Validations synchrones **

Les validations de schéma sont spécifiques aux `RestrictResaleAuthorization` actions de l'API AWS Marketplace Catalog. Ces validations sont effectuées lorsque vous appelez`StartChangeSet`. Si la demande ne répond pas aux exigences suivantes, elle échouera avec une réponse HTTP.


| Champ de saisie | Règle de validation | Code HTTP | 
| --- | --- | --- | 
| DetailsDocument | Doit être vide | 422 | 
| RestrictResaleAuthorization | Expiré ne ResaleAuthorization peut pas être marqué comme `Restricted` | 422 | 
| Une propriété inconnue | Aucune propriété supplémentaire n'est autorisée | 422 | 

**Erreurs asynchrones **

Les erreurs suivantes sont spécifiques aux `RestrictResaleAuthorization` actions du AWS Marketplace Catalog API. Ces erreurs sont renvoyées lorsque vous appelez `DescribeChangeSet` après le traitement d'un ensemble de modifications. Pour plus d'informations sur l'utilisation `DescribeChangeSet` pour obtenir l'état d'une demande de modification, consultez. [Travailler avec des ensembles de modifications](catalog-apis.md#working-with-change-sets)


| Code d’erreur | Message d’erreur | 
| --- | --- | 
| ÉTAT\_INCOMPATIBLE | La date d'expiration ne ResaleAuthorization peut pas être marquée comme restreinte.  | 

## Déclarer une autorisation de revente et la rendre visible à un partenaire de distribution
<a name="release-resale-auth"></a>

Vous pouvez utiliser l'API du catalogue pour vous initier `ResaleAuthorization` à un `Active` état.

 `ReleaseResaleAuthorization`active votre autorisation de revente afin qu'un partenaire de distribution puisse utiliser votre autorisation de revente pour créer des offres privées.

Pour libérer votre autorisation de revente, appelez l'opération `StartChangeSet` d'API avec le type de `ReleaseResaleAuthorization` modification, comme indiqué dans l'exemple suivant.

**Syntaxe de la demande**

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

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

Fournissez des informations pour les champs permettant d'ajouter le type de `ReleaseResaleAuthorization` modification :
+ **Entité ** (objet) (obligatoire) — Votre autorisation de revente. 
  + **Type ** (chaîne) (obligatoire) — `Type` C'est toujours`ResaleAuthorization@1.0`. 
  + **Identifiant ** (chaîne) (obligatoire) : votre numéro d'autorisation de revente. Pour de plus amples informations, veuillez consulter [Identifiant](catalog-apis.md#identifier).
+ **DetailsDocument**(objet) (obligatoire) — Spécificités de la demande. Il doit être vide pour`ReleaseResaleAuthorization`.

**Syntaxe de réponse **

Un ensemble de modifications est créé pour votre demande. La réponse à cette demande vous donne le `ChangeSetId` et `ChangeSetArn` pour l'ensemble de modifications et ressemble à ce qui suit.

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

La demande de modification est ajoutée à une file d'attente et traitée. Cela inclut la validation des informations pour s'assurer qu'elles sont conformes aux AWS Marketplace directives. Le processus de validation peut prendre de quelques minutes à quelques heures.

Vous pouvez vérifier l'état de la demande via l' Portail de gestion AWS Marketplace API Catalog ou directement via l'API Catalog à l'aide de l'opération `[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)` API.

**Validations synchrones **

Les validations de schéma sont spécifiques aux `ReleaseResaleAuthorization` actions du AWS Marketplace Catalog API. Les validations sont effectuées lorsque vous appelez`StartChangeSet`. Si la demande ne répond pas aux exigences suivantes, elle échouera avec une réponse HTTP.


| Champ de saisie | Règle de validation | Code HTTP | 
| --- | --- | --- | 
| Une propriété inconnue | Aucune propriété supplémentaire n'est autorisée | 422 | 

**Erreurs asynchrones **

Les erreurs suivantes sont spécifiques aux `ReleaseResaleAuthorization` actions du AWS Marketplace Catalog API. Ces erreurs sont renvoyées lorsque vous appelez `DescribeChangeSet` après le traitement d'un ensemble de modifications. Pour plus de détails sur l'utilisation `DescribeChangeSet` pour obtenir le statut d'une demande de modification, consultez[Travailler avec des ensembles de modifications](catalog-apis.md#working-with-change-sets).


| Code d’erreur | Message d’erreur | 
| --- | --- | 
| TERMES\_OBLIGATOIRES\_MANQUANTES | Fournissez un BuyerLegalTerm.  | 
| TERMES\_OBLIGATOIRES\_MANQUANTES | Fournissez un PricingTerm.  | 
| PRODUIT\_INCOMPATIBLE | Utilisez un produit actif dans un état limité ou public.  | 
| TERME\_DE\_PRIX\_INCOMPATIBLE\_ | PaymentScheduleTerm et FixedUpfrontPricingTerm doivent être présents ensemble.  | 
| CIBLAGE INCOMPATIBLE\_DES ACHETEURS | Au moins un compte acheteur doit être présent pour ResaleAuthorization PreExistingBuyerAgreement.  | 
| TERMES\_OBLIGATOIRES\_MANQUANTES | Indiquez au moins l'un des éléments suivants : [x, y, z].  | 
| ÉTAT\_INCOMPATIBLE | La demande [x] ne peut pas être exécutée une fois l'autorisation de revente délivrée.  | 

## Décrire une autorisation de revente existante
<a name="describe-entity-resale-auth"></a>

Pour décrire les détails de l'autorisation de revente, appelez l'opération d'`DescribeEntity`API avec le type d'`ResaleAuthorization@1.0`entité, comme indiqué dans l'exemple suivant.

**Syntaxe de la demande**

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

Fournissez des informations pour les champs permettant d'ajouter le type de `DescribeEntity` modification :
+ **catalog ** (chaîne) — Le catalogue associé à la demande. Valeur fixe :`AWSMarketplace`.
+ **entityId ** (string) — L'identifiant unique de l'objet `ResaleAuthorization` à décrire.

**Syntaxe de réponse **

La réponse à cette demande vous donne les détails de l'offre et se présente comme suit.

```
{
  "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": "ResaleNetPaymentTerm",
        "Id": "term_id_placeholder",
        "PaymentDuePeriod": "P60D"
      },
      {
        "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"
      }
    ]
  }
}
```

Vous trouverez ci-dessous des informations sur les champs que vous voyez dans la `DescribeEntity` réponse.
+ **EntityType**(string) — Type nommé de l'entité, qui est ResaleAuthorization @1 .0.
+ **EntityIdentifier**(chaîne) — Identifiant de l'entité, au format EntityId @RevisionId.
+ **EntityArn**(chaîne) — L'ARN associé à l'identifiant unique de l'ensemble de modifications référencé dans cette demande.
+ **LastModifiedDate**(chaîne) — Date de dernière modification de l'entité, au format ISO 8601 (27/02/2018T13:45:22Z).
+ **DetailsDocument**(objet) (obligatoire) — Cette chaîne JSON inclut les détails de l'entité.
  + **Nom ** (chaîne) — Nom associé au ResaleAuthorization pour une meilleure lisibilité pour vous et vos partenaires de distribution. Il est affiché dans le cadre des informations du contrat.
  + **Description ** (chaîne) — La description est un texte libre destiné à être utilisé uniquement par vous et ne sera jamais exposé aux acheteurs.
  + **ProductId**(chaîne) — La description est un texte libre destiné à être utilisé uniquement par vous et ne sera jamais exposé aux acheteurs.
  + **AgreementToken**(string) — Généré à partir du contenu au format ResaleAuthorization. Il contient des informations sur les conditions, les règles et le proposant lors de la création d'un accord. Il est utilisé pour les contrôles d'autorisation et les validations lors de l'approvisionnement.
  + **Termes ** (ensemble de structures) — Liste des termes présentés pour acceptation.
  + **Règles ** (tableau de structures) — Liste de règles ou ensemble d'instructions.