

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

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

# Trabalho com insights de dimensionamento de negócios
<a name="working-with-deal-sizing-insights"></a>

## O que é Deal Sizing?
<a name="what-is-deal-sizing"></a>

O dimensionamento de negócios é um recurso das oportunidades de engajamento do cliente (ACE) da APN na Central de AWS parceiros que usa IA para fornecer estimativas automatizadas do tamanho do negócio e recomendações de AWS serviços quando os parceiros criam ou atualizam oportunidades.

### Estimativas de MRR previstas pela IA
<a name="ai-forecasted-mrr"></a>

Os insights de dimensionamento de negócios fornecem a mediana das faixas de receita recorrente mensal (MRR) previstas com base nas AWS oportunidades históricas, nos casos de uso e nas descrições comerciais dos parceiros. Os parceiros devem revisar e atualizar o MRR total à medida que os parceiros coletam mais informações sobre o negócio e o progresso no ciclo de vendas.

### AI-Recommended AWS Produtos
<a name="ai-recommended-products"></a>

AI-recommended os produtos são identificados com base nas descrições dos problemas comerciais do cliente e nos detalhes da oportunidade. A IA recomenda AWS produtos relevantes alinhados aos requisitos técnicos e aos casos de uso. Os parceiros devem analisar essas sugestões e personalizar a seleção de produtos para atender às necessidades específicas do cliente.

### Insights aprimorados com URLs da calculadora de preços
<a name="enhanced-insights"></a>

Os parceiros também podem importar URLs da Calculadora de AWS Preços para preencher automaticamente as seleções de serviços e receber informações aprimoradas, incluindo indicadores de elegibilidade do Migration Acceleration Program (MAP), recomendações de otimização e análise de possíveis economias de custos.

## Entendendo Source-Separated os dados
<a name="understanding-source-separated-data"></a>

O Deal Sizing fornece informações de duas fontes distintas para oferecer uma visibilidade abrangente do valor da oportunidade:
+ **AWS Fonte:** AI-recommended produtos baseados em padrões de oportunidades históricas semelhantes
+ **Fonte do parceiro:** Suas próprias estimativas importadas da Calculadora de AWS Preços

### Lidando com a variação entre fontes
<a name="handling-variance"></a>

Quando as estimativas fornecidas pelo parceiro diferem significativamente das AWS recomendações, os parceiros devem:

1. Analise os detalhes da oportunidade para garantir que todas as informações relevantes sejam capturadas

1. Verifique se as configurações de URL da Calculadora de Preços correspondem aos requisitos reais

1. Considere AWS as recomendações como pontos de dados informados por oportunidades históricas semelhantes

1. Tome decisões informadas com base no contexto e nos requisitos específicos do cliente

## Acessando insights de dimensionamento de negócios
<a name="accessing-deal-sizing-insights"></a>

Os parceiros acessam os dados de dimensionamento de negócios por meio da ação de `GetAwsOpportunitySummary` API, que retorna um `AwsOpportunitySummary` objeto estendido contendo previsões de dimensionamento de negócios, recomendações de produtos e insights de otimização.

### Quando os dados de dimensionamento de negócios se tornam disponíveis
<a name="when-data-becomes-available"></a>

Os insights de dimensionamento de negócios ficam disponíveis após a criação de uma oportunidade com detalhes suficientes do cliente e do projeto. O sistema analisa os atributos da oportunidade e gera:

1. **MRR previsto por IA:** calculado automaticamente com base nas características da oportunidade

1. **AWS recomendações de produtos:** serviços relevantes para o problema comercial e os requisitos técnicos do cliente

1. **Informações aprimoradas (quando o URL da Calculadora de Preços é fornecido):** elegibilidade do MAP, recomendações de otimização e análise de economia de custos

**nota**  
Os insights de dimensionamento de negócios não estão disponíveis para todas as oportunidades. A elegibilidade depende de fatores como o histórico do parceiro e a integridade dos detalhes da oportunidade fornecidos.

## Fornecendo insumos de dimensionamento de negócios
<a name="providing-deal-sizing-inputs"></a>

Os parceiros fornecem informações para o dimensionamento de negócios por meio de ações `CreateOpportunity` de `UpdateOpportunity` API. O sistema usa atributos de oportunidade para gerar recomendações.

### Fornecimento do valor total do contrato (TCV)
<a name="providing-tcv"></a>

Os parceiros que estimam o valor total do contrato em vez da receita mensal recorrente podem fornecer o valor do negócio diretamente. A AWS converte automaticamente o TCV em AWS MRR usando AI-powered modelos de conversão.

Para o dimensionamento de negócios no TCV, forneça `ExpectedContractDuration` como `Months` (os valores válidos variam de 1 a 144 meses) e `TargetCompany` como `Self` e `Frequency` como. `None`

```
{
  "Project": {
    "ExpectedContractDuration": { "Term": "Months", "Value": "36" },
    "ExpectedCustomerSpend": [
      {
        "Amount": "1200000.00",
        "CurrencyCode": "USD",
        "Frequency": "None",
        "TargetCompany": "Self"
      }
    ]
  }
}
```

A AWS deriva a estimativa do AWS MRR e retorna as duas entradas em: `GetOpportunity`

```
{
  "Project": {
    "ExpectedContractDuration": { "Term": "Months", "Value": "36" },
    "ExpectedCustomerSpend": [
      {
        "Amount": "5600.00",
        "CurrencyCode": "USD",
        "Frequency": "Monthly",
        "TargetCompany": "AWS"
      },
      {
        "Amount": "1200000.00",
        "CurrencyCode": "USD",
        "Frequency": "None",
        "TargetCompany": "Self"
      }
    ]
  }
}
```

No exemplo acima, a `ExpectedCustomerSpend` primeira matriz contém a estimativa do AWS MRR (`TargetCompany: "AWS"`,`Frequency: "Monthly"`) e a segunda matriz é o valor total do contrato do parceiro (`TargetCompany: "Self"`,`Frequency: "None"`).

#### Regras de validação do TCV
<a name="tcv-validation-rules"></a>

Todos os erros de validação do TCV retornam o código de erro `INVALID_VALUE` com`Reason: "BUSINESS_VALIDATION_FAILED"`. O fator distintivo é o `FieldName` e`Message`:


| Condição | Campo | Mensagem | 
| --- | --- | --- | 
| Entrada automática sem ExpectedContractDuration | project.expectedContractDuration | ExpectedContractDuration é necessário quando uma entrada Self está presente | 
| ExpectedContractDurationsem entrada automática (somente para criar) | project.expectedCustomerSpend | Uma entrada automática é necessária quando ExpectedContractDuration está presente | 
| Várias entradas próprias | project.expectedCustomerSpend | Somente uma entrada automática é permitida | 
| Inválido TargetCompany quando a duração está presente | project.expectedCustomerSpend.targetCompany | TargetCompany deve ser 'AWS' ou 'Self' | 
| Incompatibilidade de moedas entre AWS e Self | project.expectedCustomerSpend.currencyCode | CurrencyCode deve corresponder entre as entradas | 
| Entrada automática \+ EstimationUrl em conjunto | project.expectedCustomerSpend.estimationUrl | Entrada automática e EstimationUrl não pode coexistir | 

**nota**  
Ativado`UpdateOpportunity`, se `ExpectedContractDuration` estiver presente sem uma entrada Self, mas o valor do negócio do parceiro existir no armazenamento, o sistema reconstrói a entrada Self automaticamente — nenhum erro é gerado.

#### Alternando entre TCV e MRR manual
<a name="switching-tcv-manual"></a>

Para voltar do modo TCV para o MRR manual, `ExpectedContractDuration` defina explicitamente `null` e forneça somente uma entrada: `AWS`

```
{
  "Project": {
    "ExpectedContractDuration": null,
    "ExpectedCustomerSpend": [
      {
        "Amount": "8000.00",
        "CurrencyCode": "USD",
        "Frequency": "Monthly",
        "TargetCompany": "AWS"
      }
    ]
  }
}
```

**nota**  
Omitir `ExpectedContractDuration` da carga útil (não enviar o campo) significa “sem alteração” — os dados existentes do TCV são preservados. Enviar explicitamente `null` significa “limpar o modo TCV”.

#### URLs da calculadora de preços e TCV
<a name="tcv-and-estimation-url"></a>

Se um parceiro fornecer uma `Self` entrada (modo TCV) e uma`EstimationUrl`, a API retornará um erro de validação. Entrada automática e EstimationUrl não pode coexistir na mesma solicitação.

### Fornecendo estimativas manuais de MRR
<a name="manual-mrr-estimates"></a>

Os parceiros podem inserir manualmente as estimativas de MRR usando o `Project.ExpectedCustomerSpend[].Amount` campo:

**nota**  
O `CurrencyCode` campo aceita `USD` `EUR` e. Se a partição da AWS for `aws-eusc` (AWS European Sovereign Cloud), o código da moeda deverá ser`EUR`.

```
{
  "Project": {
    "ExpectedCustomerSpend": [
      {
        "Amount": "25000.00",
        "CurrencyCode": "USD",
        "Frequency": "Monthly",
        "TargetCompany": "AWS"
      }
    ]
  }
}
```

Esse campo está disponível para todos os parceiros e pode ser usado para aceitar previsões de IA definindo o mesmo valor ou Partner-provided substituindo por valores.

### Fornecendo URLs da calculadora de preços
<a name="pricing-calculator-urls"></a>

Opcionalmente, os parceiros podem fornecer URLs da Calculadora de AWS Preços por meio do `Project.ExpectedCustomerSpend[].EstimationUrl` campo para importar automaticamente as configurações do serviço e receber informações aprimoradas, incluindo indicadores de elegibilidade do MAP, recomendações de otimização e análise de economia de custos.

```
{
  "Project": {
    "ExpectedCustomerSpend": [
      {
        "Amount": null,
        "CurrencyCode": "USD",
        "EstimationUrl": "https://calculator.aws/#/estimate?id=abc123",
        "Frequency": "Monthly",
        "TargetCompany": "AWS"
      }
    ]
  }
}
```

Quando um URL válido da Calculadora de Preços é fornecido, o sistema calcula automaticamente o valor do MRR a partir da configuração da calculadora e preenche o campo Valor e os dados detalhados de gastos em nível de produto na fonte do Parceiro de. `AwsProductsSpendInsightsBySource` Os parceiros devem definir o valor como nulo ao fornecer um EstimationUrl - o sistema o calculará automaticamente.

URLs em formatos inválidos e URLs que não puderem ser resolvidos serão rejeitados com um. `ValidationException`

### Como quantidade e EstimationUrl trabalho em conjunto
<a name="amount-estimationurl-interaction"></a>

Você tem flexibilidade na forma como fornece estimativas mensais de receita recorrente (MRR) para oportunidades. A API lida de forma inteligente com várias combinações de valores manuais e URLs da Calculadora de AWS Preços para garantir que suas oportunidades sempre possam ser criadas com sucesso.

#### Usando apenas uma quantidade manual
<a name="using-manual-amount"></a>

Quando você fornece somente o campo Valor, a API salva sua estimativa manual e define EstimationUrl como nula. Essa abordagem é útil quando você tem uma estimativa de MRR específica a partir de conversas com clientes ou de seus próprios cálculos.

Exemplo de solicitação:

```
{
    "Project": {
        "ExpectedCustomerSpend": [{
            "Amount": "25000.00",
            "CurrencyCode": "USD",
            "Frequency": "Monthly",
            "TargetCompany": "AWS"
        }]
    }
}
```

#### Usando apenas um AWS URL da calculadora de preços
<a name="using-calculator-url"></a>

Quando você fornece somente o EstimationUrl campo:
+ **URL válido** — A API calcula o valor do MRR a partir da configuração da calculadora e salva o URL e o valor calculado.
+ **URL inválida** — A API retorna um ValidationException com detalhes sobre por que a URL é inválida.

Exemplo de solicitação:

```
{
    "Project": {
        "ExpectedCustomerSpend": [{
            "EstimationUrl": "https://calculator.aws/#/estimate?id=abc123",
            "CurrencyCode": "USD",
            "Frequency": "Monthly",
            "TargetCompany": "AWS"
        }]
    }
}
```

Exemplo de resposta de erro (URL inválido):

```
{
    "ErrorList": [{
        "Code": "INVALID_VALUE",
        "FieldName": "project.expectedCustomerSpend.estimationUrl",
        "Message": "Invalid Estimation URL: https://calculator.aws/#/estimate?id=invalid"
    }],
    "Message": "The provided Estimation URL is invalid",
    "Reason": "INVALID_VALUE"
}
```

#### Fornecendo tanto o valor quanto EstimationUrl
<a name="providing-both-fields"></a>

Quando você fornece os dois campos, a API prioriza a garantia de que sua oportunidade seja criada com sucesso:

1. Se ambos os valores permanecerem inalterados — nenhuma atualização será executada nesses campos

1. O URL é inválido — a API salva o valor fornecido e o define EstimationUrl como nulo, permitindo que a criação da oportunidade continue.

1. O URL é válido e o valor calculado corresponde ao valor fornecido — Ambos os valores são salvos.

1. O URL é válido, mas o valor calculado não corresponde ao valor fornecido — a API salva o valor fornecido e o define EstimationUrl como nulo sem retornar um erro.

**nota**  
Quando os dois valores não coincidem com os existentes, a API primeiro tenta calcular o valor a partir do URL. Seu valor fornecido manualmente sempre tem precedência quando há um problema de incompatibilidade ou validação.

**Principal benefício: URLs inválidos nunca bloqueiam a criação de oportunidades**

Essa abordagem garante que URLs inválidos ou inacessíveis da Calculadora de AWS Preços nunca impeçam você de criar ou atualizar oportunidades. Seu valor fornecido manualmente sempre tem precedência quando há um problema de conflito ou validação, dando a você controle total sobre os dados da oportunidade.

## Entendendo o modelo AwsOpportunitySummary de dados estendido
<a name="extended-awsopportunitysummary"></a>

Esta seção descreve a estrutura de resposta retornada pela ação `GetAwsOpportunitySummary` da API.

**nota**  
AI-forecasted O MRR é devolvido em `Project.ExpectedCustomerSpend[].Amount`

A ação da `GetAwsOpportunitySummary` API retorna insights de dimensionamento de negócios por meio da nova `Insights.AwsProductsSpendInsightsBySource` estrutura que fornece uma análise abrangente de gastos com atribuição de origem.

### Separação de fontes:AWS versus dados de parceiros
<a name="source-separation"></a>

O Deal Sizing separa os insights por fonte para fornecer transparência e evitar a dupla contagem:
+ **AWS Fonte:** recomendações de produtos de IA da AWS
+ **Fonte do parceiro:** dados de gastos e detalhes do produto importados dos URLs da calculadora de preços fornecidos pelo parceiro

Essa separação permite que os parceiros:

1. Compare suas estimativas com as AWS recomendações

1. Valide suas suposições de dimensionamento

1. Evite inflar os totais combinando acidentalmente as duas fontes

1. Mantenha a visibilidade da proveniência dos dados

### Visão geral da estrutura
<a name="structure-overview"></a>

```
{
  "Insights": {
    "AwsProductsSpendInsightsBySource": {
      "<AWS | Partner>": {
        "CurrencyCode": "string",
        "Frequency": "string",
        "TotalAmount": "string",
        "TotalOptimizedAmount": "string",
        "TotalPotentialSavingsAmount": "string",
        "TotalAmountByCategory": { },
        "AwsProducts": [ ]
      }
    }
  },
  "Project": {
    "ExpectedCustomerSpend": [ ]
  },
  "RelatedEntityIds": {
    "AwsProducts": [ ]
  }
}
```

### Referência de campo
<a name="field-reference"></a>

#### AwsProductsSpendInsightsBySource Mapa
<a name="awsproductsspendinsightsbysource-map"></a>

Source-separated gaste insights que forneçam análises independentes para AWS recomendações e estimativas de parceiros.

O `Insights.AwsProductsSpendInsightsBySource` campo é um mapa contendo até duas chaves:


| Chave | Tipo | Description | 
| --- | --- | --- | 
| AWS | AwsProductsSpendInsights | AI-generated insights, incluindo produtos recomendados da AWS | 
| Parceiro | AwsProductsSpendInsights | Partner-sourced insights derivados dos URLs da calculadora de preços, incluindo otimizações e custos detalhados do serviço | 

**nota**  
Somente fontes com dados disponíveis são incluídas na resposta. As novas oportunidades geralmente começam com apenas a AWS fonte preenchida.

#### AwsProductInsights Objeto
<a name="awsproductinsights-object"></a>

Análise abrangente de gastos para uma única fonte (AWS ou parceiro), incluindo valores totais, economias de otimização, detalhamentos de categorias de programas e insights detalhados em nível de produto.

Cada objeto de origem contém os seguintes campos:


| Campo | Tipo | Description | 
| --- | --- | --- | 
| CurrencyCode | string | Código monetário ISO 4217. Os valores suportados são “USD” e “EUR”. | 
| Frequência | string | Indica com que frequência se espera que o cliente gaste o valor projetado. Somente o valor Mensal é permitido para o campo Frequência, representando o gasto mensal recorrente. | 
| TotalAmount | string | Gasto total estimado para essa fonte antes das otimizações | 
| TotalOptimizedAmount | string | Gasto total estimado após a aplicação das otimizações recomendadas | 
| TotalPotentialSavingsAmount | string | Economias quantificadas alcançáveis por meio da implementação de otimizações | 
| TotalAmountByCategory | objeto | Valores de gastos mapeados para AWS programas e caminhos de modernização | 
| AwsProducts | array | Product-level detalhes, incluindo recomendações de custos e otimização | 

**Limitação do estado atual:** Para a AWS fonte, TotalAmount, TotalOptimizedAmount, e TotalPotentialSavingsAmount pode ser omitida quando as recomendações de gastos por produto não estão disponíveis. Os parceiros devem consultar `Project.ExpectedCustomerSpend[].Amount` a estimativa total de AWS MRR nesses casos.

#### TotalAmountByCategory Objeto
<a name="totalamountbycategory-object"></a>

Os gastos do Maps são equivalentes a AWS programas e iniciativas estratégicas:


| Chave de categoria | Description | 
| --- | --- | 
| Elegível para MA | Gastos em serviços elegíveis para financiamento do Migration Acceleration Program | 
| Elegível para CA | Serviços de suporte à alocação e rastreamento de custos | 
| Pathway - Mude para a nuvem nativa | Serviços alinhados com a modernização nativa da nuvem | 
| Pathway - Mude para Managed Services | Serviços de apoio à adoção de serviços gerenciados | 
| Pathway - Mude para o código aberto | Alternativas de serviço de código aberto | 
| Pathway - Mova para contêineres | Container-based opções de serviço | 
| Pathway - Mude para o modo sem servidor | Serviços de computação sem servidor | 
| Pathway - Migre para bancos de dados | Serviços de modernização de banco de dados | 
| Pathway - Mude para a análise | Serviços de análise e processamento de dados | 

**nota**  
Os valores totais das categorias podem exceder TotalAmount porque os produtos individuais podem pertencer a várias categorias.

#### AwsProducts Matriz
<a name="awsproducts-array"></a>

Lista de AWS serviços com indicadores de elegibilidade do programa (MAP, caminhos de modernização), estimativas de custo e recomendações de otimização.

Cada objeto do produto contém:


| Campo | Tipo | Obrigatório | Descrição | 
| --- | --- | --- | --- | 
| ProductCode | string | Sim | AWS Identificador de produto do Partner Central usado para associação de oportunidades | 
| ServiceCode | string | Não | Código de serviço da calculadora de preços (links para o URL original da calculadora) | 
| Categorias | array | Sim | Lista de categorias de programas e caminhos para os quais este produto é elegível | 
| Valor | string | Não | Custo básico do serviço antes das otimizações (pode ser nulo para as recomendações fornecidas)AWS | 
| OptimizedAmount | string | Não | Custo do serviço após a aplicação das otimizações (pode ser nulo para AWS as recomendações fornecidas) | 
| PotentialSavingsAmount | string | Não | Service-specific redução de custos por meio de otimizações (pode ser nula para AWS recomendações fornecidas) | 
| Otimizações | array | Não | Lista de recomendações de otimização específicas para este produto | 

**Tratamento nulo:** para produtos AWS de origem, o valor e os PotentialSavingsAmount campos podem ser nulos quando as recomendações de gastos por produto não estão disponíveis. OptimizedAmount Em `Project.ExpectedCustomerSpend[0].Amount` vez disso, o sistema fornece MRR total por meio de.

#### Objeto de otimização
<a name="optimization-object"></a>

Cada recomendação de otimização contém:


| Campo | Tipo | Description | 
| --- | --- | --- | 
| Description | string | Human-readable explicação da estratégia de otimização | 
| SavingsAmount | string | Economia de custos quantificada alcançável com a implementação dessa otimização | 

### Exemplos
<a name="examples"></a>

#### Exemplo 1:AWS Somente recomendações (estado atual)
<a name="example-aws-recommendations-only"></a>

Este exemplo mostra a resposta típica quando somente recomendações de IA estão disponíveis e os valores de gastos por produto ainda não podem ser recomendados.

```
{
  "Catalog": "AWS",
  "Insights": {
    "AwsProductsSpendInsightsBySource": {
      "AWS": {
        "CurrencyCode": "USD",
        "Frequency": "Monthly",
        "AwsProducts": [
          {
            "ProductCode": "AmazonEC2",
            "Categories": ["MAP Eligible", "Cost Allocation Tagging"],
            "Amount": null,
            "OptimizedAmount": null,
            "PotentialSavingsAmount": null,
            "Optimizations": []
          },
          {
            "ProductCode": "AWSLambda",
            "Categories": ["Cost Allocation Tagging", "Pathway - Move to Cloud Native"],
            "Amount": null,
            "OptimizedAmount": null,
            "PotentialSavingsAmount": null,
            "Optimizations": []
          },
          {
            "ProductCode": "AmazonRDS",
            "Categories": ["MAP Eligible", "Cost Allocation Tagging", "Pathway - Move to Managed Services"],
            "Amount": null,
            "OptimizedAmount": null,
            "PotentialSavingsAmount": null,
            "Optimizations": []
          }
        ]
      }
    }
  },
  "Project": {
    "ExpectedCustomerSpend": [
      {
        "Amount": "28000.00",
        "CurrencyCode": "USD",
        "EstimationUrl": null,
        "Frequency": "Monthly",
        "TargetCompany": "AWS"
      }
    ]
  },
  "RelatedEntityIds": {
    "AwsProducts": [
      "AmazonEC2",
      "AWSLambda",
      "AmazonRDS"
    ]
  }
}
```

**Pontos-chave:** a AWS fonte mostra produtos recomendados com categorias, mas sem quantidades por produto. Estimativa total de MRR disponível via`Project.ExpectedCustomerSpend[].Amount`.

#### Exemplo 2: Importação da calculadora de preços de parceiros
<a name="example-partner-calculator"></a>

Este exemplo mostra insights aprimorados quando um parceiro fornece um URL válido da Calculadora de Preços.

```
{
  "Catalog": "AWS",
  "Insights": {
    "AwsProductsSpendInsightsBySource": {
      "Partner": {
        "CurrencyCode": "USD",
        "Frequency": "Monthly",
        "TotalAmount": "32500.00",
        "TotalOptimizedAmount": "30000.00",
        "TotalPotentialSavingsAmount": "2500.00",
        "TotalAmountByCategory": {
          "MAP Eligible": "22500.00",
          "Cost Allocation Tagging": "32500.00",
          "Pathway - Move to Cloud Native": "5000.00",
          "Pathway - Move to Managed Services": "7500.00"
        },
        "AwsProducts": [
          {
            "ServiceCode": "ec2",
            "Categories": ["MAP Eligible", "Cost Allocation Tagging"],
            "Amount": "15000.00",
            "OptimizedAmount": "13500.00",
            "PotentialSavingsAmount": "1500.00",
            "Optimizations": [
              {
                "Description": "Convert to 3-year reserved instances",
                "SavingsAmount": "1000.00"
              },
              {
                "Description": "Migrate to Graviton-based instances",
                "SavingsAmount": "500.00"
              }
            ]
          },
          {
            "ServiceCode": "lambda",
            "Categories": ["Cost Allocation Tagging", "Pathway - Move to Cloud Native"],
            "Amount": "5000.00",
            "OptimizedAmount": "5000.00",
            "PotentialSavingsAmount": "0.00",
            "Optimizations": []
          },
          {
            "ServiceCode": "AmazonRDS",
            "Categories": ["MAP Eligible", "Cost Allocation Tagging", "Pathway - Move to Managed Services"],
            "Amount": "7500.00",
            "OptimizedAmount": "6500.00",
            "PotentialSavingsAmount": "1000.00",
            "Optimizations": [
              {
                "Description": "Optimize Multi-AZ for dev/test environments",
                "SavingsAmount": "1000.00"
              }
            ]
          },
          {
            "ServiceCode": "AmazonS3",
            "Categories": ["MAP Eligible", "Cost Allocation Tagging"],
            "Amount": "5000.00",
            "OptimizedAmount": "5000.00",
            "PotentialSavingsAmount": "0.00",
            "Optimizations": []
          }
        ]
      }
    }
  },
  "Project": {
    "ExpectedCustomerSpend": [
      {
        "Amount": "32500.00",
        "CurrencyCode": "USD",
        "EstimationUrl": "https://calculator.aws/#/estimate?id=abc123",
        "Frequency": "Monthly",
        "TargetCompany": "AWS"
      }
    ]
  },
  "RelatedEntityIds": {
    "AwsProducts": []
  }
}
```

**Pontos principais:** a fonte do parceiro contém detalhes completos dos gastos com valores por produto. As recomendações de otimização fornecem estratégias práticas de redução de custos. Os detalhamentos das categorias mostram a elegibilidade para o MAP ($22.500 de um total de $32.500). Os produtos incluem ServiceCode links para a configuração da Calculadora de Preços.

#### Exemplo 3: Ambas as fontes presentes (cenário de comparação)
<a name="example-both-sources"></a>

Este exemplo demonstra como as AWS recomendações e as estimativas dos parceiros aparecem juntas, permitindo a comparação.

```
{
  "Catalog": "AWS",
  "Insights": {
    "AwsProductsSpendInsightsBySource": {
      "AWS": {
        "CurrencyCode": "USD",
        "Frequency": "Monthly",
        "AwsProducts": [
          {
            "ProductCode": "AmazonEC2",
            "Categories": ["MAP Eligible", "Cost Allocation Tagging"],
            "Amount": null,
            "OptimizedAmount": null,
            "PotentialSavingsAmount": null,
            "Optimizations": []
          },
          {
            "ProductCode": "AWSLambda",
            "Categories": ["Cost Allocation Tagging", "Pathway - Move to Cloud Native"],
            "Amount": null,
            "OptimizedAmount": null,
            "PotentialSavingsAmount": null,
            "Optimizations": []
          },
          {
            "ProductCode": "EBS",
            "Categories": ["MAP Eligible", "Cost Allocation Tagging"],
            "Amount": null,
            "OptimizedAmount": null,
            "PotentialSavingsAmount": null,
            "Optimizations": []
          },
          {
            "ProductCode": "RDS",
            "Categories": ["MAP Eligible", "Cost Allocation Tagging", "Pathway - Move to Managed Services"],
            "Amount": null,
            "OptimizedAmount": null,
            "PotentialSavingsAmount": null,
            "Optimizations": []
          }
        ]
      },
      "Partner": {
        "CurrencyCode": "USD",
        "Frequency": "Monthly",
        "TotalAmount": "32500.00",
        "TotalOptimizedAmount": "30000.00",
        "TotalPotentialSavingsAmount": "2500.00",
        "TotalAmountByCategory": {
          "MAP Eligible": "22500.00",
          "Cost Allocation Tagging": "32500.00",
          "Pathway - Move to Cloud Native": "5000.00",
          "Pathway - Move to Managed Services": "7500.00"
        },
        "AwsProducts": [
          {
            "ServiceCode": "ec2",
            "Categories": ["MAP Eligible", "Cost Allocation Tagging"],
            "Amount": "15000.00",
            "OptimizedAmount": "13500.00",
            "PotentialSavingsAmount": "1500.00",
            "Optimizations": [
              {
                "Description": "Convert to 3-year reserved instances",
                "SavingsAmount": "1000.00"
              }
            ]
          },
          {
            "ServiceCode": "lambda",
            "Categories": ["Cost Allocation Tagging", "Pathway - Move to Cloud Native"],
            "Amount": "5000.00",
            "OptimizedAmount": "5000.00",
            "PotentialSavingsAmount": "0.00",
            "Optimizations": []
          },
          {
            "ServiceCode": "amazonRDS",
            "Categories": ["MAP Eligible", "Cost Allocation Tagging", "Pathway - Move to Managed Services"],
            "Amount": "7500.00",
            "OptimizedAmount": "6500.00",
            "PotentialSavingsAmount": "1000.00",
            "Optimizations": [
              {
                "Description": "Optimize Multi-AZ for dev/test environments",
                "SavingsAmount": "1000.00"
              }
            ]
          },
          {
            "ServiceCode": "amazonS3",
            "Categories": ["MAP Eligible", "Cost Allocation Tagging"],
            "Amount": "5000.00",
            "OptimizedAmount": "5000.00",
            "PotentialSavingsAmount": "0.00",
            "Optimizations": []
          }
        ]
      }
    }
  },
  "Project": {
    "ExpectedCustomerSpend": [
      {
        "Amount": "28000.00",
        "CurrencyCode": "USD",
        "EstimationUrl": "https://calculator.aws/#/estimate?id=abc123",
        "Frequency": "Monthly",
        "TargetCompany": "AWS"
      }
    ]
  },
  "RelatedEntityIds": {
    "AwsProducts": [
      "AmazonEC2",
      "AWSLambda",
      "EBS",
      "RDS"
    ]
  }
}
```

**Pontos-chave:** Ambas as fontes apresentam:AWS recomendações (total de 28 mil dólares) e calculadora de parceiros (total de 32,5 mil dólares).AWS as recomendações mostram 4 produtos; a calculadora de parceiros mostra 4 produtos (3 sobrepostos). Os parceiros podem comparar AWS as recomendações com suas estimativas detalhadas.AWS total disponível via`Project.ExpectedCustomerSpend[].Amount`.

### Práticas recomendadas
<a name="best-practices"></a>

#### Tratamento de valores nulos
<a name="handling-null-values"></a>

1. **EstimationUrl Campo:** EstimationUrl Espere ser nulo para a maioria dos parceiros. Esse é um comportamento padrão e não deve ser tratado como um erro. Exiba as opções de entrada manual do MRR como o caminho principal.

1. **Categorias ausentes:** se a AWS fonte não TotalAmountByCategory estiver presente, isso indica que as recomendações por produto não estão disponíveis. Os detalhamentos de categorias estão disponíveis para Partner-sourced dados quando os URLs da Calculadora de Preços são fornecidos.

#### Recomendações de otimização
<a name="optimization-recommendations"></a>

1. **Exiba insights acionáveis:** mostre descrições de otimização e valores de economia de forma proeminente para ajudar os parceiros a entender as oportunidades de redução de custos.

1. **Economia agregada:** soma os PotentialSavingsAmount produtos para mostrar o potencial total de otimização.

1. **Priorize por impacto:** classifique as otimizações por SavingsAmount para ajudar os parceiros a se concentrarem nas recomendações de maior impacto.

#### Monitoramento de atualizações
<a name="monitoring-updates"></a>

1. Pesquisa **periódica: faça pesquisas `GetAwsOpportunitySummary` periódicas** (recomendado: a cada 5 minutos) durante os fluxos de trabalho de criação de oportunidades.

1. **Lidar com a geração assíncrona:** os insights de dimensionamento de negócios podem não estar imediatamente disponíveis após a criação da oportunidade. Implemente os estados de carregamento apropriados e a lógica de repetição.

#### Padrões de integração de API
<a name="api-integration-patterns"></a>

1. **Aproveite as integrações existentes:** os parceiros que já estão ligando `GetAwsOpportunitySummary` só precisam consumir campos adicionais na resposta, sem a necessidade de novas chamadas de API.

1. **Degradação elegante:** crie interfaces de usuário para lidar com cenários em que os dados de dimensionamento de negócios ainda não estejam disponíveis ou estejam incompletos.

#### Qualidade e precisão dos dados
<a name="data-quality"></a>

1. **Valide os URLs da calculadora de preços:** certifique-se de que os URLs sejam válidos antes do envio para evitar respostas nulas. EstimationUrl 

1. **Forneça detalhes detalhados de oportunidades:** informações mais completas sobre oportunidades (detalhes do cliente, descrição do projeto, requisitos técnicos) geram recomendações de IA mais precisas.

1. **Analise a variação:** quando as estimativas do parceiro diferirem significativamente das AWS recomendações, analise os detalhes da oportunidade para garantir que todo o contexto relevante seja capturado.