

L'AWS Marketplace API Reference è stato ristrutturato. Per ulteriori informazioni sulle operazioni API supportate, consulta l'[AWS Marketplace API Reference](https://docs.aws.amazon.com/marketplace/latest/APIReference/Welcome.html).

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Collabora con le offerte private dei partner di canale utilizzando il Marketplace AWS API
<a name="work-with-cppos"></a>

Puoi utilizzarle AWS Marketplace Catalog API per automatizzare le attività relative all'utilizzo delle offerte private dei partner di canale (CPPO). 

Quando crei o aggiorni un CPPO, la bozza di offerta conterrà i termini e le regole di un'autorizzazione alla rivendita e sarà invisibile all'acquirente. È possibile, ma non obbligatorio, coinvolgere più persone dell'organizzazione per creare un'offerta privata. 

Ad esempio, una persona può essere responsabile dell'aggiornamento dei prezzi mentre un'altra persona può essere responsabile dell'aggiornamento del calendario dei pagamenti. Quindi, una terza persona può essere responsabile dell'aggiornamento dei termini legali. Puoi autorizzare una persona ad aggiornare alcune parti di un'offerta. Tuttavia, puoi concedere solo autorizzazioni di lettura alle autorizzazioni di rivendita.

Come prerequisito per chiamare i tipi di modifica, è necessario aver ricevuto una o più autorizzazioni di rivendita e avere dimestichezza con l'utilizzo. AWS Marketplace Catalog API

*Per maggiori informazioni, consulta le [offerte private dei partner di canale nella Guida](https://docs.aws.amazon.com/marketplace/latest/userguide/channel-partner-offers.html) al Marketplace AWS venditore.*

I seguenti argomenti descrivono come utilizzare l'API Catalog per creare e aggiornare i CPPO:

**Topics**
+ [Prerequisiti CPPO](#cppo-prerequisites)
+ [Crea un CPPO](#create-offer-using-resale-auth)
+ [Crea un'offerta sostitutiva privata per i partner di canale](#create-replacement-offer-using-resale-auth)
+ [Aggiorna il markup](#update-markup)
+ [Aggiorna la configurazione del targeting](#update-targeting-cppo)
+ [Aggiorna le risorse legali](#update-legal-terms-cppo)
+ [Aggiorna la reperibilità del CPPO](#update-availability-cppo)
+ [Definire la data di scadenza degli accordi](#update-validity-terms-cppo)
+ [Aggiorna i prezzi](#update-pricing-terms-cppo)
+ [Aggiorna i dettagli del programma di pagamento](#update-payment-schedule-terms-cppo)
+ [Pubblica il CPPO](#release-offer-cppo)
+ [Definire un CPPO esistente](#describe-entity-cppo)

## Prerequisiti CPPO
<a name="cppo-prerequisites"></a>

Service-linked role for ResaleAuthorization (SLR) setup è un prerequisito obbligatorio per utilizzare l'autorizzazione alla rivendita per creare un CPPO. Per utilizzare l'autorizzazione alla rivendita, sia i fornitori di software indipendenti (ISV) che i partner di Marketplace AWS canale devono creare un ruolo collegato al servizio che fornisca le autorizzazioni di condivisione delle risorse a. AWS Se entrambi i gruppi non soddisfano questo prerequisito, non AWS possono condividere la risorsa di autorizzazione dell'ISV con il Channel Partner. Marketplace AWS *Per maggiori informazioni, consulta la sezione [Utilizzo dei ruoli per l'autorizzazione alla rivendita Marketplace AWS nella Guida](https://docs.aws.amazon.com/marketplace/latest/userguide/using-roles-for-resale-authorization.html) al Marketplace AWS venditore.*

## Crea un CPPO
<a name="create-offer-using-resale-auth"></a>

Utilizzi un'autorizzazione alla rivendita mirata a te per creare un'offerta privata per i partner di canale (CPPO) nello `Draft` stato di. Marketplace AWS

Se la tua richiesta viene elaborata correttamente, AWS Marketplace Catalog API genera un'offerta valida per te con `Draft` i termini dell'autorizzazione alla rivendita. Puoi utilizzarlo `DescribeEntity` per visualizzare i termini applicati alla bozza di offerta di Resale Authorization. Questa è un'offerta incompleta e non è visibile agli acquirenti. Marketplace AWS Utilizza quindi i tipi di modifica associati al CPPO per completare l'offerta.

Una volta completata l'offerta, utilizzi il tipo di `ReleaseOffer` modifica per completare il processo di creazione dell'offerta e rilasciarla. Ciò convaliderà l'intera offerta e la renderà visibile agli acquirenti in Marketplace AWS.

Per creare un'offerta privata per i partner di canale, richiama l'operazione `StartChangeSet` API con il tipo di `CreateOfferUsingResaleAuthorization` modifica, come illustrato nell'esempio seguente. 

**Sintassi della richiesta**

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

{
  "Catalog": "AWSMarketplace",
  "ChangeSet": [
    {
      "ChangeType": "CreateOfferUsingResaleAuthorization",
      "Entity": {
        "Type": "Offer@1.0"
      },
      "DetailsDocument": {
        "ResaleAuthorizationId": "resaleauthz-123456789",
        "Name": "Test Offer",
        "OfferSetId": "offerset-b3f9EXAMPLE27"
      }
    }
  ]
}
```

Fornisci informazioni sui campi per aggiungere il tipo di `CreateOfferUsingResaleAuthorization` modifica:
+ **Entità** (oggetto) (obbligatorio): il tuo CPPO. 
  + **Tipo** (stringa) (obbligatorio): `Type` è sempre`Offer@1.0`. 
+ **DetailsDocument**(object) (richiesto) — Il valore JSON delle specifiche della richiesta.
  + **ResaleAuthorizationId**(stringa) (obbligatorio): l'identificatore univoco che include il prodotto, i termini e le regole offerti. I partner di canale possono aggiungere termini e regole aggiuntivi utilizzando i tipi di modifica degli aggiornamenti. ResaleAuthorization deve essere disponibile e indirizzato a te come partner.
  + **Nome** (stringa) (opzionale): il nome associato all'offerta per una migliore leggibilità. Viene visualizzato come parte delle informazioni sull'accordo.
  + **OfferSetId**(stringa) (opzionale): l'ID dell'offerta impostato a cui associare questa offerta. Specificate questo campo solo quando create un'offerta che farà parte di un set di offerte. Se non OfferSetId viene fornito, verrà creata un'offerta individuale che può essere acquistata separatamente. Tieni presente che l'indicazione di un OfferSetId durante la creazione dell'offerta indica solo l'intenzione di associare l'offerta a quel set di offerte. Per completare l'associazione, è necessario [utilizzare il tipo di AssociateOffers modifica](work-with-offer-sets.md#associate-offers) dopo la creazione dell'offerta.

**Sintassi della risposta**

Viene creato un set di modifiche per la richiesta. La risposta a questa richiesta fornisce l'`ChangeSetId`e `ChangeSetArn` per il set di modifiche ed è simile alla seguente.

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

La richiesta di modifica viene aggiunta a una coda ed elaborata. 

Puoi controllare lo stato della richiesta tramite o direttamente tramite Portale di gestione Marketplace AWS l'API Catalog utilizzando l'operazione `[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)` API.

La risposta a questa richiesta indica lo stato della richiesta. Se lo stato è`SUCCEEDED`, ne `OfferId` viene generato uno nuovo.

```
{
  "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": "CreateOfferUsingResaleAuthorization",
      "Entity": {
        "Type": "Offer@1.0",
        "Identifier": "offer-123456789"
      },
      "DetailsDocument": {
        "ResaleAuthorizationId": "resaleauthz-123456789",
        "Name": "Test Offer"
      },
      "ErrorDetailList": []
    }
  ]
}
```

Puoi utilizzare la `GET` `DescribeEntity` richiesta per descrivere la bozza di regole e termini dell'offerta creata `ResaleAuthorization` nel AWS Marketplace Catalog API Riferimento. Per ulteriori informazioni, consulta [https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html).

**Termini e regole di ResaleAuthorization**
+ **LegalTerms**— Le disposizioni che descrivono i termini legali, come l'EULA contenuta nel documento, ResaleAuthorization verranno aggiunte alla bozza di offerta. È possibile aggiungere termini legali utilizzando il tipo di `UpdateLegalTerms` modifica. Per ulteriori informazioni, consulta [https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/cppos.html#update-legal-terms-cppo](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/cppos.html#update-legal-terms-cppo).
+ **PricingTerms**— Tutti i termini di prezzo (`ConfigurableUpfrontPricingTerm``FixedUpfrontPricingTerm`,`UsageBasedPricingTerm`,,`PaymentScheduleTerms`) descritti dal Produttore nel ResaleAuthorization verranno aggiunti alla bozza di offerta. Puoi scegliere di aumentare il prezzo (per ogni dimensione) per i tuoi acquirenti target utilizzando il tipo di `UpdateMarkup` modifica. Per ulteriori informazioni sul tagging, consulta [https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/cppos.html#update-markup](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/cppos.html#update-markup)in questa guida.
+ **PaymentTerms**— Se il produttore ha definito il piano di pagamento futuro nel ResaleAuthorization, potrai vedere i termini di pagamento nella bozza dell'offerta. Puoi scegliere di aumentare l'importo del piano di pagamento per i tuoi acquirenti target utilizzando il tipo di `UpdateMarkup` modifica. Se desideri impostare il calendario di pagamento per i tuoi acquirenti, puoi utilizzare`UpdatePaymentScheduleTerms`. Per ulteriori informazioni, consulta [https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/cppos.html#update-payment-schedule-terms-cppo](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/cppos.html#update-payment-schedule-terms-cppo).
+ **TargetingRule**— Se ResaleAuthorization è indirizzato a determinati acquirenti, i partner di canale possono offrire offerte private a un sottoinsieme di acquirenti che lo utilizzano PositiveTargeting. Per impostazione predefinita, la regola includerà tutti gli acquirenti di ResaleAuthorization. Puoi selezionare acquirenti specifici e aggiornare la bozza di offerta utilizzando il tipo di `UpdateTargeting` modifica. Per ulteriori informazioni, consulta [https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/cppos.html#update-targeting-cppo](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/cppos.html#update-targeting-cppo).

```
{
  "EntityType": "Offer@1.0",
  "EntityIdentifier": "offer-a5EXAMPLEwzpu@1",
  "EntityArn": "arn:aws:aws-marketplace:us-east-1:444555666777:AWSMarketplace/Offer/offer-a5oEXAMPLEzpu",
  "LastModifiedDate": "2021-03-10T21:57:16Z",
  "DetailsDocument": {
    "Id": "offer-3rb23tu92rn",
    "Name": "Test Offer",
    "Description": "Worldwide private offer for Test Product",
    "ProductId": "prod-0bc848d78b51",
    "ResaleAuthorizationId": "resaleauthz-123456789",
    "Terms": [
      {
        "Type": "LegalTerm",
        "Documents": [
          {
            "Type": "CustomEula",
            "Url": "https://s3.amazonaws.com/EULA/custom-eula-1234.txt"
          }
        ]
      },
      {
        "Type": "ConfigurableUpfrontPricingTerm",
        "CurrencyCode": "USD",
        "RateCards": [
          {
            "Selector": {
              "Type": "Duration",
              "Value": "P12M"
            },
            "RateCard": [
              {
                "DimensionKey": "m3.large",
                "Price": "300.00"
              },
              {
                "DimensionKey": "m4.xlarge",
                "Price": "400.00"
              }
            ],
            "Constraints": {
              "MultipleDimensionSelection": "Allowed",
              "QuantityConfiguration": "Allowed"
            }
          }
        ]
      },
      {
        "Type": "UsageBasedPricingTerm",
        "CurrencyCode": "USD",
        "RateCards": [
          {
            "RateCard": [
              {
                "DimensionKey": "m3.large",
                "Price": "0.10"
              },
              {
                "DimensionKey": "m4.xlarge",
                "Price": "0.20"
              }
            ]
          }
        ]
      },
      {
        "Type": "PaymentScheduleTerm",
        "CurrencyCode": "USD",
        "Schedule": [
          {
            "ChargeDate": "2020-12-01T00:00:00.000Z",
            "ChargeAmount": "1000.00"
          },
          {
            "ChargeDate": "2021-06-15T00:00:00.000Z",
            "ChargeAmount": "1250.00"
          }
        ]
      }
    ],
    "Rules": [
      {
        "Type": "TargetingRule",
        "PositiveTargeting": {
          "BuyerAccounts": [
            "111222333444"
          ]
        }
      }
    ]
  }
}
```

**Convalide sincrone**

Le convalide dello schema seguenti sono specifiche per `CreateOfferUsingResaleAuthorization` le azioni in. AWS Marketplace Catalog API Queste convalide vengono eseguite quando si chiama. `StartChangeSet` Se la richiesta non soddisfa i seguenti requisiti, avrà esito negativo con una risposta HTTP.


| Campo di input | Regola di convalida | Codice HTTP | 
| --- | --- | --- | 
| Nome | Richiesto<br />La lunghezza deve essere compresa tra 1 e 150 caratteri | 422 | 
| Description | Richiesto<br />La lunghezza deve essere compresa tra 1 e 255 caratteri | 422 | 
| ResaleAuthorizationId | Richiesto<br />La lunghezza deve essere compresa tra 1 e 50 caratteri | 422 | 
| ResaleAuthorizationId | ResaleAuthorization deve essere indirizzato al partner di canale. | 422 | 
| ResaleAuthorizationId | ResaleAuthorization deve essere attivo | 422 | 
| Partner di canale | Il Channel Partner deve essere un venditore pagato in Marketplace AWS | 422 | 

**Errori asincroni**

I seguenti errori sono specifici `CreateOfferUsingResaleAuthorization` delle azioni in. AWS Marketplace Catalog API Questi errori vengono restituiti quando si chiama `DescribeChangeSet` dopo l'elaborazione di un set di modifiche. Per ulteriori informazioni sull'utilizzo `DescribeChangeSet` per ottenere lo stato di una richiesta di modifica, vedere[Utilizzo dei set di modifiche](catalog-apis.md#working-with-change-sets).


| Codice di errore  | Messaggio di errore | 
| --- | --- | 
| INCOMPATIBLE\_RESALE\_AUTHORIZATION | Usa uno in stato attivo. ResaleAuthorization  | 
| PRODOTTO\_INCOMPATIBILE | OfferSetId non è supportato nelle offerte relative al prodotto. | 

## Crea un'offerta sostitutiva privata per i partner di canale
<a name="create-replacement-offer-using-resale-auth"></a>

Puoi utilizzare l'API Catalog per creare un'offerta sostitutiva privata per i partner di canale in Marketplace AWS.

Utilizza l'indirizzo `ResaleAuthorization` targetizzato a te e un accordo di cui sei il proponente per creare un'offerta sostitutiva privata per i partner di `Draft` canale disponibile nell'API Catalog chiamando `StartChangeSet` con il tipo di `CreateReplacementOfferUsingResaleAuthorization` modifica, come illustrato nell'esempio seguente. Le offerte sostitutive possono essere utilizzate per sostituire un contratto di un'offerta precedente prima della scadenza.

`CreateReplacementOfferUsingResaleAuthorization`creerà una bozza di offerta con l'accettatore dell'accordo come target. Questo targeting non può essere modificato in seguito. La bozza di offerta conterrà anche l'ID dell'offerta di origine dell'accordo.

Per creare un'offerta sostitutiva privata per i partner di canale, richiamate l'operazione `StartChangeSet` API con il tipo di `CreateReplacementOfferUsingResaleAuthorization` modifica, come illustrato nell'esempio seguente.

**Sintassi della richiesta**

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

{
  "Catalog": "AWSMarketplace",
  "ChangeSet": [
    {
      "ChangeType": "CreateReplacementOfferUsingResaleAuthorization",
      "Entity": {
        "Type": "Offer@1.0"
      },
      "DetailsDocument": {
        "ResaleAuthorizationId": "2bd2c761-3b7f-3771-a9a7-e8ad36517698",
        "Name": "CAPI-saas-abo-contract-fps",
        "AgreementId": "agmt-f2ooEXAMLEamtm7mjj0j59gu"
      }
    }
  ]
}
```

Fornisci informazioni sui campi per aggiungere il tipo di `CreateReplacementOfferUsingResaleAuthorization` modifica:
+ **Entità** (oggetto) (obbligatorio): il tuo CPPO. 
  + **Tipo** (stringa) (obbligatorio): `Type` è sempre`Offer@1.0`. 
+ **DetailsDocument**(object) (richiesto) — Il valore JSON delle specifiche della richiesta.
  + **ResaleAuthorizationId**(stringa) (obbligatorio): `ResaleAuthorizationId` è l'identificatore univoco che include il prodotto, i termini e le regole offerti. I partner di canale possono aggiungere termini e regole aggiuntivi utilizzando i tipi di modifica Update.

    `ResaleAuthorization`deve essere disponibile e indirizzato a te come partner.
  + **Nome** (stringa) (opzionale): `Name` associato all'offerta per una migliore leggibilità per te e i tuoi clienti. Verrà visualizzato anche come parte delle informazioni sull'Accordo.
  + **AgreementId**(stringa) (obbligatorio): `AgreementId` è l'identificatore univoco dell'accordo creato quando l'acquirente target ha accettato l'offerta precedente che stai cercando di sostituire

**Sintassi della risposta**

Viene creato un set di modifiche per la richiesta. La risposta a questa richiesta fornisce l'`ChangeSetId`e `ChangeSetArn` per il set di modifiche ed è simile alla seguente.

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

La richiesta di modifica viene aggiunta a una coda ed elaborata. 

Puoi controllare lo stato della richiesta tramite o direttamente tramite Portale di gestione Marketplace AWS l'API Catalog utilizzando l'operazione `[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)` API.

**Convalide sincrone**

Le convalide dello schema seguenti sono specifiche per `CreateReplacementOfferUsingResaleAuthorization` le azioni in. AWS Marketplace Catalog API Queste convalide vengono eseguite quando si chiama. `StartChangeSet` Se la richiesta non soddisfa i seguenti requisiti, avrà esito negativo con una risposta HTTP.


| Campo di input | Regola di convalida | 
| --- | --- | 
| Nome | La lunghezza deve essere compresa tra 1 e 150 caratteri | 
| AgreementId | Il contratto fornito deve essere attivo Il contratto fornito deve esistere<br />Il contratto fornito deve essere di proprietà di Channel Partner | 
| ResaleAuthorizationId | Richiesto<br />La lunghezza deve essere compresa tra 1 e 50 caratteri | 
| ResaleAuthorizationId | ResaleAuthorization deve essere indirizzato al partner di canale. | 
| ResaleAuthorizationId | ResaleAuthorization deve essere attivo | 
| Partner di canale | Il Channel Partner deve essere un venditore pagato in Marketplace AWS | 

**Errori asincroni**

I seguenti errori sono specifici `CreateReplacementOfferUsingResaleAuthorization` delle azioni in. AWS Marketplace Catalog API Questi errori vengono restituiti quando si chiama `DescribeChangeSet` dopo l'elaborazione di un set di modifiche. Per ulteriori informazioni sull'utilizzo `DescribeChangeSet` per ottenere lo stato di una richiesta di modifica, vedere[Utilizzo dei set di modifiche](catalog-apis.md#working-with-change-sets).


| Codice di errore  | Messaggio di errore | 
| --- | --- | 
| INCOMPATIBLE\_RESALE\_AUTHORIZATION | Usa uno in stato attivo. ResaleAuthorization  | 
| INCOMPATIBLE\_RESALE\_AUTHORIZATION |  ResaleAuthorization Deve riguardare lo stesso prodotto associato all'accordo. | 
| INCOMPATIBLE\_RESALE\_AUTHORIZATION | Utilizza un ResaleAuthorization indirizzo mirato all'accettante dell'accordo. | 

## Aggiorna il markup
<a name="update-markup"></a>

Puoi utilizzare l'API Catalog per aggiornare i termini di prezzo in base a un valore percentuale della tua offerta in Marketplace AWS.

Verrà applicata la maggiorazione percentuale specificata a tutti i termini di prezzo e di pagamento (per i piani di pagamento futuri) definiti dal produttore nel ResaleAuthorization. Qualsiasi markup esistente verrà sovrascritto. Puoi visualizzare i prezzi e i termini di pagamento aggiornati utilizzando. `DescribeEntity`

Per aggiornare il markup, richiama l'operazione `StartChangeSet` API con il tipo di `UpdateMarkup` modifica, come illustrato nell'esempio seguente. 

**Sintassi della richiesta**

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

{
  "Catalog": "AWSMarketplace",
  "ChangeSet": [
    {
      "ChangeType": "UpdateMarkup",
      "Entity": {
        "Type": "Offer@1.0",
        "Identifier": "offer-123456789"
      },
      "DetailsDocument": {
        "Percentage": "5.0"
      }
    }
  ]
}
```

Fornisci informazioni sui campi in cui aggiungere il tipo di `UpdateMarkup` modifica:
+ **Entità** (oggetto) (obbligatorio): il tuo CPPO. 
  + **Tipo** (stringa) (obbligatorio): `Type` è sempre`Offer@1.0`. 
  + **Identificatore** (stringa) (obbligatorio): l'ID dell'offerta. Per ulteriori informazioni, consulta [Identificatore](catalog-apis.md#identifier).
+ **DetailsDocument**(object) (richiesto) — Il valore JSON delle specifiche della richiesta.
  + **Percentuale** (stringa) (obbligatorio): il valore percentuale verrà aggiunto ai prezzi o ai termini di pagamento del produttore.

**Sintassi della risposta**

Viene creato un set di modifiche per la richiesta. La risposta a questa richiesta fornisce l'`ChangeSetId`e `ChangeSetArn` per il set di modifiche ed è simile alla seguente.

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

La richiesta di modifica viene aggiunta a una coda ed elaborata. Ciò include la convalida delle informazioni con il team Operativo del Marketplace AWS venditore per garantire che soddisfino le Marketplace AWS linee guida. Il processo di convalida può richiedere da pochi minuti a qualche ora. 

Puoi controllare lo stato della richiesta tramite o direttamente tramite Portale di gestione Marketplace AWS l'API Catalog utilizzando l'operazione `[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)` API.

**Convalide sincrone**

Le convalide dello schema seguenti sono specifiche per `UpdateMarkup` le azioni in. AWS Marketplace Catalog API Queste convalide vengono eseguite quando si chiama. `StartChangeSet` Se la richiesta non soddisfa i seguenti requisiti, avrà esito negativo con una risposta HTTP.


| Campo di input | Regola di convalida | 
| --- | --- | 
| Percentuale | Richiesto<br />Il tipo di dati è «String» <br />Deve essere non negativo <br />Consenti fino a 9 decimali | 

**Errori asincroni**

I seguenti errori sono specifici `UpdateMarkup` delle azioni in. AWS Marketplace Catalog API Questi errori vengono restituiti quando si chiama `DescribeChangeSet` dopo l'elaborazione di un set di modifiche. Per ulteriori informazioni sull'utilizzo `DescribeChangeSet` per ottenere lo stato di una richiesta di modifica, vedere[Utilizzo dei set di modifiche](catalog-apis.md#working-with-change-sets).


| Codice di errore  | Messaggio di errore | 
| --- | --- | 
| INCOMPATIBLE\_MARKUP | La modifica richiesta non può essere eseguita dopo il rilascio dell'offerta. | 
| INCOMPATIBLE\_RESALE\_AUTHORIZATION | MarkupPercentagenon possono essere aggiornati quando PaymentScheduleTerm o FixedUpfrontPricingTerm sono presenti nell'offerta e non sono presenti in. ResaleAuthorization | 
| TERMINI INCOMPATIBILI | Da utilizzare UpdatePaymentScheduleTerms con un importo di pagamento specifico o UpdateMarkup con un'unica percentuale di markup per le date programmate. | 
| INVALID\_MARKUP\_PERCENTAGE | UpdateMarkup può essere invocato solo per le offerte create utilizzando. ResaleAuthorization | 

## Aggiorna la configurazione del targeting
<a name="update-targeting-cppo"></a>

Puoi utilizzare l'API Catalog per sostituire completamente la configurazione di targeting esistente in. Marketplace AWS

Tutte le opzioni di targeting esistenti che non sono incluse nell'ultima richiesta verranno rimosse dall'offerta. I produttori possono menzionare acquirenti mirati specifici in`ResaleAuthorization`. I partner di canale possono offrire offerte private a un sottoinsieme di acquirenti utilizzando `PositiveTargeting` il tipo di `UpdateTargeting` modifica.

Per aggiornare le configurazioni di targeting della tua offerta, richiama l'`StartChangeSet`operatore API con il tipo di `UpdateTargeting` modifica, come mostrato nell'esempio seguente. 

**Sintassi della richiesta**

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

{
  "Catalog": "AWSMarketplace",
  "ChangeSet": [
    {
      "ChangeType": "UpdateTargeting",
      "Entity": {
        "Type": "Offer@1.0",
        "Identifier": "offer-123456789"
      },
      "DetailsDocument": {
        "PositiveTargeting": {
          "CountryCodes": [
            "US",
            "CA"
          ],
          "BuyerAccounts": [
            "111222333444"
          ]
        },
        "NegativeTargeting": {
          "CountryCodes": [
            "XX"
          ]
        }
      }
    }
  ]
}
```

Fornisci informazioni per i campi in cui aggiungere il tipo di `UpdateTargeting` modifica:
+ **Entità** (oggetto) (obbligatorio): il tuo CPPO. 
  + **Tipo** (stringa) (obbligatorio): `Type` è sempre`Offer@1.0`. 
  + **Identificatore** (stringa) (obbligatorio): l'ID dell'offerta. Per ulteriori informazioni, consulta [Identificatore](catalog-apis.md#identifier).
+ **DetailsDocument**(object) (richiesto) — Il valore JSON delle specifiche della richiesta.
  + **PositiveTargeting**(oggetto) (opzionale): il targeting positivo definisce i criteri che il profilo di qualsiasi acquirente deve soddisfare per poter accedere all'offerta. Questo campo è facoltativo, ma è necessario fornire almeno un'opzione di targeting quando questo campo è presente.
    + **CountryCodes**(matrice di stringhe) (opzionale): elenca come opzione per consentire il targeting in base al paese. Se non si intende indirizzare l'offerta a un paese, questo campo deve essere omesso. Se è presente, l'elenco deve contenere almeno un prefisso internazionale. Ogni elemento di questo elenco deve essere un codice paese di 2 lettere valido, utilizzando questo formato: ISO 3166-1 alpha-2.
    + **BuyerAccounts**(matrice di stringhe) (opzionale): elenca come opzione per consentire il targeting basato su Account AWS (noto anche come offerta privata). Se l'intenzione è quella di non indirizzare l'offerta a un destinatario Account AWS, questo campo deve essere omesso.
  + **NegativeTargeting**(oggetto) (opzionale): il targeting negativo definisce i criteri che il profilo di qualsiasi cliente deve soddisfare per poter accedere all'offerta con restrizioni. Sebbene questo campo sia facoltativo, dovrebbe essere fornita almeno un'opzione di targeting quando questo campo è presente.
    + **CountryCodes**(matrice di stringhe) (obbligatorio): elenca come opzione per consentire il targeting in base al paese. Se non si intende indirizzare l'offerta a un paese specifico, questo campo deve essere omesso. Se è presente, l'elenco deve contenere almeno un prefisso internazionale. Ogni elemento di questo elenco deve essere un codice paese di 2 lettere valido utilizzando questo formato: ISO 3166-1 alpha-2.

**Sintassi della risposta**

Viene creato un set di modifiche per la richiesta. La risposta a questa richiesta fornisce l'`ChangeSetId`e `ChangeSetArn` per il set di modifiche ed è simile alla seguente.

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

La richiesta di modifica viene aggiunta a una coda ed elaborata. Ciò include la convalida delle informazioni per garantire che soddisfino le linee guida. Marketplace AWS Il processo di convalida può richiedere da pochi minuti a qualche ora. 

Puoi controllare lo stato della richiesta tramite o direttamente tramite Portale di gestione Marketplace AWS l'API Catalog utilizzando l'operazione `[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)` API.

**Convalide sincrone**

Le convalide dello schema seguenti sono specifiche per `UpdateTargeting` le azioni in. AWS Marketplace Catalog API Queste convalide vengono eseguite quando si chiama. `StartChangeSet` Se la richiesta non soddisfa i seguenti requisiti, avrà esito negativo con una risposta HTTP.


| Campo di input | Regola di convalida | Codice HTTP | 
| --- | --- | --- | 
|  Informazioni  | Richiesto | 422 | 
|  PositiveTargeting | Facoltativo | 422 | 
| NegativeTargeting | Facoltativo | 422 | 
| PositiveTargeting.CountryCodes | Facoltativo<br />I codici dei paesi devono essere validi (ISO 3166-1 alpha-2) | 422 | 
| PositiveTargeting.BuyerAccounts | Facoltativo<br />Account AWS Gli ID devono essere in formato valido (numero a 12 cifre)<br />Non deve contenere più di 25 account | 422 | 
| NegativeTargeting.CountryCodes | Facoltativo<br />I codici dei paesi devono essere validi (ISO 3166-1 alpha-2) | 422 | 
| NegativeTargeting.BuyerAccounts | Non devono essere forniti (il targeting negativo non è supportato) BuyerAccounts  | 422 | 

**Errori asincroni**

I seguenti errori sono specifici `UpdateTargeting` delle azioni in. AWS Marketplace Catalog API Questi errori vengono restituiti quando si chiama `DescribeChangeSet` dopo l'elaborazione di un set di modifiche. Per ulteriori informazioni sull'utilizzo `DescribeChangeSet` per ottenere lo stato di una richiesta di modifica, vedere[Utilizzo dei set di modifiche](catalog-apis.md#working-with-change-sets).


| Codice di errore | Messaggio di errore | 
| --- | --- | 
| INVALID\_BUYER\_ACCOUNTS | Fornisci account acquirente validi. Account non validi: [x]. | 
| CODICI\_PAESE\_NON VALIDI | Fornisci i codici dei paesi supportati. | 
| INVALID\_TARGETING | Utilizza il targeting negativo o positivo sullo stesso attributo. | 
| PRODOTTO\_INCOMPATIBILE | Country-based il targeting non è supportato per il prodotto. | 
| INCOMPATIBLE\_RESALE\_AUTHORIZATION | Fornire che siano compatibili con. BuyerAccounts ResaleAuthorization | 
| INCOMPATIBLE\_TARGETING | La modifica richiesta non può essere eseguita dopo il rilascio dell'offerta. | 
| INCOMPATIBLE\_TARGETING | La modifica richiesta non può essere eseguita dopo la scadenza dell'offerta. | 
| INCOMPATIBLE\_TARGETING | Il targeting non può essere aggiornato su un'offerta sostitutiva. Se l'acquirente non è associato all'offerta fornita AgreementId, crea una nuova offerta privata fornendone una AgreementId associata all'acquirente. | 
| TOO\_MANY\_BUYER\_ACCOUNTS | Fornire entro i limiti consentiti. BuyerAccounts  | 

## Aggiorna le risorse legali
<a name="update-legal-terms-cppo"></a>

Puoi utilizzare l'API Catalog per unire i termini legali di Resale Authorization e sostituire completamente i termini legali esistenti. Marketplace AWS

Questa modifica non influisce sugli accordi esistenti. I termini legali che non sono inclusi nell'ultima richiesta verranno rimossi dall'offerta. Puoi visualizzare i termini legali uniti `DescribeEntity` chiamando.

Per aggiornare i termini legali della tua offerta, chiama l'`StartChangeSet`operatore API con il tipo di `UpdateLegalTerms` modifica, come mostrato nell'esempio seguente. 

**Sintassi della richiesta**

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

{
  "Catalog": "AWSMarketplace",
  "ChangeSet": [
    {
      "ChangeType": "UpdateLegalTerms",
      "Entity": {
        "Type": "Offer@1.0",
        "Identifier": "offer-123456789"
      },
      "DetailsDocument": {
        "Terms": [
          {
            "Type": "LegalTerm",
            "Documents": [
              {
                "Type": "CustomEula",
                "Url": "https://s3.amazonaws.com/EULA/custom-eula-1234.txt"
              }
            ]
          }
        ]
      }
    }
  ]
}
```

Fornisci informazioni per i campi in cui aggiungere il tipo di `UpdateLegalTerms` modifica:
+ **Entità** (oggetto) (obbligatorio): il tuo CPPO. 
  + **Tipo** (stringa) (obbligatorio): `Type` è sempre`Offer@1.0`. 
  + **Identificatore** (stringa) (obbligatorio): l'ID dell'offerta. Per ulteriori informazioni, consulta [Identificatore](catalog-apis.md#identifier).
+ **DetailsDocument**(object) (richiesto) — Il valore JSON delle specifiche della richiesta.
  + **Termini** (serie di strutture) (obbligatorio): elenco dei termini legali che si desidera aggiornare. I termini legali supportati sono:
  + **LegalTerm**(oggetto) (obbligatorio): definisce l'elenco degli accordi testuali da proporre agli accettatori. Un esempio di tale accordo è il contratto di licenza con l'utente finale (EULA).
    + **Tipo** (stringa) (obbligatorio): categoria del termine da aggiornare.
    + **Documenti** (serie di strutture) (obbligatorio): elenco di riferimenti alle risorse legali da proporre agli acquirenti. Un esempio di tale risorsa è il contratto di licenza con l'utente finale (EULA). Ogni riferimento è composto da un tipo e un URL:
      + **Tipo** (stringa) (obbligatorio): tipo di documento. I tipi di documento disponibili sono:
        + **CustomEula**— Un EULA personalizzato fornito da te come venditore. Per questo tipo di documento è necessario un URL per un EULA memorizzato in un bucket S3 accessibile.
        + **StandardEula**— Contratto standard per Marketplace AWS (SCMP). Per ulteriori informazioni su SCMP, consulta la Marketplace AWS Seller Guide. Non fornisci un URL per questo tipo perché è gestito da Marketplace AWS.
      + **Url** (stringa) (obbligatorio in base a determinate condizioni): un URL del documento legale che gli acquirenti possono leggere. Obbligatorio quando `Type` è uno dei seguenti [`CustomEula`].
      + **Versione** (stringa) (obbligatoria a determinate condizioni): una versione dei contratti standard fornita da Marketplace AWS. È necessario quando lo `Type` è`StandardEula`. Le versioni disponibili sono:
        + **14/07/2022 — Questa** versione del contratto standard per Marketplace AWS è disponibile da questo bucket Amazon S3: [https://s3.amazonaws.com/aws-mp-standard-contracts/Standard-Contact-for-AWS-Marketplace-2022-07-14.pdf](https://s3.amazonaws.com/aws-mp-standard-contracts/Standard-Contact-for-AWS-Marketplace-2022-07-14.pdf)

Viene creato un set di modifiche per la tua richiesta. La risposta a questa richiesta fornisce l'ID per il set di modifiche.

**Sintassi della risposta**

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

La richiesta di modifica viene aggiunta a una coda ed elaborata. Ciò include la convalida delle informazioni con il team Operativo del Marketplace AWS venditore per garantire che soddisfino le Marketplace AWS linee guida. Il processo di convalida può richiedere da pochi minuti a qualche ora. Puoi controllare lo stato della richiesta tramite o nell'API Catalog con l'`DescribeChangeSet`azione. Portale di gestione Marketplace AWS

**Convalide sincrone**

Le convalide dello schema seguenti sono specifiche per `UpdateLegalTerms` le azioni in. AWS Marketplace Catalog API Queste convalide vengono eseguite quando si chiama. `StartChangeSet` Se la richiesta non soddisfa i seguenti requisiti, avrà esito negativo con una risposta HTTP.


| Campo di input | Regola di convalida | Codice HTTP | 
| --- | --- | --- | 
| Termini | Richiesto<br /> LegalTerm È consentito solo nell'elenco<br />La dimensione dell'elenco deve essere 1 | 422 | 
| Termini []. LegalTerm.Documents | Richiesto | 422 | 
| Termini []. LegalTerm.Documents[] .Tipo | Richiesto<br />Valori consentiti:[See the AWS documentation website for more details](http://docs.aws.amazon.com/it_it/marketplace/latest/developerguide/work-with-cppos.html) | 422 | 
| Termini []. LegalTerm.Documents[] .Url | Obbligatorio e deve essere un URL valido quando «Tipo» è uno dei[See the AWS documentation website for more details](http://docs.aws.amazon.com/it_it/marketplace/latest/developerguide/work-with-cppos.html) | 422 | 

**Errori asincroni**

I seguenti errori sono specifici `UpdateLegalTerms` delle azioni in. AWS Marketplace Catalog API Questi errori vengono restituiti quando si chiama `DescribeChangeSet` dopo l'elaborazione di un set di modifiche. Per ulteriori informazioni sull'utilizzo `DescribeChangeSet` per ottenere lo stato di una richiesta di modifica, vedere[Utilizzo dei set di modifiche](catalog-apis.md#working-with-change-sets).


| Codice di errore  | Messaggio di errore | 
| --- | --- | 
| TERMINI INCOMPATIBILI | La modifica richiesta non può essere effettuata dopo il rilascio dell'offerta. | 
| TERMINI\_INCOMPATIBILI | La modifica richiesta non può essere effettuata dopo la scadenza dell'offerta. | 
| DOCUMENTI\_LEGALI\_NON VALIDI | Fornisci gli URL per i documenti legali archiviati in bucket S3 accessibili. | 
| DOCUMENTI\_LEGALI\_NON VALIDI | Per le nuove offerte è supportata solo la versione più recente di. StandardEula  | 
| DOCUMENTI\_LEGALI\_NON VALIDI | Fornisci documenti legali nei formati di file supportati. | 
| DOCUMENTI\_LEGALI\_NON VALIDI | Fornisci documenti legali utilizzando i tipi di documenti supportati. | 
| LIMIT\_EXCEEDED\_LEGAL\_DOCUMENT\_SIZE | Fornisci documenti legali entro i limiti di dimensione consentiti. | 

## Aggiorna la reperibilità del CPPO
<a name="update-availability-cppo"></a>

Puoi utilizzare l'API Catalog per gestire la reperibilità della tua offerta in. Marketplace AWS Questo tipo di modifica non influisce sugli accordi esistenti. 

Puoi scegliere di impostare una data specifica nel futuro per limitare la visibilità della tua offerta o nel passato per far scadere l'offerta.

Per gestire la reperibilità della tua offerta, richiama l'operazione `StartChangeSet` API con il tipo di `UpdateAvailability` modifica, come mostrato nell'esempio seguente. 

**Sintassi della richiesta**

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

{
  "Catalog": "AWSMarketplace",
  "ChangeSet": [
    {
      "ChangeType": "UpdateAvailability",
      "Entity": {
        "Type": "Offer@1.0",
        "Identifier": "offer-123456789"
      },
      "DetailsDocument": {
        "AvailabilityEndDate": "2024-05-31"
      }
    }
  ]
}
```

Fornisci informazioni per i campi in cui aggiungere il tipo di `UpdateAvailability` modifica:
+ **Entità** (oggetto) (obbligatorio): il tuo CPPO. 
  + **Tipo** (stringa) (obbligatorio): `Type` è sempre`Offer@1.0`. 
  + **Identificatore** (stringa) (obbligatorio): l'ID dell'offerta. Per ulteriori informazioni, consulta [Identificatore](catalog-apis.md#identifier).
+ **DetailsDocument**(object) (richiesto) — Il valore JSON delle specifiche della richiesta.
  + **AvailabilityEndDate**(stringa) — Data fino alla data in cui l'offerta è individuabile e acquistabile in. Marketplace AWS Puoi scegliere di impostare una data specifica nel futuro per limitare la disponibilità o nel passato per far scadere l'offerta. Le date sono rappresentate in `YYYY-MM-DD` formato. L'offerta scade alle 23:59:59.999 UTC della data indicata.

**Sintassi della risposta**

Viene creato un set di modifiche per la richiesta. La risposta a questa richiesta fornisce l'`ChangeSetId`e `ChangeSetArn` per il set di modifiche ed è simile alla seguente.

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

La richiesta di modifica viene aggiunta a una coda ed elaborata. Ciò include la convalida delle informazioni per garantire che soddisfino le linee guida. Marketplace AWS Il processo di convalida può richiedere da pochi minuti a qualche ora. 

Puoi controllare lo stato della richiesta tramite o direttamente tramite Portale di gestione Marketplace AWS l'API Catalog utilizzando l'operazione `[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)` API.

**Convalide sincrone**

Le convalide dello schema seguenti sono specifiche per `UpdateAvailability` le azioni in. AWS Marketplace Catalog API Queste convalide vengono eseguite quando si chiama. `StartChangeSet` Se la richiesta non soddisfa i seguenti requisiti, avrà esito negativo con una risposta HTTP.


| Campo di input | Regola di convalida | Codice HTTP | 
| --- | --- | --- | 
| AvailabilityEndDate | Richiesto<br />Formato: "» YYYY-MM-DD | 422 | 

**Errori asincroni**

I seguenti errori sono specifici `UpdateAvailability` delle azioni in. AWS Marketplace Catalog API Questi errori vengono restituiti quando si chiama `DescribeChangeSet` dopo l'elaborazione di un set di modifiche. Per ulteriori informazioni sull'utilizzo `DescribeChangeSet` per ottenere lo stato di una richiesta di modifica, vedere[Utilizzo dei set di modifiche](catalog-apis.md#working-with-change-sets).


| Codice di errore | Messaggio di errore | 
| --- | --- | 
| INVALID\_AVAILABILITY\_END\_DATE | AvailabilityEndDate non è supportato per le offerte pubbliche. | 
| INVALID\_AVAILABILITY\_END\_DATE | Offri un futuro AvailabilityEndDate. | 
| INVALID\_AVAILABILITY\_END\_DATE | Fornisci un elemento precedente. AvailabilityEndDate AgreementEndDate | 
| DATA\_DI\_DISPONIBILITÀ\_FINE MANCANTE | Fornisci un codice antecedente alla data di AvailabilityEndDate fine del contratto. | 

## Definire la data di scadenza degli accordi
<a name="update-validity-terms-cppo"></a>

Puoi utilizzare l'API Catalog per definire la data di scadenza degli accordi creati utilizzando questa offerta in Marketplace AWS.

Questa modifica non influisce sugli accordi esistenti. Il produttore potrebbe indicare la data massima di inizio del contratto in un'autorizzazione alla rivendita. Tuttavia, i partner di canale non possono fornire una data di inizio del contratto successiva a tale data.

Per definire la data di scadenza degli accordi, richiama l'operazione `StartChangeSet` API con il tipo di `UpdateValidityTerms` modifica, come illustrato nell'esempio seguente. 

**Sintassi della richiesta**

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

{
  "Catalog": "AWSMarketplace",
  "ChangeSet": [
    {
      "ChangeType": "UpdateValidityTerms",
      "Entity": {
        "Type": "Offer@1.0",
        "Identifier": "offer-123456789"
      },
      "DetailsDocument": {
        "Terms": [
          {
            "Type": "ValidityTerm",
            "AgreementDuration": "P12M",
            "AgreementStartDate": "2021-08-01",
            "AgreementEndDate": "2022-08-01"
          }
        ]
      }
    }
  ]
}
```

Fornisci informazioni sui campi per aggiungere il tipo di `UpdateValidityTerms` modifica:
+ **Entità** (oggetto) (obbligatorio): il tuo CPPO. 
  + **Tipo** (stringa) (obbligatorio): `Type` è sempre`Offer@1.0`. 
  + **Identificatore** (stringa) (obbligatorio): l'ID dell'offerta. Per ulteriori informazioni, consulta [Identificatore](catalog-apis.md#identifier).
+ **DetailsDocument**(object) (richiesto) — Il valore JSON delle specifiche della richiesta.
  + **Termini** (matrice di strutture)**:** elenco dei termini di validità che si desidera aggiornare. I termini di validità supportati sono:
    + **ValidityTerm**(oggetto)**:** definisce le condizioni che manterranno valido un accordo creato a partire da questa offerta.
      + **Tipo** (stringa) **—** Categoria del termine da aggiornare.
      + **AgreementDuration**(stringa) **—** Definisce per quanto tempo l'accordo rimane attivo. Se `AgreementStartDate` non viene fornita, la durata del contratto è relativa all'ora di firma dell'accordo. La durata è rappresentata nel formato ISO\_8601.
      + **AgreementStartDate**(stringa) **—** Definisce la data di inizio dell'accordo. `AgreementStartDate`è rappresentato in YYYY-MM-DD formato. L'accordo ha inizio alle 00:00:00.000 UTC della data fornita. Se `AgreementStartDate` non viene fornita, la data di inizio del contratto viene determinata in base all'ora di firma dell'accordo.
      + **AgreementEndDate**(stringa)**:** definisce la data di scadenza dell'accordo. `AgreementEndDate`È rappresentato in YYYY-MM-DD formato. L'accordo termina alle 23:59:59.999 UTC della data indicata. Se `AgreementEndDate` non viene fornita, la data di fine del contratto è determinata dalla validità dei singoli termini.

**Sintassi della risposta**

Viene creato un set di modifiche per la richiesta. La risposta a questa richiesta fornisce l'`ChangeSetId`e `ChangeSetArn` per il set di modifiche ed è simile alla seguente.

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

La richiesta di modifica viene aggiunta a una coda ed elaborata. Ciò include la convalida delle informazioni per garantire che soddisfino le linee guida. Marketplace AWS Il processo di convalida può richiedere da pochi minuti a qualche ora. 

Puoi controllare lo stato della richiesta tramite o direttamente tramite Portale di gestione Marketplace AWS l'API Catalog utilizzando l'operazione `[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)` API.

**Convalide sincrone**

Le convalide dello schema seguenti sono specifiche per `UpdateValidityTerms` le azioni in. AWS Marketplace Catalog API Queste convalide vengono eseguite quando si chiama. `StartChangeSet` Se la richiesta non soddisfa i seguenti requisiti, avrà esito negativo con una risposta HTTP.


| Campo di input | Regola di convalida | Codice HTTP | 
| --- | --- | --- | 
| Termini | Richiesto<br />Nell'elenco è consentito solo ValidityTerm "" <br />Deve essere vuoto o contenere solo 1 termine | 422 | 
|  Termini []. ValidityTerm  | Casi d'uso supportati:<br />1. ValidityTerm solo con AgreementDuration<br />2. ValidityTerm solo con AgreementStartDate<br />3. ValidityTerm solo con AgreementEndDate<br />4. ValidityTerm con entrambi AgreementStartDate e AgreementEndDate | 422 | 
| Termini []. ValidityTerm.AgreementDuration | Facoltativo<br />Rappresentato nel formato ISO\_8601. | 422 | 
| Termini []. ValidityTerm.AgreementStartDate | Facoltativo<br />Formato: "YYYY-MM-DD» | 422 | 
| Termini []. ValidityTerm.AgreementEndDate | Facoltativo<br />Formato: "YYYY-MM-DD» | 422 | 

**Errori asincroni**

I seguenti errori sono specifici `UpdateValidityTerms` delle azioni in. AWS Marketplace Catalog API Questi errori vengono restituiti quando si chiama `DescribeChangeSet` dopo l'elaborazione di un set di modifiche. Per ulteriori informazioni sull'utilizzo `DescribeChangeSet` per ottenere lo stato di una richiesta di modifica, vedere[Utilizzo dei set di modifiche](catalog-apis.md#working-with-change-sets).


| Codice di errore | Messaggio di errore | 
| --- | --- | 
| ACCORDO\_INCOMPATIBILE | AgreementStartDate non può essere in futuro se l'attuale accordo da sostituire non ha una data futura. | 
| DATA\_FINE\_CONTRATTO\_INCOMPATIBILE | AgreementEndDate non può essere aggiornato dopo il rilascio dell'offerta. | 
| DATA\_DI\_INIZIO\_CONTRATTO\_INCOMPATIBILE | AgreementStartDate non può essere aggiornato dopo il rilascio dell'offerta. | 
| PRODOTTO\_INCOMPATIBILE | AgreementStartDate in future non è supportato. | 
| INCOMPATIBLE\_RESALE\_AUTHORIZATION | Assicurati che la durata compresa tra e sia compatibile con. AgreementStartDate AgreementEndDate ResaleAuthorization | 
| INCOMPATIBLE\_RESALE\_AUTHORIZATION | Ensure è compatibile con. AgreementStartDate ResaleAuthorization | 
| INCOMPATIBLE\_RESALE\_AUTHORIZATION | Ensure è compatibile con. AgreementEndDate ResaleAuthorization | 
| INCOMPATIBLE\_RESALE\_AUTHORIZATION | Assicurati che la durata compresa tra e sia compatibile con. AgreementStartDate AgreementEndDate ResaleAuthorization | 
| INCOMPATIBLE\_RESALE\_AUTHORIZATION | Assicurati che la durata delle partite sia specificata in. AgreementDuration ResaleAuthorization | 
| TERMINI INCOMPATIBILI  | ValidityTerm non è supportato per le offerte pubbliche. | 
| TERMINI INCOMPATIBILI  | La modifica richiesta non può essere effettuata dopo la scadenza dell'offerta. | 
| DURATA NON VALIDA DEL CONTRATTO | Purché AgreementDuration sia maggiore o uguale a [x] giorni. | 
| DATA\_DI\_FINE DELL'ACCORDO NON VALIDA | Offri un futuro AgreementEndDate. | 
| DATA\_DI\_FINE DELL'ACCORDO NON VALIDA | Fornisci AgreementEndDate che sia successivo o uguale a [x]. | 
| DATA\_INIZIO\_CONTRATTO\_NON VALIDA | Fornisci un nome che viene dopo. AgreementStartDate AvailabilityEndDate | 
| DATA\_INIZIO\_CONTRATTO\_NON VALIDA | Fornisci un nome che precede il. AgreementStartDate AgreementEndDate | 
| DATA\_INIZIO\_CONTRATTO\_NON VALIDA | Fornisci un documento entro [x] AgreementStartDate anni a partire da oggi. | 
| INVALID\_AGREEMENT\_TEMPO\_INTERVAL | ValidityTerm con entrambi e non è supportato. AgreementDuration AgreementEndDate  | 
| INVALID\_AGREEMENT\_TIME\_INTERVAL | ValidityTerm con entrambi AgreementStartDate e AgreementDuration non è supportato in un'offerta per il prodotto. | 
| INVALID\_AGREEMENT\_TEMPO\_INTERVAL | ValidityTerm with AgreementStartDate non è supportato in un'offerta per il prodotto. | 
| INVALID\_AGREEMENT\_TEMPO\_INTERVAL | ValidityTerm with only non è supportato. AgreementStartDate  | 
| INVALID\_AGREEMENT\_TIME\_INTERVAL | AgreementEndDate non è supportato a meno che non venga utilizzato in combinazione con offerte future AgreementStartDate o sostitutive. | 
| INVALID\_AGREEMENT\_TIME\_INTERVAL | Specificare AgreementStartDate e AgreementEndDate se la differenza è inferiore o uguale a [x] anni. | 
| DATA\_DI\_INIZIO\_CONTRATTO\_MANCANTE | Ensure AgreementStartDate è presente in quando viene utilizzato insieme a. ValidityTerm ConfigurableUpfrontPricingTerm | 

## Aggiorna i prezzi
<a name="update-pricing-terms-cppo"></a>

Puoi utilizzare l'API Catalog per sostituire completamente le condizioni tariffarie esistenti.

I termini di prezzo che non sono inclusi nell'ultima richiesta verranno rimossi dall'offerta. I partner di canale possono utilizzare questo tipo di modifica solo per passare`FixedUpFrontPricingTerm`.

Per aggiornare i termini di prezzo delle tue offerte, chiama l'operatore dell'`StartChangeSet`API con il tipo di `UpdatePricingTerms` modifica, come mostrato nell'esempio seguente. 

**Sintassi della richiesta**

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

{
  "Catalog": "AWSMarketplace",
  "ChangeSet": [
    {
      "ChangeType": "UpdatePricingTerms",
      "Entity": {
        "Type": "Offer@1.0",
        "Identifier": "offer-123456789"
      },
      "Details": {
        "PricingModel": "Contract",
        "Terms": [
          {
            "Type": "FixedUpfrontPricingTerm",
            "CurrencyCode": "USD",
            "Price": "200.00",
            "Duration": "P465D",
            "Grants": [
              {
                "DimensionKey": "Users",
                "MaxQuantity": 10
              }
            ]
          }
        ]
      }
    }
  ]
}
```

Fornisci informazioni sui campi per aggiungere il tipo di `UpdatePricingTerms` modifica:
+ **Entità** (oggetto) (obbligatorio): il tuo CPPO. 
  + **Tipo** (stringa) (obbligatorio): `Type` è sempre`Offer@1.0`. 
  + **Identificatore** (stringa) (obbligatorio): l'ID dell'offerta. Per ulteriori informazioni, consulta [Identificatore](catalog-apis.md#identifier).
+ **Dettagli** (stringa) (obbligatorio): dettagli della richiesta. Questo campo è un campo di stringa JSON. Deve essere formattato correttamente per un campo di stringa a riga singola, compresi i caratteri di escape (come le virgolette) che non possono essere contenuti in una stringa.
  + **PricingModel**(string) (richiesto) — Modello di prezzo per la tua offerta. I valori possibili per il modello di prezzo sono:
    + **Contratto**: modello di Contract-based prezzo in cui agli acquirenti viene fatturato in anticipo l'utilizzo del prodotto o viene offerto un piano di pagamento flessibile. Gli acquirenti possono anche pagare per un utilizzo aggiuntivo rispetto al contratto.
    + **Termini** (serie di strutture) (obbligatorio): elenco dei termini di prezzo che desideri aggiornare. Le condizioni di prezzo supportate sono:
      + **FixedUpfrontPricingTerm**(oggetto): definisce un modello di prezzo prepagato in cui ai clienti viene addebitato un importo anticipato fisso.
        + **Tipo** (stringa) (obbligatorio): tipo di termine da aggiornare.
        + **CurrencyCode**(stringa) (obbligatorio) — Definisce la valuta per i prezzi indicati in questo termine. Per le offerte pubbliche, sono supportati solo USD. Per le offerte private, sono supportati USD, AUD, EUR, GBP e JPY.
        + **Prezzo** (stringa) (obbligatorio): importo fisso da addebitare al cliente quando questo termine viene accettato.
        + **Sovvenzioni** (serie di strutture) (obbligatorio): diritti che verranno concessi all'accettante di Fixed Upfront come parte dell'esecuzione del contratto.
          + **DimensionKey**(stringa) (obbligatorio) — Chiave di dimensione univoca definita nel documento del prodotto. Le dimensioni rappresentano le categorie di capacità di un prodotto e vengono specificate quando il prodotto è elencato in Marketplace AWS.
          + **MaxQuantity**(numero intero) (opzionale): quantità massima di capacità che l'acquirente può avere per una determinata dimensione del prodotto. Se non `MaxQuantity` viene fornita, l'acquirente potrà utilizzare una quantità illimitata della dimensione specificata.
        + **Durata** (stringa) (opzionale): definisce la durata in cui il termine rimane attivo. Questo campo supporta il formato ISO 8601.

**Sintassi di risposta**

Viene creato un set di modifiche per la richiesta. La risposta a questa richiesta fornisce l'`ChangeSetId`e `ChangeSetArn` per il set di modifiche ed è simile alla seguente.

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

La richiesta di modifica viene aggiunta a una coda ed elaborata. Ciò include la convalida delle informazioni per garantire che soddisfino le linee guida. Marketplace AWS Il processo di convalida può richiedere da pochi minuti a qualche ora. 

Puoi controllare lo stato della richiesta tramite o direttamente tramite Portale di gestione Marketplace AWS l'API Catalog utilizzando l'operazione `[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)` API.

**Convalide sincrone**

Le convalide dello schema seguenti sono specifiche per `UpdatePricingTerms` le azioni in. AWS Marketplace Catalog API Queste convalide vengono eseguite quando si chiama. `StartChangeSet` Se la richiesta non soddisfa i seguenti requisiti, avrà esito negativo con una risposta HTTP.


| Campo di input | Regola di convalida | 
| --- | --- | 
| PricingModel | Richiesto<br />Modelli di prezzo consentiti: <br />Contratto | 
| Termini | Richiesto<br />Termini consentiti: <br />FixedUpfrontPricingTerm | 
| Termini []. FixedUpfrontPricingTerm.CurrencyCode | Richiesto<br />Valori consentiti: ["USD», «AUD», «EUR», «GBP», «JPN"]<br />Modelli di prezzo consentiti:<br />Contratto | 
| Termini []. FixedUpfrontPricingTerm.Price | Richiesto<br />Il tipo di dati è «String» Deve essere non negativo <br />Supporta fino a 6 decimali<br />Nessun carattere speciale supportato | 
| Termini []. FixedUpfrontPricingTerm.Duration | Richiesto<br />Formato previsto: durata ISO 8601 | 
| Termini []. FixedUpfrontPricingTerm.Grants[]. DimensionKey | Richiesto<br />La lunghezza deve essere compresa tra 1 e 60 | 
| Termini []. FixedUpfrontPricingTerm.Grants[]. MaxQuantity | Richiesto | 

**Errori asincroni**

I seguenti errori sono specifici `UpdatePricingTerms` delle azioni in. AWS Marketplace Catalog API Questi errori vengono restituiti quando si chiama `DescribeChangeSet` dopo l'elaborazione di un set di modifiche. Per ulteriori informazioni sull'utilizzo `DescribeChangeSet` per ottenere lo stato di una richiesta di modifica, vedere[Utilizzo dei set di modifiche](catalog-apis.md#working-with-change-sets).


| Codice di errore | Messaggio di errore | 
| --- | --- | 
| DUPLICATE\_DIMENSION\_KEYS | Fornisci a Grants un elenco univoco di chiavi di dimensione in [x]. | 
| CHIAVI\_DIMENSIONALI\_DUPLICATE | Fornisci RateCard un elenco univoco di chiavi di dimensione in [x]. | 
| SELETTORI DUPLICATI  | Fornisci un elenco univoco di selettori in. ConfigurableUpfrontPricingTerm | 
| DUPLICATE\_TERM\_TYPES | Fornisci un elenco univoco di tipi di termini. | 
| ACCORDO\_INCOMPATIBILE | I seguenti termini non possono essere rimossi dall'offerta sostitutiva: [x, y, z]. | 
| ACCORDO\_INCOMPATIBILE | I seguenti termini non possono essere aggiunti all'offerta sostitutiva: [x, y, z]. | 
| INCOMPATIBLE\_CURRENCY\_CODE | CurrencyCode non può essere modificato dopo il rilascio dell'offerta. | 
| IMPOSTAZIONI DI PAGAMENTO INCOMPATIBILI | Aggiorna le impostazioni di pagamento per renderle compatibili con. CurrencyCode | 
| PRODOTTO\_INCOMPATIBILE | Il modello di prezzo d'uso non è supportato per il prodotto. | 
| PRODOTTO\_INCOMPATIBILE | Il modello di prezzo contrattuale non è supportato per il prodotto. | 
| PRODOTTO\_INCOMPATIBILE | Il modello di prezzo Byol non è supportato per il prodotto. | 
| PRODOTTO\_INCOMPATIBILE | Il modello di prezzo gratuito non è supportato per il prodotto. | 
| PRODOTTO\_INCOMPATIBILE | [x] non è supportato in un'offerta per il prodotto. | 
| PRODOTTO\_INCOMPATIBILE | I termini di pagamento e di prezzo forniti sono incompatibili. | 
| PRODOTTO\_INCOMPATIBILE | Usa le dimensioni esistenti e disponibili nel prodotto in [x]. | 
| PRODOTTO\_INCOMPATIBILE | FreeTrialPricingTerm poiché l'unica condizione di prezzo dell'offerta non è supportata per il prodotto. | 
| PRODOTTO\_INCOMPATIBILE | I seguenti termini non sono supportati per il prodotto: [x, y, z]. | 
| PRODOTTO\_INCOMPATIBILE | Le offerte sostitutive sono supportate solo per il modello di prezzo contrattuale. | 
| PRODOTTO\_INCOMPATIBILE | Fornisci termini di prezzo compatibili con le dimensioni del prodotto. Condizioni di prezzo incompatibili: [x, y, z]. | 
| INCOMPATIBLE\_RATE\_CARD\_CONSTRAINTS | Imposta e attiva il modello tariffario Allowed in for usage. MultipleDimensionSelection QuantityConfiguration ConfigurableUpfrontPricingTerm  | 
| INCOMPATIBLE\_RATE\_CARD\_CONSTRAINTS | Imposta e seleziona Non consentito nel modello di prezzo basato sull'utilizzo. MultipleDimensionSelection QuantityConfiguration ConfigurableUpfrontPricingTerm  | 
| INCOMPATIBLE\_RATE\_CARD\_CONSTRAINTS | QuantityConfiguration non può essere modificato dopo il rilascio dell'offerta. ConfigurableUpfrontPricingTerm  | 
| INCOMPATIBLE\_RATE\_CARD\_CONSTRAINTS | MultipleDimensionSelection non può essere modificato dopo il rilascio dell'offerta. ConfigurableUpfrontPricingTerm  | 
| TARIFFE\_INCOMPATIBILI | Imposta tutti gli importi e i prezzi degli addebiti su zero (0) quando utilizzi il modello di prezzo gratuito. | 
| TARIFFE\_INCOMPATIBILI | Per un'offerta di prova gratuita del prodotto sono consentiti solo prezzi pari UsageBasedPricingTerm a zero (0). | 
| INCOMPATIBLE\_RESALE\_AUTHORIZATION | Fornire lo stesso specificato in. CurrencyCode ResaleAuthorization | 
| INCOMPATIBLE\_RESALE\_AUTHORIZATION | Garantire la durata delle partite, la durata specificata in. FixedUpfrontPricingTerm ResaleAuthorization | 
| INCOMPATIBLE\_RESALE\_AUTHORIZATION | Fornisci termini compatibili con. ResaleAuthorization Termini incompatibili: [x, y, z]. | 
| DURATURA\_SELETTORE\_INCOMPATIBILE | Le durate non possono essere rimosse dalle schede tariffarie dopo il rilascio dell'offerta. ConfigurableUpfrontPricingTerm  | 
| VERIFICA\_VENDITORE\_INCOMPATIBILE | Completa tutti i processi di verifica del venditore richiesti. | 
| TERMINI INCOMPATIBILI  | [x] non è supportato insieme ai seguenti termini: [y, z]. | 
| TERMINI\_INCOMPATIBILI  | I seguenti termini non possono essere aggiunti dopo il rilascio dell'offerta: [x, y, z]. | 
| TERMINI\_INCOMPATIBILI  | I seguenti termini non possono essere rimossi dopo il rilascio dell'offerta: [x, y, z]. | 
| TERMINI\_INCOMPATIBILI  | [x] non è supportato per le offerte private. | 
| TERMINI\_INCOMPATIBILI  | I seguenti termini non sono supportati e FreeTrialPricingTerm garantiscono un utilizzo illimitato: [x, y, z]. | 
| TERMINI\_INCOMPATIBILI  | I seguenti termini non sono supportati FreeTrialPricingTerm per il prodotto: [x, y, z]. | 
| TERMINI\_INCOMPATIBILI  | Fornisci un prezzo pari a zero (0) per i casi in FixedUpfrontPricingTerm cui l'offerta contiene un. PaymentScheduleTerm | 
| TERMINI\_INCOMPATIBILI  | I seguenti termini non sono compatibili con PricingModel: [x, y, z]. | 
| TERMINI\_INCOMPATIBILI  | FixedUpfrontPricingTerm non è supportato quando MarkupPercentage è maggiore di zero (0). | 
| TERMINI\_INCOMPATIBILI  | La modifica richiesta non può essere effettuata dopo il rilascio dell'offerta. | 
| TERMINI\_INCOMPATIBILI  | La modifica richiesta non può essere effettuata dopo la scadenza dell'offerta. | 
| DURATA NON VALIDA DEL CONTRATTO | Fornisci una durata compresa tra [x] e [y] mesi. | 
| DURATA\_DI\_CONTRATTO\_NON VALIDA | Assicurati che la granularità della durata sia pari a quella giornaliera per le dimensioni misurate. | 
| CODICE\_VALUTA NON VALIDO | Fornisci un file supportato. CurrencyCode | 
| INVALID\_CURRENCY\_CODE | Fornisci lo stesso per tutti i prezzi e i termini di pagamento CurrencyCode . | 
| INVALID\_DURATION | Assicurati che la durata in FreeTrialPricingTerm rientri nell'intervallo consentito. | 
| INVALID\_DURATION | Specificare la durata in FixedUpfrontPricingTerm modo che corrisponda alla durata compresa tra e. AgreementStartDate AgreementEndDate | 
| INVALID\_DURATION | Fornisci una durata compresa tra [x] e [y] mesi. | 
| DURATURA\_INVALIDA | Assicurati che la granularità della durata sia pari a quella giornaliera per le dimensioni misurate. | 
| INVALID\_GRANTS | Fornisci lo stesso MaxQuantity per tutte le sovvenzioni in. FreeTrialPricingTerm | 
| INVALID\_GRANTS | Fornisci sovvenzioni per tutte le dimensioni misurate disponibili in. FreeTrialPricingTerm | 
| CAMBIA\_PREZZO\_NON VALIDO | [x] non può essere aggiornato fino a [y] perché hai richiesto un aumento di prezzo negli ultimi 120 giorni. Per annullare la precedente richiesta di aumento del prezzo o per ulteriori informazioni, contatta il team di Marketplace AWS Managed Catalog Operations. | 
| INVALID\_PRICE\_CHANGE | L'aumento di prezzo e l'aggiunta di dimensioni in [x] non sono supportati nella stessa richiesta. Aggiungi prima le dimensioni. | 
| INVALID\_PRICE\_CHANGE | L'aumento e la diminuzione del prezzo UsageBasedPricingTerm non sono supportati nella stessa richiesta. Diminuisci prima i prezzi. | 
| INVALID\_PRICE\_CHANGE | L'aumento RecurringPaymentTerm e la diminuzione del prezzo in UsageBasedPricingTerm non sono supportati nella stessa richiesta. Diminuisci prima i prezzi. | 
| INVALID\_PRICE\_CHANGE | La riduzione RecurringPaymentTerm e l'aumento del prezzo UsageBasedPricingTerm non sono supportati nella stessa richiesta. Diminuisci prima i prezzi. | 
| INVALID\_RATE\_CARD | ConfigurableUpfrontPricingTerm manca una o più chiavi dimensionali per la durata [x]. Fornisci i prezzi per lo stesso set di chiavi di dimensione per tutte le durate. | 
| INVALID\_RATE\_CARD | Fornisci un tariffario solo per le dimensioni misurate in. UsageBasedPricingTerm | 
| INVALID\_RATE\_CARD | Le tariffe non possono essere rimosse da [x]. Specificate i prezzi per tutte le dimensioni nella scheda tariffaria esistente. | 
| INVALID\_RATE\_CARD | Fornisci dimensioni che abbiano la stessa unità in [x]. | 
| INVALID\_RATE\_CARD | Fornisci tutte le dimensioni misurate o tutte le dimensioni autorizzate in [x]. | 
| INVALID\_RATE\_CARD | Fornisci solo le dimensioni autorizzate in [x]. | 
| INVALID\_RATE\_CARD | Fornisci tariffe basate sull'utilizzo per tutte le dimensioni misurate disponibili in. UsageBasedPricingTerm | 
| INVALID\_RATE\_CARD | Fornisci tariffe basate sull'utilizzo per tutte le dimensioni della prova gratuita. | 
| INVALID\_RATE\_CARD | Fornisci prezzi con un massimo di 8 cifre decimali. UsageBasedPricingTerm | 
| VALORE\_SELETTORE\_DURATA\_NON VALIDO | Fornisci una durata compresa tra [x] e [y] mesi. | 
| VALORE\_SELETTORE\_DURATA\_NON VALIDO | Assicurati che la granularità della durata sia pari a quella giornaliera per le dimensioni misurate. | 
| VALORE\_SELETTORE\_DURATION\_NON VALIDO | Assicurati che la durata in rientri nell'intervallo consentito. ConfigurableUpfrontPricingTerm  | 
| VALORE\_SELETTORE\_DURATURAZIONE NON VALIDO | Fornisci una o più durate contrattuali supportate. | 
| VALORE\_SELETTORE\_DURATA NON VALIDO | Fornisci una o più durate contrattuali supportate o un'unica durata personalizzata. | 
| VALORE\_SELETTORE\_DURATIVO\_NON VALIDO | Fornisci una durata che corrisponda alla durata compresa tra e. ConfigurableUpfrontPricingTerm AgreementStartDate AgreementEndDate | 
| MISSING\_DURATION | Fornisci la durata in. FixedUpfrontPricingTerm | 
| MISSING\_MANDATORY\_TERMS | FixedUpfrontPricingTerm è supportato solo se abbinato a o. ByolPricingTerm PaymentScheduleTerm | 
| MISSING\_MANDATORY\_TERMS | Fornisci almeno uno dei [x, y, z]. | 
| TERMINI\_OBBLIGATORI MANCANTI | Fornisci un modello di prezzo quando usi Byol. ByolPricingTerm  | 
| TOO\_MANY\_GRANTS | Fornisci fino a [x] sovvenzioni in [y]. | 
| TOO\_MANY\_RATE\_CARDS | È consentita una sola carta tariffaria per il prodotto. ConfigurableUpfrontPricingTerm | 
| TOO\_MANY\_RATE\_CARDS | Per il prodotto sono consentite fino a [x] schede tariffarie. ConfigurableUpfrontPricingTerm  | 
| TOO\_MANY\_RATES | Fornire RateCards entro i limiti consentiti in. ConfigurableUpfrontPricingTerm | 
| TOO\_MANY\_RATES | Fornire RateCards entro i limiti consentiti in. UsageBasedPricingTerm | 

## Aggiorna i dettagli del programma di pagamento
<a name="update-payment-schedule-terms-cppo"></a>

Puoi utilizzare l'API Catalog per modificare i dettagli del piano di pagamento, ad esempio un programma di pagamento flessibile, in Marketplace AWS.

Se il produttore ha fornito un piano di pagamento in Resale Authorization, Channel Partner può:
+ Utilizza il tipo di `UpdateMarkup` modifica per applicare una maggiorazione percentuale uniforme a tutti i piani di pagamento.
+ Utilizza il tipo di `UpdatePaymentScheduleTerms` modifica per impostare gli importi di pagamento personalizzati su un valore maggiore o uguale a quello fornito nell'autorizzazione alla rivendita. Le date di pagamento non possono essere modificate. Entrambe le opzioni non possono essere applicate contemporaneamente. Se prima viene applicato un markup e devi modificarlo per applicare uno scadenzario di pagamento, imposta il markup su `0` Tramite il tipo di `UpdateMarkup` modifica. Se viene applicato per primo uno schema di pagamento, non puoi annullare la modifica per applicare il markup.

Per aggiornare i dettagli associati al pagamento della tua offerta, chiama l'operatore `StartChangeSet` API con il tipo di `UpdatePaymentScheduleTerms` modifica, come mostrato nell'esempio seguente.

**Sintassi della richiesta**

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

{
  "Catalog": "AWSMarketplace",
  "ChangeSet": [
    {
      "ChangeType": "UpdatePaymentScheduleTerms",
      "Entity": {
        "Type": "Offer@1.0",
        "Identifier": "offer-123456789"
      },
      "DetailsDocument": {
        "Terms": [
          {
            "Type": "PaymentScheduleTerm",
            "Schedule": [
              {
                "ChargeDate": "2021-12-01",
                "ChargeAmount": "200.00"
              },
              {
                "ChargeDate": "2022-03-01",
                "ChargeAmount": "250.00"
              }
            ]
          }
        ]
      }
    }
  ]
}
```

Fornisci informazioni per i campi in cui aggiungere il `UpdatePaymentScheduleTerms` tipo di modifica:
+ **Entità** (oggetto) (obbligatorio): il tuo CPPO. 
  + **Tipo** (stringa) (obbligatorio): `Type` è sempre`Offer@1.0`. 
  + **Identificatore** (stringa) (obbligatorio): l'ID dell'offerta. Per ulteriori informazioni, consulta [Identificatore](catalog-apis.md#identifier).
+ **DetailsDocument**(object) (richiesto) — Il valore JSON delle specifiche della richiesta.
  + **Termini** (serie di strutture): elenco dei termini di pagamento che desideri aggiornare. I termini di pagamento supportati sono:
    + **PaymentScheduleTerm**(oggetto): definisce un modello tariffario rateale in cui ai clienti viene addebitato un prezzo fisso in date diverse durante il periodo di validità del contratto.
      + **Tipo** (stringa): tipo di termine da aggiornare. Questo è il valore dell'oggetto:`"PaymentScheduleTerm"`.
      + **Pianificazione** (matrice di strutture): elenco dello schema di pagamento in cui ogni elemento definisce una rata di pagamento. Contiene le informazioni necessarie per calcolare il prezzo da pagare e la data in cui verrebbe addebitato al cliente.
        + **ChargeDate**(stringa) — La data in cui il cliente pagherebbe il prezzo definito nel presente termine del piano di pagamento. `ChargeDate`è rappresentato in YYYY-MM-DD formato. Le fatture vengono generate alla data indicata.
        + **ChargeAmount**(stringa) — Il prezzo che il cliente pagherebbe alla data prevista (`ChargeDate`).

**Sintassi della risposta**

Viene creato un set di modifiche per la richiesta. La risposta a questa richiesta fornisce l'`ChangeSetId`e `ChangeSetArn` per il set di modifiche ed è simile alla seguente.

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

La richiesta di modifica viene aggiunta a una coda ed elaborata. Ciò include la convalida delle informazioni per garantire che soddisfino le linee guida. Marketplace AWS Il processo di convalida può richiedere da pochi minuti a qualche ora. 

Puoi controllare lo stato della richiesta tramite o direttamente tramite Portale di gestione Marketplace AWS l'API Catalog utilizzando l'operazione `[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)` API.

**Convalide sincrone**

Le convalide dello schema seguenti sono specifiche per `UpdatePaymentScheduleTerms` le azioni in. AWS Marketplace Catalog API Queste convalide vengono eseguite quando si chiama. `StartChangeSet` Se la richiesta non soddisfa i seguenti requisiti, avrà esito negativo con una risposta HTTP.


| Campo di input | Regola di convalida | HTTP | 
| --- | --- | --- | 
| Termini | Richiesto<br />È consentito solo PaymentScheduleTerm ""<br />La dimensione dell'elenco deve essere inferiore a 2 | 422 | 
| Termini []. PaymentScheduleTerm.CurrencyCode | Richiesto<br />Valute supportate: ["USD», «AUD», «EUR», «GBP», «JPN"] | 422 | 
| Termini []. PaymentScheduleTerm.Schedule[] | Richiesto<br />La dimensione dell'elenco deve essere compresa tra 1 e 60, inclusi | 422 | 
| Termini []. PaymentScheduleTerm.Schedule[]. ChargeDate | Richiesto<br />Formato: "YYYY-MM-DD» | 422 | 
| Termini []. PaymentScheduleTerm.Schedule[]. ChargeAmount | RichiestoIl tipo di dati è «String»<br />Non-negativedecimali con un massimo di 2 cifre decimali supportate<br />Non sono consentite proprietà aggiuntive | 422 | 

**Errori asincroni**

I seguenti errori sono specifici `UpdatePaymentScheduleTerms` delle azioni in. AWS Marketplace Catalog API Questi errori vengono restituiti quando si chiama `DescribeChangeSet` dopo l'elaborazione di un set di modifiche. Per ulteriori informazioni sull'utilizzo `DescribeChangeSet` per ottenere lo stato di una richiesta di modifica, vedere[Utilizzo dei set di modifiche](catalog-apis.md#working-with-change-sets).


| Codice di errore | Messaggio di errore | 
| --- | --- | 
| DUPLICATE\_CHARGE\_DATES | Fornisci date di addebito univoche in. PaymentScheduleTerm | 
| INCOMPATIBLE\_MARKUP\_PERCENTAGE | PaymentScheduleTerm non è supportato quando MarkupPercentage è maggiore di zero (0). | 
| INCOMPATIBLE\_RESALE\_AUTHORIZATION | Fornisci termini compatibili con. ResaleAuthorization Termini incompatibili: [PaymentScheduleTerm]. | 
| INCOMPATIBLE\_RESALE\_AUTHORIZATION | Assicurati che il totale in sia compatibile con. ChargeAmounts PaymentScheduleTerm ResaleAuthorization | 
| INCOMPATIBLE\_RESALE\_AUTHORIZATION | Assicurati che le date di addebito inserite coincidano con le date di addebito PaymentScheduleTerm in. ResaleAuthorization | 
| INCOMPATIBLE\_RESALE\_AUTHORIZATION | Assicurati che l'importo dell'addebito PaymentScheduleTerm sia maggiore o uguale all'importo dell'addebito indicato per quella data. ResaleAuthorization  | 
| TERMINI\_INCOMPATIBILI | La modifica richiesta non può essere effettuata dopo il rilascio dell'offerta. | 
| TERMINI\_INCOMPATIBILI | La modifica richiesta non può essere effettuata dopo la scadenza dell'offerta. | 
| TERMINI\_INCOMPATIBILI | Da utilizzare UpdatePaymentScheduleTerms con un importo di pagamento specifico o UpdateMarkup con un'unica percentuale di markup per le date programmate. | 
| INVALID\_CHARGE\_DATES | Fornisci le date di addebito precedenti. AgreementEndDate | 
| TOO\_MANY\_BACKDATED\_CHARGES | Fornisci fino a 1 pagamento programmato in precedenza. AvailabilityEndDate | 


| Codice di errore | Messaggio di errore | 
| --- | --- | 
| DUPLICATE\_CHARGE\_DATES | Fornisci date di addebito univoche in. PaymentScheduleTerm | 
| INCOMPATIBLE\_CURRENCY\_CODE | CurrencyCode non può essere modificato dopo il rilascio dell'offerta. | 
| INCOMPATIBLE\_MARKUP\_PERCENTAGE | PaymentScheduleTerm non è supportato quando MarkupPercentage è maggiore di zero (0). | 
| INCOMPATIBLE\_PAYMENT\_SETTINGS | Aggiorna le impostazioni di pagamento per renderle compatibili con. CurrencyCode | 
| INCOMPATIBLE\_RESALE\_AUTHORIZATION | Fornisci termini compatibili con. ResaleAuthorization Termini incompatibili: [PaymentScheduleTerm]. | 
| INCOMPATIBLE\_RESALE\_AUTHORIZATION | Assicurati che il totale in sia compatibile con. ChargeAmounts PaymentScheduleTerm ResaleAuthorization | 
| INCOMPATIBLE\_SELLER\_VERIFICATION | Completa tutti i processi di verifica del venditore richiesti. | 
| TERMINI INCOMPATIBILI | La modifica richiesta non può essere effettuata dopo il rilascio dell'offerta. | 
| TERMINI\_INCOMPATIBILI | La modifica richiesta non può essere effettuata dopo la scadenza dell'offerta. | 
| INVALID\_CHARGE\_DATES | Fornisci le date di addebito precedenti. AgreementEndDate | 
| INVALID\_CURRENCY\_CODE | Fornisci un file supportato. CurrencyCode | 
| INVALID\_CURRENCY\_CODE | Fornisci lo stesso per tutti i prezzi e i termini di pagamento CurrencyCode . | 
| TOO\_MANY\_BACKDATED\_CHARGES | Fornisci fino a 1 pagamento programmato in precedenza. AvailabilityEndDate | 

## Pubblica il CPPO
<a name="release-offer-cppo"></a>

Puoi utilizzare l'API Catalog per unire le informazioni raccolte da tutti i tipi di modifiche agli aggiornamenti e quindi pubblicare l'offerta in. Marketplace AWS

Le offerte rimangono invariate fino `Draft` a quando non `ReleaseOffer` vengono richiamate. Una volta rilasciata, l'offerta è consultabile in Marketplace AWS.

Per pubblicare la tua offerta, chiama l'operazione `StartChangeSet` API con il tipo di `ReleaseOffer` modifica, come mostrato nell'esempio seguente. 

**Sintassi della richiesta**

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

{
  "Catalog": "AWSMarketplace",
  "ChangeSet": [
    {
      "ChangeType": "ReleaseOffer",
      "Entity": {
        "Type": "Offer@1.0",
        "Identifier": "offer-123456789"
      },
      "DetailsDocument": {}
    }
  ]
}
```

Fornisci informazioni sui campi in cui aggiungere il tipo di `ReleaseOffer` modifica:
+ **Entità** (oggetto) (obbligatorio): il tuo CPPO. 
  + **Tipo** (stringa) (obbligatorio): `Type` è sempre`Offer@1.0`. 
  + **Identificatore** (stringa) (obbligatorio): l'ID dell'offerta. Per ulteriori informazioni, consulta [Identificatore](catalog-apis.md#identifier).
+ **DetailsDocument**(object) (richiesto) — Il valore JSON delle specifiche della richiesta. Deve essere vuoto per. `ReleaseOffer`

**Sintassi della risposta**

Viene creato un set di modifiche per la richiesta. La risposta a questa richiesta fornisce l'`ChangeSetId`e `ChangeSetArn` per il set di modifiche ed è simile alla seguente.

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

La richiesta di modifica viene aggiunta a una coda ed elaborata. Ciò include la convalida delle informazioni per garantire che soddisfino le linee guida. Marketplace AWS Il processo di convalida può richiedere da pochi minuti a qualche ora. 

Puoi controllare lo stato della richiesta tramite o direttamente tramite Portale di gestione Marketplace AWS l'API Catalog utilizzando l'operazione `[DescribeChangeSet](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_DescribeChangeSet.html)` API.

**Convalide sincrone**

Le convalide dello schema seguenti sono specifiche per `ReleaseOffer` le azioni in. AWS Marketplace Catalog API Queste convalide vengono eseguite quando si chiama. `StartChangeSet` Se la richiesta non soddisfa i seguenti requisiti, avrà esito negativo con una risposta HTTP.


| Campo di input | Regola di convalida | 
| --- | --- | 
| Informazioni  | Deve essere vuota () {} | 

**Errori asincroni**

I seguenti errori sono specifici `ReleaseOffer` delle azioni in. AWS Marketplace Catalog API Questi errori vengono restituiti quando si chiama `DescribeChangeSet` dopo l'elaborazione di un set di modifiche. Per ulteriori informazioni sull'utilizzo `DescribeChangeSet` per ottenere lo stato di una richiesta di modifica, vedere[Utilizzo dei set di modifiche](catalog-apis.md#working-with-change-sets).


| Codice di errore | Messaggio di errore | 
| --- | --- | 
| INCOMPATIBLE\_PAYMENT\_SETTINGS | Aggiorna le impostazioni di pagamento per renderle compatibili con. CurrencyCode | 
| PRODOTTO\_INCOMPATIBILE | Per prima cosa crea un'offerta pubblica per il prodotto. | 
| INCOMPATIBLE\_SELLER\_VERIFICATION | Completa tutti i processi di verifica del venditore richiesti. | 
| INVALID\_UPDATE\_REQUEST | La modifica richiesta non può essere eseguita dopo il rilascio dell'offerta. | 
| DATA\_DEL\_CONTRATTO\_MANCANTE | Fornisci un codice per le offerte sostitutive. AgreementEndDate  | 
| DATA\_DI\_DISPONIBILITÀ\_MANCANTE | Fornisci un'offerta privata. AvailabilityEndDate  | 
| TERMINI\_OBBLIGATORI MANCANTI | Fornisci un quando l'offerta contiene un. FixedUpfrontPricingTerm PaymentScheduleTerm | 
| MISSING\_BUYER\_ACCOUNTS | Fornisci per le offerte create utilizzando PositiveTargeting . BuyersAccounts ResaleAuthorization | 
| MISSING\_BUYER\_ACCOUNTS | Tutte le offerte per il prodotto devono essere private. Fornire PositiveTargeting con BuyersAccounts. | 
| DESCRIZIONE\_MANCANTE | Imposta la descrizione prima di rilasciare l'offerta. | 
| MISSING\_MANDATORY\_TERMS | Aggiungi [x] all'offerta. | 
| TERMINI\_OBBLIGATORI MANCANTI | Fornisci un quando l'offerta contiene un. FixedUpfrontPricingTerm PaymentScheduleTerm | 
| NOME\_MANCANTE | Imposta il nome prima di rilasciare l'offerta. | 
| TOO\_MANY\_OFFERS | È possibile creare una sola offerta pubblica per prodotto. | 
| TOO\_MANY\_OFFERS | È possibile creare una sola offerta di prova gratuita pubblica per prodotto. | 

## Definire un CPPO esistente
<a name="describe-entity-cppo"></a>

È possibile utilizzare l'API Catalog per definire i dettagli del CPPO in. Marketplace AWS

Per definire un CPPO esistente, richiamate l'operazione `DescribeEntity` API con il tipo di `Offer@1.0` entità, come illustrato nell'esempio seguente.

**Sintassi della richiesta**

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

Fornisci informazioni sui campi per aggiungere il tipo di `DescribeEntity` modifica:
+ **catalog** (string): il catalogo relativo alla richiesta. Valore fisso:`AWSMarketplace`.
+ **entityID** (string) — L'ID univoco dell'offerta da descrivere.

**Sintassi della risposta**

La risposta a questa richiesta fornisce i dettagli dell'offerta ed è simile alla seguente.

```
{
  "EntityType": "Offer@1.0",
  "EntityIdentifier": "offer-a5oEXAMPLEzpu@1",
  "EntityArn": "arn:aws:aws-marketplace:us-east-1:446235747164:AWSMarketplace/Offer/offer-a5oEXAMPLEzpu",
  "LastModifiedDate": "2021-03-10T21:57:16Z",
  "Details": {
    "Id": "offer-3rEXAMPLErn",
    "State": "Released",
    "Name": "Test Offer",
    "Description": "Worldwide private offer for Test Product",
    "PreExistingAgreement": {
      "AcquisitionChannel": "External",
      "PricingModel": "Contract"
    },
    "ProductId": "prod-0bEXAMPLEb51",
    "ResaleAuthorizationId": "resaleauthz-123456789",
    "MarkupPercentage": "5.0",
    "Terms": [
      {
        "Type": "LegalTerm",
        "Documents": [
          {
            "Type": "CustomEula",
            "Url": "https://s3.amazonaws.com/EULA/custom-eula-1234.txt"
          }
        ]
      },
      {
        "Type": "ConfigurableUpfrontPricingTerm",
        "CurrencyCode": "USD",
        "RateCards": [
          {
            "Selector": {
              "Type": "Duration",
              "Value": "P12M"
            },
            "RateCard": [
              {
                "DimensionKey": "m3.large",
                "Price": "300.00"
              },
              {
                "DimensionKey": "m4.xlarge",
                "Price": "400.00"
              }
            ],
            "Constraints": {
              "MultipleDimensionSelection": "Allowed",
              "QuantityConfiguration": "Allowed"
            }
          }
        ]
      },
      {
        "Type": "UsageBasedPricingTerm",
        "CurrencyCode": "USD",
        "RateCards": [
          {
            "RateCard": [
              {
                "DimensionKey": "m3.large",
                "Price": "0.10"
              },
              {
                "DimensionKey": "m4.xlarge",
                "Price": "0.20"
              }
            ]
          }
        ]
      },
      {
        "Type": "PaymentScheduleTerm",
        "CurrencyCode": "USD",
        "Schedule": [
          {
            "ChargeDate": "2020-12-01T00:00:00Z",
            "ChargeAmount": "1000.00"
          },
          {
            "ChargeDate": "2021-06-15T00:00:00Z",
            "ChargeAmount": "1250.00"
          }
        ]
      }
    ],
    "Rules": [
      {
        "Type": "TargetingRule",
        "PositiveTargeting": {
          "CountryCodes": [
            "US",
            "CA"
          ],
          "BuyerAccounts": [
            "118033953248"
          ]
        },
        "NegativeTargeting": {
          "CountryCodes": [
            "XX"
          ]
        }
      },
      {
        "Type": "AvailabilityRule",
        "AvailabilityEndDate": "2050-08-30T01:56:03Z"
      }
    ]
  }
}
```

Fornisci informazioni per i campi di input per la `DescribeEntity` risposta:
+ **EntityType**(stringa) — Il tipo denominato dell'entità, che è`Offer@1.0`.
+ **EntityIdentifier**(stringa) — L'identificatore dell'entità, nel formato di`EntityId@RevisionId`.
+ **EntityArn**(stringa) — L'ARN associato all'identificatore univoco per il set di modifiche a cui si fa riferimento in questa richiesta.
+ **LastModifiedDate**(stringa) — La data dell'ultima modifica dell'entità, nel formato ISO 8601 (). `2018-02-27T13:45:22Z`
+ **DetailsDocument**(oggetto) — L'oggetto JSON include i dettagli dell'entità.
  + **Id** (stringa): identificatore univoco per un'entità dell'offerta in Marketplace AWS e generato durante la creazione di un'offerta.
  + **Stato** (stringa): lo stato dell'offerta.
  + **Nome** (stringa): nome associato all'offerta per una migliore leggibilità per te e per i tuoi clienti. Verrà visualizzato anche come parte delle informazioni sull'Accordo.
  + **Descrizione** (stringa): la descrizione è un testo in formato libero che deve essere utilizzato solo da te e non sarà mai esposto agli acquirenti.
  + **PreExistingAgreement**(stringa): determina se questa offerta è un rinnovo di un contratto esistente con un cliente esistente per lo stesso prodotto sottostante. L'accordo esistente può essere interno o esterno Marketplace AWS. AWS può controllare e verificare che la tua offerta sia un rinnovo. Se non AWS è in grado di verificare l'offerta, AWS può revocare l'offerta e concedere al cliente i relativi diritti.
    + **AcquisitionChannel**(stringa) — Indica se l'accordo esistente è stato firmato all'esterno o all'interno. Marketplace AWS Marketplace AWS Valori possibili:`External`,`AwsMarketplace`.

       
    + **PricingModel**(stringa): indica il modello di prezzo utilizzato dall'accordo esistente. Valori possibili:`Contract`,`Usage`,`Byol`,`Free`.
  + **ProductId**(stringa): la descrizione è un testo in formato libero che deve essere utilizzato solo da te e non sarà mai esposto agli acquirenti.
  + **ResaleAuthorizationId**(stringa) — ResaleAuthorization viene utilizzato per creare l'offerta privata.
  + **MarkupPercentage**(stringa) — Valore percentuale che il partner di canale ha passato nel tipo di `UpdateMarkup` modifica. Questo markup è già applicato ai termini.
  + **Termini** (serie di strutture): elenco di termini.
  + **Regole** (matrice di strutture): elenco di regole.