

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

# Usando AWS Data Exchange com a API AWS Marketplace de catálogo
<a name="appendices"></a>

Este capítulo contém informações complementares para uso AWS Data Exchange e a API de AWS Marketplace catálogo. O serviço de API de AWS Marketplace catálogo fornece uma interface de API para você, como provedor, acessar programaticamente os recursos de publicação por AWS Marketplace autoatendimento.

A API oferece suporte a uma ampla gama de operações para você visualizar e gerenciar seus produtos. Você pode estender seu pipeline interno de criação ou implantação AWS Marketplace por meio da integração de API para automatizar o processo de atualização do produto. Você também pode criar a própria interface de usuário interna na API para gerenciar seus produtos no AWS Marketplace. 

Você pode usar a API de AWS Marketplace catálogo para atualizar seus AWS Data Exchange produtos. Para visualizar seus produtos, você pode usar as operações da API `ListEntities` e `DescribeEntity`. Para atualizar seu AWS Data Exchange produto, você precisa criar um novo conjunto de alterações, que é o recurso da API de catálogo que representa uma operação assíncrona usada para gerenciar produtos. Para obter mais informações, consulte [Referência da API do catálogo AWS Marketplace](https://docs.aws.amazon.com/marketplace/latest/APIReference/API_Operations_AWS_Marketplace_Catalog_Service.html).

Lembre-se do seguinte ao trabalhar com a API do catálogo:
+ Cada AWS Data Exchange produto é representado na API do catálogo como uma [entidade](https://docs.aws.amazon.com//marketplace-catalog/latest/api-reference/API_Entity.html).
+ AWS Data Exchange os produtos têm `DataProduct` como `EntityType` o.
+ Cada produto pode ter apenas um conjunto de alterações em execução simultânea por vez. Isso significa que você não pode criar um segundo conjunto de alterações até que o primeiro termine de ser executado.

**Topics**
+ [Adicionar conjuntos de dados ao AWS Data Exchange](add-data-sets.md)

# Adicionar conjuntos de dados ao AWS Data Exchange
<a name="add-data-sets"></a>

**nota**  
Os conjuntos de dados adicionados por meio do conjunto de alterações da API do Catálogo do tipo `AddDataSets` são padrão para o método de publicação do produto.

Para adicionar conjuntos de dados ao seu AWS Data Exchange produto, inicie um conjunto de alterações do tipo`AddDataSets`. Para fazer isso, você pode usar a operação da API `StartChangeSet` e especificar o tipo de alteração, o identificador do produto, o tipo de produto e os detalhes, incluindo o nome do recurso da Amazon (ARN) do conjunto de dados.

## Tutorial: Inclusão de novos conjuntos de dados em um produto de dados publicado
<a name="add-data-sets-tutorial"></a>

Este tutorial mostra as etapas detalhadas para adicionar novos conjuntos AWS Data Exchange de dados a um produto publicado. O tutorial tem as seguintes etapas de nível avançado.

**Topics**
+ [Configurar permissões do IAM](#data-set-catalog-iam-permissions)
+ [Acesse a API do AWS Marketplace catálogo](#data-set-access-catalog-api)
+ [Obtenha seu ID do produto no AWS Data Exchange console](#get-data-set-exchange-product-id)
+ [Iniciar uma solicitação de alteração](#start-data-set-change-request)
+ [Verifique o status do seu conjunto de alterações](#check-data-set-change-status)

### Configurar permissões do IAM
<a name="data-set-catalog-iam-permissions"></a>

Antes de começar, você precisa de permissões AWS Identity and Access Management (IAM) para usar a API de AWS Marketplace catálogo. Essas permissões são adicionais às permissões que você precisa para usar AWS Data Exchange.

1. Navegue pelo navegador até o console do IAM e faça login usando um Conta da AWS que possa gerenciar as permissões do IAM.

1. No painel de navegação à esquerda, escolha **Políticas**.

1. Selecione **Criar política**.

1. Selecione a guia **JSON** e forneça as seguintes permissões. Isso fornece acesso total à API do AWS Marketplace Catálogo. Você pode restringir o acesso conforme apropriado para seu caso de uso.

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

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow",
         "Action": [
           "aws-marketplace:CancelChangeSet",
           "aws-marketplace:ListChangeSets",
           "aws-marketplace:DescribeEntity",
           "aws-marketplace:StartChangeSet",
           "aws-marketplace:ListEntities",
           "aws-marketplace:DescribeChangeSet",
           "dataexchange:PublishDataSet"
         ],
         "Resource": "*"
       }
     ]
   }
   ```

------

1. Escolha **Próximo: revisar**.

1. Forneça um nome para a política (por exemplo, **CatalogAPIFullAccess**) e selecione **Criar política**.

1. Ao usar o console do IAM, selecione usuários, grupos ou perfis para anexar a política.

### Acesse a API do AWS Marketplace catálogo
<a name="data-set-access-catalog-api"></a>

Para acessar a API do AWS Marketplace Catálogo, use o seguinte endpoint do cliente HTTP.

```
catalog.marketplace.us-east-1.amazonaws.com
```

### Obtenha seu ID do produto no AWS Data Exchange console
<a name="get-data-set-exchange-product-id"></a>

Antes de usar a API do AWS Marketplace Catálogo para publicar novos conjuntos de dados, obtenha o ID do produto no AWS Data Exchange console. Acesse o **Painel do Produto** e copie o ID do produto para o qual você gostaria de publicar os conjuntos de dados. Você também pode usar a [API do catálogo AWS Marketplace](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/welcome.html) para encontrar o ID do produto, usando a ação da `ListEntities` com o tipo de entidade **DataProduct@1.0**.

### Iniciar uma solicitação de alteração
<a name="start-data-set-change-request"></a>

**Para iniciar uma solicitação de alteração para adicionar um conjunto de dados ao produto de teste**

1. Copie o ID da entidade obtido seguindo as instruções na [Obtenha seu ID do produto no AWS Data Exchange console](#get-data-set-exchange-product-id).

1. Faça uma solicitação `StartChangeSet` com um tipo de alteração `AddDataSets`.

**nota**  
Para obter informações sobre como trabalhar com conjuntos de alterações na API do AWS Marketplace Catalog, consulte Como [trabalhar com conjuntos de alterações](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/welcome.html#working-with-change-sets). Para obter mais informações sobre como trabalhar com o identificador de entidades, consulte [Identificador](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/welcome.html#identifier).

**Exemplo de solicitação**

```
https://catalog.marketplace.us-east-1.amazonaws.com/StartChangeSet
```

**Exemplo de corpo da solicitação**

```
{
    "Catalog": "AWSMarketplace",
    "ChangeSetName": "Adding Data Set to my test Data Product",
    "ChangeSet": [
        {
            "ChangeType": "AddDataSets",
            "Entity": {
                "Identifier": "entity-id@1",
                "Type": "DataProduct@1.0"
            },
            "Details": "{ \"DataSets\": [ { \"Arn\": \"data-set-arn\" } ] }"
        }
    ]
}
```

**Exemplo de resposta**

```
{
  "ChangeSetId": "cs-bnEXAMPLE4mkz9oh",
  "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:account-id:AWSMarketplace/ChangeSet/cs-bnEXAMPLE4mkz9oh"
}
```

### Verifique o status do seu conjunto de alterações
<a name="check-data-set-change-status"></a>

Após usar a operação de API `StartChangeSet` para iniciar a solicitação de mudança, você poderá usar a operação `DescribeChangeSet` para verificar seu status. Forneça o ID do conjunto de alterações retornado na resposta da API `StartChangeSet`.

**Exemplo de solicitação**

```
https://catalog.marketplace.us-east-1.amazonaws.com/DescribeChangeSet?catalog=AWSMarketplace&changeSetId=cs-bnEXAMPLE4mkz9oh
```

**Exemplo de corpo da solicitação**

```
{
"changeSetId":"cs-bnEXAMPLE4mkz9oh"
}
```

**Exemplo de resposta**

```
{
    "ChangeSetId": "cs-bnEXAMPLE4mkz9oh",
    "ChangeSetArn": "arn:aws:aws-marketplace:us-east-1:account-id:AWSMarketplace/ChangeSet/cs-bnEXAMPLE4mkz9oh",
    "ChangeSetName": "Adding Data Set to my test Data Product",
    "StartTime": "2018-09-20T19:45:03.115+0000",
    "EndTime": "2018-09-20T19:48:12.517+0000",
    "Status": "SUCCEEDED",
    "FailureDescription": null,
    "ChangeSet": [
        {
            "ChangeType": "AddDataSets",
            "Entity": {
                "Type": "DataProduct@1.0",
                "Identifier": "entity-id@1"
            },
            "ErrorList": []
        }
    ]
}
```

## AddDataSets exceções
<a name="catalog-exceptions-data-sets"></a>

As seguintes exceções podem ocorrer quando você usa a API de AWS Marketplace catálogo com AWS Data Exchange:

**DATA\$1SET\$1NOT\$1FOUND**  
Isso acontece quando o conjunto de dados solicitado não foi encontrado. Para resolver esse problema, verifique se não há um erro de digitação no ARN do conjunto de dados e se Conta da AWS você é o proprietário do conjunto de dados e tente novamente.

**INVALID\$1INPUT**  
A solicitação não pôde ser processada devido a uma entrada inválida. Para resolver esse problema, verifique se há erros de digitação na solicitação e se o produto excede o número máximo de conjuntos de dados permitidos.

**DATA\$1SET\$1ALREADY\$1PUBLISHED**  
Isso acontece quando o conjunto de dados já foi adicionado anteriormente ao produto.

**DATA\$1SET\$1DUPLICATE\$1PROVIDED**  
 Isso acontece quando o mesmo conjunto de dados é fornecido mais de uma vez na solicitação.