

L' Centrale Partner AWS API Reference è stato ristrutturato. Per ulteriori informazioni sulle operazioni API supportate, consulta l'[Centrale Partner AWS API Reference.](https://docs.aws.amazon.com/partner-central/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à.

# Notifiche per AWS API di vendita Partner Central
<a name="selling-api-events"></a>

Gli eventi per l'API di vendita forniscono notifiche in tempo reale sulle modifiche dello stato o sui dettagli delle opportunità. Questi eventi aiutano a mantenere i sistemi sincronizzati con AWS Partner Central e a garantire risposte e aggiornamenti tempestivi.

**Topics**
+ [Completa il prerequisito per monitorare gli eventi](#events-prerequites)
+ [Configura Amazon EventBridge per monitorare gli eventi](#eventbridge-setup)
+ [Scopri di più sulla vendita di eventi API](#learn-about-events)

## Completa il prerequisito per monitorare gli eventi
<a name="events-prerequites"></a>

Gli utenti richiedono le autorizzazioni IAM appropriate per accedere e gestire gli eventi pubblicati dall'API di vendita Partner Central. Per ulteriori informazioni sulle azioni, le risorse e le chiavi di condizione disponibili per EventBridge, consulta [ Using IAM policy conditions in Amazon EventBridge ](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-use-conditions.html#events-pattern-detail-type) nella * Amazon EventBridge User Guide*. Una delle chiavi di condizione è`events:detail-type`, che può essere utilizzata per definire l'ambito delle autorizzazioni per tipi di eventi specifici.

La seguente politica di esempio dimostra come personalizzare e definire l'ambito delle autorizzazioni per gli eventi proposti. L'`AllowPutRuleForPartnercentralSellingEvents`istruzione consente la creazione di regole, ma solo per gli eventi dall'`aws.partnercentral-selling`origine. 

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": {
    "Sid": "AllowPutRuleForPartnercentralSellingEvents",
    "Effect": "Allow",
    "Action": "events:PutRule",
    "Resource": "*",
    "Condition": {
      "ForAllValues:StringEquals": {
        "events:source": "aws.partnercentral-selling"
      }
    }
  }
}
```

------

## Configura Amazon EventBridge per monitorare gli eventi
<a name="eventbridge-setup"></a>

Per monitorare gli eventi di vendita delle API, crei una EventBridge regola che corrisponda agli eventi che desideri acquisire. Puoi utilizzare gli SDK Console di gestione AWS o gli AWS SDK per creare e gestire le regole. Le sezioni seguenti spiegano come creare regole utilizzando entrambi i metodi. Indipendentemente dal metodo utilizzato, è necessario creare la regola nella `us-east-1` regione Stati Uniti orientali (Virginia settentrionale).

### Console di gestione AWS setup
<a name="eventbridge-console-setup"></a>

Per impostare una EventBridge regola utilizzando il Console di gestione AWS, segui i passaggi descritti in [ Creazione di regole che reagiscono agli eventi in Amazon EventBridge ](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-create-rule.html) nella * Amazon EventBridge User Guide*. Quando crei la regola, devi impostare il bus degli eventi ** come predefinito ** e creare la regola nella `us-east-1` regione Stati Uniti orientali (Virginia settentrionale).

Di seguito è riportato un esempio di regola di evento:

```
{
    "source": ["aws.partnercentral-selling"],
    "detail": {
        "catalog": ["AWS"]
    }
}
```

### AWS Configurazione SDK
<a name="eventbridge-sdk-setup"></a>

È possibile utilizzare gli AWS SDK per creare e gestire le EventBridge regole a livello di codice. Per ulteriori informazioni, consulta * Amazon EventBridge API [ PutRule ](https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_PutRule.html) Reference. *

L'esempio seguente utilizza l' AWS SDK per Python (Boto3):

```
import boto3

client = boto3.client('events', region_name='us-east-1')

response = client.put_rule(
    Name='MyOpportunityCreatedRule',
    EventPattern=
    '{
        "source": ["aws.partnercentral-selling"], 
        "detail-type": ["Opportunity Created"], 
        "detail": {"catalog": ["AWS"]}
    }',
    State='ENABLED'
)
print('Rule ARN:', response['RuleArn'])
```

## Scopri di più sulla vendita di eventi API
<a name="learn-about-events"></a>

Le sezioni seguenti descrivono i tipi di eventi di vendita delle API, gli scenari che li attivano e gli esempi di eventi.

### Event types (Tipi di evento)
<a name="types-of-events"></a>

Di seguito sono riportati i tipi di eventi e i relativi trigger.
+ [Opportunità creata](#opportunity-created): si attiva quando viene creata una nuova opportunità.
+ [Opportunità aggiornata](#opportunity-updated): si attiva quando viene aggiornata un'opportunità (opportunità o il corrispondente riepilogo dell' AWS opportunità).
+ [Invito al coinvolgimento creato](#engagement-invitation-created): viene attivato quando viene creato un invito AWS di segnalazione.
+ [Invito al coinvolgimento accettato](#engagement-invitation-accepted): si attiva quando un partner accetta un invito al AWS coinvolgimento, a conferma del suo interesse a collaborare con lui per cogliere l'opportunità. AWS 
+ [Invito al fidanzamento rifiutato](#engagement-invitation-rejected): si attiva quando un partner rifiuta un invito al fidanzamento. AWS 
+ [Invito al coinvolgimento scaduto](#engagement-invitation-expired): Questo evento si attiva quando un partner rifiuta un. EngagementInvitation Notifica al partner mittente e ricevente che l'invito è scaduto.
+ [Membro del coinvolgimento aggiunto](#engagement-member-added): questo evento viene attivato quando un nuovo membro si unisce all'Engagement dopo aver accettato un invito. Notifica a tutti i membri attuali dell'Engagement l'aggiunta del nuovo membro all'Engagement.
+ [Istantanea delle risorse di coinvolgimento creata](#engagement-resource-snapshot-created): questo evento viene attivato quando viene creata la nuova revisione dell'istantanea delle risorse (come le opportunità) associate a un coinvolgimento. Notifica a tutti i membri attuali dell'Engagement le modifiche alla risorsa associata Snapshot.
+ [Coinvolgimento creato](#engagement-created): si attiva quando viene creato un nuovo coinvolgimento.
+ [Coinvolgimento aggiornato](#engagement-updated): viene attivato quando un coinvolgimento viene aggiornato.

### Scenari di eventi
<a name="events-summary"></a>

La tabella seguente descrive come funzionano gli eventi in diversi scenari. Per questi scenari sono state formulate le seguenti ipotesi:
+ AWS è anche un partner in questi scenari.
+ `ResourceSnapshotJob`è configurato correttamente dal partner.
+ I campi aggiornati sull'opportunità si trovano anche nel modello di opportunità per Resource Snapshot.


| **Azione da parte tua in qualità di partner ** | **Eventi ricevuti ** | **Tipo di partecipante ** | 
| --- | --- | --- | 
| Tu crei un'opportunità | Opportunità creata |  | 
| La usi StartEngagementFromOpportunityTask per inviare un'opportunità | Opportunità aggiornata, coinvolgimento creato, istantanea della risorsa di coinvolgimento creata, membro del coinvolgimento aggiunto, invito al coinvolgimento creato |  | 
| AWS approva l'opportunità inviata | Invito al coinvolgimento accettato, membro del coinvolgimento aggiunto, opportunità aggiornata, istantanea della risorsa di coinvolgimento creata |  | 
| AWS rifiuta l'opportunità inviata | Invito al coinvolgimento rifiutato, opportunità aggiornata, istantanea della risorsa di coinvolgimento creata |  | 
| Si associa un' AWS Marketplace offerta a un'opportunità | Opportunità aggiornata |  | 
| Associate una soluzione a un'opportunità | Opportunità aggiornata, istantanea delle risorse di coinvolgimento creata |  | 
| Aggiorna un'opportunità | Opportunità aggiornata, creazione di un'istantanea delle risorse di coinvolgimento (facoltativo se ResourceSnapshotJob è impostato e gli aggiornamenti dei campi si trovano nel modello) |  | 
| AWS aggiorna la tua opportunità | Opportunità aggiornata, istantanea delle risorse di coinvolgimento creata |  | 
| Inviti un altro partner a un incontro | Invito al fidanzamento creato | Mittente | 
| Il tuo invito a partecipare a un impegno è accettato da un partner | Invito al coinvolgimento accettato, membro dell'impegno aggiunto | Mittente | 
| Il tuo invito a partecipare a un impegno viene rifiutato da un partner | Invito al fidanzamento rifiutato | Mittente | 
| Il tuo invito a partecipare a un impegno non viene recepito da un partner per 15 giorni | L'invito al coinvolgimento è scaduto | Mittente | 
| Ricevi un invito da un altro partner a partecipare a un impegno | Invito al coinvolgimento creato | Ricevitore | 
| Accetti l'invito di un altro partner a partecipare a un impegno tramite StartEngagementByAcceptingInvitationTask | Invito al coinvolgimento accettato, membro del coinvolgimento aggiunto, opportunità creata, opportunità aggiornata, istantanea della risorsa di coinvolgimento creata | Destinatario | 
| Rifiuti l'invito a partecipare a un impegno di un altro partner | Invito al fidanzamento rifiutato | Ricevitore | 
| Non si agisce su invito di un altro partner a partecipare a un impegno per 15 giorni | Invito al coinvolgimento scaduto | Ricevitore | 
| Crei un coinvolgimento | Engagement creato | Mittente | 
| Aggiorna un impegno | Coinvolgimento aggiornato | Mittente, destinatario | 

### Eventi di esempio
<a name="example-rules"></a>

Le sezioni seguenti forniscono esempi degli eventi elencati in precedenza nella sezione precedente.

**Topics**
+ [Opportunità creata](#opportunity-created)
+ [Opportunità aggiornata](#opportunity-updated)
+ [Invito al coinvolgimento creato](#engagement-invitation-created)
+ [Invito di fidanzamento accettato](#engagement-invitation-accepted)
+ [Invito di fidanzamento rifiutato](#engagement-invitation-rejected)
+ [Invito di fidanzamento scaduto](#engagement-invitation-expired)
+ [Membro di Engagement aggiunto](#engagement-member-added)
+ [Istantanea della risorsa di coinvolgimento creata](#engagement-resource-snapshot-created)
+ [Engagement creato](#engagement-created)
+ [Engagement aggiornato](#engagement-updated)

#### Opportunità creata
<a name="opportunity-created"></a>

I partner utilizzano questo evento per:
+ Notifica ai propri utenti che è stata creata una nuova opportunità.
+ Attiva flussi di lavoro automatizzati come l'aggiornamento dei sistemi CRM o la notifica ai team di vendita della creazione di nuove opportunità.

L'esempio seguente mostra un tipico evento Opportunity Created.

```
{
    "version": "1",
    "id": "01234567-0123-0123-0123-0123456789ab",
    "source": "aws.partnercentral-selling",
    "detail-type": "Opportunity Created",
    "time": "2023-04-16T15:23:45Z",
    "region": "us-east-1",
    "account": "123456789012",
    "detail": {
        "schemaVersion": "{{<version number>}}",
        "catalog": "{{<Sandbox | AWS>}}",
        "opportunity": {
            "identifier": "String"
        }
    }
}
```

#### Opportunità aggiornata
<a name="opportunity-updated"></a>

I partner utilizzano questo evento per:
+ Notifica ai propri utenti che un'opportunità esistente è stata aggiornata.
+ Attiva flussi di lavoro automatizzati come l'aggiornamento dei sistemi CRM o la notifica ai team di vendita.

L'esempio seguente mostra un tipico evento Opportunity Updated.

```
{
    "version": "1",
    "id": "01234567-0123-0123-0123-0123456789ab",
    "source": "aws.partnercentral-selling",
    "detail-type": "Opportunity Updated",
    "time": "2023-04-16T15:23:45Z",
    "region": "us-east-1",
    "account": "123456789012",
    "detail": {
        "schemaVersion": "{{<version number>}}",
        "catalog": "{{<Sandbox | AWS>}}",
        "opportunity": {
             "identifier": "String"
        }
    }
}
```

#### Invito al coinvolgimento creato
<a name="engagement-invitation-created"></a>

I partner utilizzano questo evento per:
+ Informare i propri utenti delle novità EngagementInvitation ricevute.
+ Attiva flussi di lavoro automatizzati per accettare o rifiutare l'invito, ad esempio l'aggiornamento dei sistemi CRM o la notifica ai team di vendita.

L'esempio seguente mostra un tipico evento Engagement Invitation Created.

```
{
    "version": "0",
    "id": "01234567-0123-0123-0123-0123456789ab",
    "detail-type": "Engagement Invitation Created",
    "source": "aws.partnercentral-selling",
    "account": "123456789012",
    "time": "2023-04-15T12:34:56Z",
    "region": "us-east-1",
    "resources": [
      "arn:aws:partnercentral:us-east-1::catalog/AWS/engagement-invitation/engi-v7p8z56whnauo"
    ],
    "detail": {
      "catalog": "AWS",
      "engagementInvitation": {
        "arn": "arn:aws:partnercentral:us-east-1::catalog/AWS/engagement-invitation/engi-v7p8z56whnauo",
        "id": "engi-v7p8z56whnauo",
        "engagementId": "eng-12345678901234",      
        "senderAccountId": "string",
        "receiverAccountId": "string",      
        "senderCompanyName": "string",
        "expirationDate": "string",
        "participantType": "Enum", //Sender/Receiver
		"payloadType": "LeadInvitation" //OpportunityInvitation|LeadInvitation
      }
    }
}
```

#### Invito di fidanzamento accettato
<a name="engagement-invitation-accepted"></a>

I partner utilizzano questo evento per:
+ Notificare ai propri utenti che EngagementInvitation è stato accettato.
+ Aggiorna i loro registri interni in modo che indichino il nuovo partner dell'Engagement.
+ Attiva flussi di lavoro automatizzati per sincronizzare i dati o notificare agli altri membri del team il nuovo membro di Engagement.

L'esempio seguente mostra un tipico evento Engagement Invitation Accepted.

```
{
    "version": "0",
    "id": "01234567-0123-0123-0123-0123456789ab",
    "detail-type": "Engagement Invitation Accepted",
    "source": "aws.partnercentral-selling",
    "account": "123456789012",
    "time": "2023-04-16T15:23:45Z",
    "region": "us-east-1",
    "resources": ["arn:aws:partnercentral:us-east-1::catalog/AWS/engagement-invitation/engi-v7p8z56whnauo"],
    "detail": {
        "catalog": "AWS",
        "engagementInvitation": {
            "arn": "arn:aws:partnercentral:us-east-1::catalog/AWS/engagement-invitation/engi-v7p8z56whnauo",
            "id": "engi-v7p8z56whnauo",
            "engagementId": "eng-12356whnauo",       
            "participantType": "Enum", //Sender/Receiver
            "senderAccountId": "string",
            "receiverAccountId": "string",
            "payloadType": "LeadInvitation" //OpportunityInvitation|LeadInvitation
        }
    }
}
```

#### Invito di fidanzamento rifiutato
<a name="engagement-invitation-rejected"></a>

I partner utilizzano questo evento per:
+ Notifica ai propri utenti che EngagementInvitation è stato rifiutato.
+ Aggiorna i loro record interni in modo che riflettano l'invito rifiutato.
+ Attiva tutti i flussi di lavoro necessari, ad esempio notificando al team di vendita il rifiuto.

L'esempio seguente mostra un tipico evento Engagement Invitation Rejected.

```
{
    "version": "0",
    "id": "01234567-0123-0123-0123-0123456789ab",
    "detail-type": "Engagement Invitation Rejected",
    "source": "aws.partnercentral-selling",
    "account": "123456789012",
    "time": "2023-04-17T09:48:27Z",
    "region": "us-east-1",
    "resources": ["arn:aws:partnercentral:us-east-1::catalog/AWS/engagement-invitation/engi-v7p8z56whnauo"],
    "detail": {
        "catalog": "AWS",
        "engagementInvitation": {
            "arn": "arn:aws:partnercentral:us-east-1::catalog/AWS/engagement-invitation/engi-v7p8z56whnauo",
            "id": "engi-v7p8z56whnauo",
            "engagementId": "eng-12356whnauo",
            "participantType": "Enum", //Sender/Receiver
            "senderAccountId": "string",
            "receiverAccountId": "string",    
            "payloadType": "LeadInvitation" //OpportunityInvitation|LeadInvitation 
        } 
    }
}
```

#### Invito di fidanzamento scaduto
<a name="engagement-invitation-expired"></a>

I partner utilizzano questo evento per:
+ Notifica ai propri utenti che EngagementInvitation è scaduto e non è più possibile utilizzarlo.
+ Aggiorna i loro record interni in modo che riflettano l'invito scaduto.
+ Attiva tutti i flussi di lavoro necessari, ad esempio notificando al team di vendita l'invito scaduto.

L'esempio seguente mostra un tipico evento Engagement Invitation Expired.

```
{
    "version": "0",
    "id": "01234567-0123-0123-0123-0123456789ab",
    "detail-type": "Engagement Invitation Expired",
    "source": "aws.partnercentral-selling",
    "account": "123456789012",
    "time": "2023-04-18T18:20:15Z",
    "region": "us-east-1",
    "resources": [
      "arn:aws:partnercentral:us-east-1::catalog/AWS/engagement-invitation/engi-v7p8z56whnauo"
    ],
    "detail": {
      "catalog" : "AWS",    
      "engagementInvitation": {
        "arn": "arn:aws:partnercentral:us-east-1::catalog/AWS/engagement-invitation/engi-v7p8z56whnauo",
        "id": "engi-v7p8z56whnauo",
        "engagementId": "eng-12356whnauo",        
        "participantType": "Enum", //Sender/Receiver
        "senderAccountId": "string",
        "receiverAccountId": "string",
        "payloadType": "LeadInvitation" //OpportunityInvitation|LeadInvitation
      }  
    }
}
```

#### Membro di Engagement aggiunto
<a name="engagement-member-added"></a>

I partner utilizzano questo evento per:
+ Notificare ai propri utenti le modifiche all'iscrizione a Engagement.
+ Aggiorna i loro record interni in modo che riflettano il nuovo membro di Engagement.
+ Attiva tutti i flussi di lavoro necessari, ad esempio notificando ai membri del team le modifiche.

L'esempio seguente mostra un tipico evento Engagement Member Added.

```
{
    "version": "0",
    "id": "01234567-0123-0123-0123-0123456789ab",
    "detail-type": "Engagement Member Added",
    "source": "aws.partnercentral-selling",
    "account": "123456789012",
    "time": "2023-04-16T15:23:45Z",
    "region": "us-east-1",
    "resources": [
      "arn:aws:partnercentral:us-east-1::catalog/AWS/engagement/eng-v7p8z56whnauo"
    ],
    "detail": {
      "catalog" : "AWS",
      "engagement": {
        "id": "eng-v7p8z56whnauo"
      },
      "engagementMember": {
        "accountId": "string",
        "companyName": "string"
      }
    }
}
```

#### Istantanea della risorsa di coinvolgimento creata
<a name="engagement-resource-snapshot-created"></a>

I partner utilizzano questo evento per tenere traccia delle modifiche alle risorse associate a un coinvolgimento e attivare flussi di lavoro automatizzati, come l'aggiornamento dei sistemi CRM o la notifica ai team di vendita. Il modello di istantanea determina il tipo di aggiornamento:

`OpportunitySummaryView`  
+ Notifica a tutti i membri di un engagement che l'engagement è stato aggiornato.

`AwsOpportunitySummaryFullView`  
+ Tieni traccia degli aggiornamenti apportati specificamente da AWS alle opportunità offerte da un engagement.
+ Questa notifica e questa istantanea sono visibili solo al proprietario dell'opportunità.
+ Include aggiornamenti sul dimensionamento delle offerte, che non sono disponibili tramite il `OpportunitySummaryView` modello.

L'esempio seguente mostra un tipico evento Engagement Resource Snapshot Created.

```
{
    "version": "0",
    "id": "01234567-0123-0123-0123-0123456789ab",
    "detail-type": "Engagement Resource Snapshot Created",
    "source": "aws.partnercentral-selling",
    "account": "123456789012",
    "time": "2023-04-18T18:20:15Z",
    "region": "us-east-1",
    "resources": [
      "arn:aws:partnercentral:us-east-1::catalog/AWS/engagement/eng-v7p8z56whnauo"
    ],
    "detail": {
      "catalog" : "AWS",
      "resourceSnapshot": {
        "arn": "arn:aws:partnercentral-selling:us-east-1::catalog/AWS/engagement/eng-v7p8z56whnauo/resource/Opportunity/o-12312/template/temp-name/snapshot/snapshot-19232",
        "engagementId": "eng-v7p8z56whnauo",
        "resourceType": "Opportunity",      
        "resourceId" : "O123211231",
        "createdBy": "123123123123",
        "targetMemberAccounts": ["123123123123", "aws"], 
        "resourceSnapshotTemplateName": "temp-name"
      }
    }
}
```

#### Engagement creato
<a name="engagement-created"></a>

I partner utilizzano questo evento per:
+ Notifica ai propri utenti che è stato creato un nuovo Engagement.
+ Attiva flussi di lavoro automatizzati come l'aggiornamento dei sistemi CRM o la notifica ai team di vendita delle nuove creazioni di engagement.

L'esempio seguente mostra un tipico evento Engagement Created.

```
{
    "version": "0",
    "id": "01234567-0123-0123-0123-0123456789ab",
    "detail-type": "Engagement Created",
    "source": "aws.partnercentral-selling",
    "account": "123456789012",
    "time": "2023-04-18T18:20:15Z",
    "region": "us-east-1",
    "resources": [
        "arn:aws:partnercentral:us-east-1::catalog/AWS/engagement/eng-567a1j5hxp35lo"
    ],
    "detail": {
        "catalog": "AWS",
        "engagement": {
            "engagementArn": "arn:aws:partnercentral:us-east-1::catalog/AWS/engagement/eng-567a1j5hxp35lo",
            "engagementId": "eng-567a1j5hxp35lo",
            "CreatedAt": "2023-04-18T18:20:15Z",
            "CreatedBy": "aws",
            "ContextTypes": ["Lead"]
            
        }
    }
}
```

#### Engagement aggiornato
<a name="engagement-updated"></a>

I partner utilizzano questo evento per:
+ Notifica ai propri utenti che un Engagement esistente è stato aggiornato.
+ Attiva flussi di lavoro automatizzati come l'aggiornamento dei sistemi CRM o la notifica ai team di vendita.

L'esempio seguente mostra un tipico evento Engagement Updated.

```
{
    "version": "0",
    "id": "01234567-0123-0123-0123-0123456789ab",
    "detail-type": "Engagement Updated",
    "source": "aws.partnercentral-selling",
    "account": "123456789012",
    "time": "2023-04-18T18:20:15Z",
    "region": "us-east-1",
    "resources": [
        "arn:aws:partnercentral:us-east-1::catalog/AWS/engagement/eng-567a1j5hxp35lo"
    ],
    "detail": {
        "catalog": "AWS",
        "engagement": {
            "engagementArn": "arn:aws:partnercentral:us-east-1::catalog/AWS/engagement/eng-567a1j5hxp35lo",
            "engagementId": "eng-567a1j5hxp35lo",
            "LastModifiedAt": "2023-04-18T18:20:15Z",
            "LastModifiedBy": "aws",
            "ContextTypes": ["Lead", "CustomerProject"]
        }
    }
}
```