

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á.

# Configuração e autenticação
<a name="setup-authentication"></a>

A configuração e a autenticação com a API do AWS Partner Central envolvem três etapas. Aqui está uma visão geral do processo:

1. Vincule sua conta de AWS Marketplace vendedor ao Partner Central.

1. Configure as permissões usando o IAM.

1. Autentique suas chamadas de API usando o Signature Version 4 (SigV4).

## Vinculando seu Conta da AWS para o Partner Central
<a name="linking-aws-account"></a>

Vincular seu Conta da AWS ao Partner Central é um pré-requisito para usar a API. Para obter mais informações, consulte [Vinculação de contas do AWS Partner Central a contas de AWS Marketplace vendedor](https://docs.aws.amazon.com/partner-central/latest/getting-started/account-linking.html). Você deve entrar no Partner Central com uma conta que tenha permissões de líder de aliança ou administrador de nuvem, navegar até a **Account Linking** seção e seguir as instruções.

## Configurar o IAM
<a name="setting-up-iam"></a>

Para usar a API do AWS Partner Central, você precisará de uma função AWS Identity and Access Management(IAM) ou de um usuário do IAM para começar a fazer chamadas. Para obter mais informações, consulte [Quando eu uso o IAM?](https://docs.aws.amazon.com/IAM/latest/UserGuide/when-to-use-iam.html) . Siga as etapas para [criar funções do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create.html) e [criar um usuário do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_create.html) em seus Conta da AWS guias para isso. Você deve criar esse IAM Role/User na sua conta do Partner Central-linked AWS Marketplace Seller. role/user A criação do IAM não incorre em nenhum custo.

1. Crie um IAM Role/User

   Faça login no Console de gerenciamento da AWS, navegue até o serviço do IAM e siga as etapas para criar uma função do IAM ou um usuário do IAM.

1. Atribuir políticas:

   Anexe políticas gerenciadas ou crie políticas personalizadas conforme necessário. Para modificar ou expandir as permissões, aplique políticas adicionais à função do IAM em vez de copiar e combinar o conteúdo `AWSPartnerCentralOpportunityManagement` com outras permissões. Evite duplicar políticas gerenciadas, pois isso impedirá que você tenha acesso automático aos novos recursos à medida que eles forem lançados, e você precisará atualizar manualmente suas políticas no futuro. Para obter mais detalhes sobre políticas de acesso, consulte a [documentação de controle de acesso](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html).

### Gerenciamento AWS Marketplace ofertas
<a name="managing-marketplace-offers"></a>

Para gerenciar AWS Marketplace ofertas e vinculá-las a oportunidades, os parceiros devem dar permissão à função do IAM para acessar as APIs do catálogo. Certifique-se de role/user que tenha permissões, como `aws-marketplace:ListEntities` `aws-marketplace:SearchAgreements` e.

## Autenticação de chamadas de API
<a name="authenticating-api-calls"></a>

AWS A API do Partner Central usa o Signature Version 4 (SigV4) para autenticação. Veja como implementá-lo:

### Usar o AWS SDK
<a name="using-aws-sdk"></a>

AWS Os SDKs lidam automaticamente com a assinatura de solicitações. Forneça suas AWS credenciais e o SDK fará o resto.

1. Para Java, consulte [Fornecer credenciais temporárias ao AWS SDK](https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/credentials.html) for Java.

1. [Para Python (Boto3), consulte Credenciais.](https://boto3.amazonaws.com/v1/documentation/api/latest/guide/credentials.html)

1. Para JavaScript (Node.js), consulte [Configuração de credenciais em Node.js.](https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/setting-credentials-node.html)

1. Para o.NET, consulte [Resolução de credenciais e perfis](https://docs.aws.amazon.com/sdk-for-net/v3/developer-guide/creds-assign.html).

1. Para outras linguagens de programação e mais exemplos, consulte as [Ferramentas para desenvolver AWS](https://aws.amazon.com/tools/).

### Autenticação sem usar o AWS SDK
<a name="authentication-without-sdk"></a>

Se um AWS SDK não estiver disponível para a linguagem de programação escolhida, a autenticação envolve a criação manual de uma solicitação canônica, a assinatura da solicitação e o tratamento dos tokens da sessão.AWS oferece orientação abrangente para o [uso da assinatura SigV4](https://docs.aws.amazon.com/general/latest/gr/sigv4_signing.html). No entanto, observe que o uso do AWS SDK é recomendado, pois a assinatura manual de solicitações aumenta a complexidade e exige um gerenciamento cuidadoso dos tokens de segurança.

Cada solicitação do protocolo AWSJSON1\_0 DEVE ser enviada para a URL raiz (/) usando o método HTTP “POST” usando os cabeçalhos a seguir.

### Cabeçalhos obrigatórios
<a name="required-headers"></a>

Cada solicitação de API para o protocolo AWSJSON1\_0 DEVE ser enviada para a URL raiz (/) usando o método HTTP “POST” usando os cabeçalhos a seguir.


| Cabeçalho | Obrigatório | Description | 
| --- | --- | --- | 
| Content-Type | true | Esse cabeçalho tem um valor estático deapplication/x-amz-json-1.0. | 
| Content-Length | true | O Content-Length cabeçalho padrão definido pela [RFC 9110 \#section](https://datatracker.ietf.org/doc/html/rfc9110.html#section-8.6) -8.6. | 
| X-Amz-Target | verdadeiro para solicitações | Por exemplo, o valor da operação CreatePartner do serviço PartnerCentralAccount éPartnerCentralAccount.CreatePartner. | 

## Assinando suas chamadas com um agente de usuário personalizado
<a name="signing-your-calls"></a>

Ao fazer solicitações de API ao AWS Partner Central, recomendamos incluir o `X-Amzn-User-Agent` cabeçalho para ajudar a AWS identificar a origem do aplicativo cliente, monitorar o uso e auditar o desempenho.AWS usa esse cabeçalho para distinguir o tipo de aplicativo cliente que está fazendo a chamada e para coletar informações sobre a taxa de sucesso de diferentes implementações de clientes.

### Cabeçalho de agente de usuário personalizado
<a name="custom-user-agent-header"></a>

**Nome do cabeçalho:** `X-Amzn-User-Agent`

**Objetivo:** distingue o tipo de cliente que faz a solicitação da API, categorizando a origem da interação.

**Formato**: `{Integrator}|{Product}`

**Exemplo de valor:** `AWS|AWS Partner CRM Connector`

Incluir esse cabeçalho em cada solicitação AWS permite analisar padrões de solicitação, rastrear integrações e melhorar a experiência de API para diferentes sistemas clientes.

### Usando cabeçalhos personalizados em SDKs
<a name="using-custom-headers"></a>

Para incluir o `X-Amzn-User-Agent` cabeçalho nas chamadas do SDK, você pode modificar o comportamento da solicitação do cliente antes de fazer a chamada à API. Abaixo está um exemplo de API de venda usando o AWS SDK para Python (Boto3):

```
import boto3

# Define service and endpoint details
service_name = "partnercentral-selling"
endpoint_url = "https://partnercentral-selling.us-east-1.api.aws"

# Create a boto3 client for Partner Central
partner_central_client = boto3.client(
service_name=service_name,
='us-east-1',
endpoint_url=endpoint_url
)

# Function to add the custom User-Agent header

def add_version_header(params, **kwargs):
params["headers"]['X-Amzn-User-Agent'] = 'AWS|AWS Partner CRM Connector'

# Register the event to modify the request before the call is made
partner_central_client.meta.events.register(
f'before-call.{service_name}.*', add_version_header
)

# Now, whenever an API call is made using this client, the custom User-Agent header will be included
```

Este exemplo demonstra como registrar um evento no SDK do Boto3 para anexar automaticamente o cabeçalho a cada solicitação de API. `X-Amzn-User-Agent` A mesma abordagem pode ser aplicada a outros AWS SDKs modificando seus respectivos mecanismos de interceptação de solicitações.

**nota**  
O formato do `X-Amzn-User-Agent` cabeçalho foi simplificado. Recomendamos usar o novo formato. O formato anterior (`CompanyName|ProductName|CRMName|ProductVersion`) permanece suportado para compatibilidade com versões anteriores. As integrações existentes continuarão funcionando sem modificações.