

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

# Enviando e recebendo mensagens AS2
<a name="send-as2-messages"></a>

Esta seção descreve os processos para enviar e receber mensagens AS2. Ele também fornece detalhes sobre nomes de arquivos e locais associados às mensagens AS2.

A tabela a seguir lista os algoritmos de criptografia disponíveis para mensagens AS2 e quando você pode usá-los.


| Algoritmo de criptografia | HTTP | HTTPS | Observações | 
| --- |--- |--- |--- |
| AES128\_CBC | Sim | Sim |  | 
| AES192\_CBC | Sim | Sim |  | 
| AES256\_CBC | Sim | Sim |  | 
| DES\_EDE3\_CBC | Sim | Sim | Use esse algoritmo somente se precisar oferecer suporte a um cliente antigo que o exija, pois é um algoritmo de criptografia fraco. | 
| NONE | Não | Sim | Se você estiver enviando mensagens para um servidor Transfer Family, só poderá selecionar NONE se estiver usando um Application Load Balancer (ALB). | 

**Topics**
+ [Processo de recebimento de mensagens AS2](#as2-inbound-process)
+ [Enviando e recebendo mensagens AS2 por HTTPS](#as2-https-process)
+ [Transferindo arquivos usando um conector AS2](#transfer-as2-connectors)
+ [Nomes e localizações dos arquivos](#file-names-as2)
+ [Códigos de status](#status-codes)
+ [Arquivos JSON de amostra](#file-as2-json)

## Processo de recebimento de mensagens AS2
<a name="as2-inbound-process"></a>

O processo de entrada é definido como uma mensagem ou arquivo que está sendo transferido para o seu AWS Transfer Family servidor. A sequência das mensagens de entrada é a seguinte:

1. Um processo administrativo ou automatizado inicia uma Transferência de Arquivos AS2 no servidor AS2 remoto do parceiro.

1. O servidor AS2 remoto do parceiro assina e criptografa o conteúdo do arquivo e, em seguida, envia uma solicitação HTTP POST para um endpoint de entrada AS2 hospedado no Transfer Family.

1. Usando os valores configurados para o servidor, parceiros, certificados e contrato, o Transfer Family descriptografa e verifica a carga do AS2. O conteúdo do arquivo é armazenado no armazenamento de arquivos configurado do Amazon S3.

1. A resposta MDN assinada é retornada em linha com a resposta HTTP ou de forma assíncrona por meio de uma solicitação HTTP POST separada para o servidor de origem.

1. Uma trilha de auditoria é escrita para a Amazon CloudWatch com detalhes sobre a troca.

1. O arquivo descriptografado está disponível em uma pasta chamada `inbox/processed`.

![Diagrama que mostra a sequência de processamento das mensagens recebidas.](http://docs.aws.amazon.com/pt_br/transfer/latest/userguide/images/as2-architecture-inbound.png)


## Enviando e recebendo mensagens AS2 por HTTPS
<a name="as2-https-process"></a>

Esta seção descreve como configurar um servidor Transfer Family que usa o protocolo AS2 para enviar e receber mensagens por HTTPS.

**Topics**
+ [Envie mensagens AS2 por HTTPS](#send-https)
+ [Receba mensagens AS2 por HTTPS](#receive-https)

### Envie mensagens AS2 por HTTPS
<a name="send-https"></a>

Para enviar mensagens AS2 usando HTTPS, crie um conector com as seguintes informações:
+ Para o URL, especifique um URL HTTPS
+ Para o algoritmo de criptografia, selecione qualquer um dos algoritmos disponíveis.
**nota**  
 Para enviar mensagens para um servidor Transfer Family sem usar criptografia (ou seja, você seleciona o algoritmo `NONE` de criptografia), você deve usar um Application Load Balancer (ALB).
+ Forneça os valores restantes para o conector, conforme descrito em [Configurar conectores AS2](configure-as2-connector.md).

### Receba mensagens AS2 por HTTPS
<a name="receive-https"></a>

 AWS Transfer Family Atualmente, os servidores AS2 fornecem apenas transporte HTTP pela porta 5080. No entanto, você pode encerrar o TLS em um balanceador de carga de rede ou aplicativo na frente do endpoint VPC do servidor Transfer Family usando uma porta e um certificado de sua escolha. Com essa abordagem, você pode fazer com que as mensagens AS2 recebidas usem HTTPS.

**Pré-requisitos**
+ O VPC deve estar no mesmo Região da AWS servidor do Transfer Family.
+ As sub-redes da sua VPC devem estar dentro das zonas de disponibilidade nas quais você deseja usar o servidor.
**nota**  
Cada servidor Transfer Family pode suportar até três zonas de disponibilidade.
+ Aloque até três endereços IP Elastic na mesma região do seu servidor. Ou você pode optar por trazer seu próprio intervalo de endereços IP (BYOIP).
**nota**  
O número de endereços IP elásticos deve corresponder ao número de zonas de disponibilidade que você usa com os endpoints do servidor.

Você pode configurar um Network Load Balance (NLB) ou um Application Load Balancer (ALB). A tabela a seguir lista os prós e os contras de cada abordagem.

A tabela abaixo fornece as diferenças nos recursos quando você usa um NLB versus um ALB para encerrar o TLS.


| Recurso | Network Load Balancer (NLB) | Application Load Balancer (ALB) | 
| --- | --- | --- | 
| Latência | Menor latência à medida que opera na camada de rede. | Maior latência à medida que opera na camada do aplicativo. | 
| Compatibilidade com IP estático | Pode anexar endereços IP elásticos que podem ser estáticos. | Não é possível anexar endereços IP elásticos: fornece um domínio cujos endereços IP subjacentes podem mudar. | 
| Roteamento avançado | Não suporta roteamento avançado. | Suporta roteamento avançado. Pode injetar o `X-Forwarded-Proto` cabeçalho necessário para AS2 sem criptografia.<br />Esse cabeçalho está descrito [X-Forwarded-Proto](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-Proto)no site [developer.mozilla.org](https://developer.mozilla.org/). | 
| TLS/SSL rescisão | Suporta TLS/SSL rescisão | Suporta TLS/SSL rescisão | 
| TLS mútua (mTLS) | Atualmente, o Transfer Family não suporta o uso de um NLB para mTLS | Support para mTLS | 

------
#### [ Configure NLB ]

Este procedimento descreve como configurar um Network Load Balancer (NLB) voltado para a Internet em sua VPC.<a name="create-nlb-AS2"></a>

**Para criar um Network Load Balancer e definir o endpoint da VPC do servidor como o destino do balanceador de carga**

1. Abra o console do Amazon Elastic Compute Cloud em [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. No painel de navegação, escolha **Balanceadores de carga** e, em seguida, escolha **Criar balanceador de carga**.

1. Em **Network Load Balancer**, escolha **Criar**.

1. Na seção **Configurações básicas**, insira as seguintes informações:
   + Em **Nome**, insira um nome descritivo para o balanceador de carga.
   + Para **Esquema**, escolha **Internet-facing**.
   + Em **Tipo de endereço IP**, selecione **IPv4**.

1. Na seção **Mapeamento de rede**, insira as seguintes informações:
   + Em **VPC**, escolha a nuvem privada virtual (VPC) que você criou.
   + Em **Mapeamentos**, escolha as zonas de disponibilidade associadas às sub-redes públicas que estão disponíveis na mesma VPC que você usa com os endpoints do servidor.
   + Para o **endereço IPv4** de cada sub-rede, escolha um dos endereços IP elásticos alocados.

1. Na seção **Receptores e roteamento**, insira as seguintes informações:
   + Para **Protocolos**, escolha **TLS**.
   + Em **Porta**, insira **5080**.
   + Em **Ação padrão**, escolha **Criar grupo de destino**. Para obter detalhes sobre a criação de um novo grupo-alvo, consulte [Para criar um grupo de destino](#create-target-group).

   Depois de criar um grupo-alvo, insira seu nome no campo **Ação padrão**.

1. Na seção **Configurações do ouvinte seguro**, escolha seu certificado na área ** SSL/TLS Certificado padrão**.

1. Escolha **Criar balanceador de carga** para criar seu NLB.

1. (Opcional, mas recomendado) Ative os logs de acesso do Network Load Balancer para manter uma trilha de auditoria completa, conforme descrito em [Logs de acesso do Network Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-access-logs.html).

   Recomendamos esta etapa porque a conexão TLS é encerrada no NLB. Portanto, o endereço IP de origem refletido nos grupos de CloudWatch log AS2 do Transfer Family é o endereço IP privado do NLB, em vez do endereço IP externo do seu parceiro comercial.

------
#### [ Configure ALB ]

Este procedimento descreve como configurar um Application Load Balancer (ALB) em sua VPC.<a name="create-alb-AS2"></a>

**Para criar um Application Load Balancer e definir o VPC endpoint do servidor como destino do balanceador de carga**

1. Abra o console do Amazon Elastic Compute Cloud em [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. No painel de navegação, escolha **Balanceadores de carga** e, em seguida, escolha **Criar balanceador de carga**.

1. Em **Application Load Balancer**, escolha **Create** (Criar).

1. No console do ALB, crie um novo ouvinte HTTP na porta 443 (HTTPS).

1. (Opcional). Se você quiser configurar a autenticação mútua (mTLS), defina as configurações de segurança e um armazenamento confiável.

   1. Anexe seu SSL/TLS certificado ao ouvinte.

   1. Em **Tratamento de certificados do cliente**, selecione **Autenticação mútua (mTLS)**.

   1. Escolha **Verificar com um repositório confiável**.

   1. Em **Configurações avançadas do mTLS**, escolha ou crie um repositório confiável fazendo o upload de seus certificados CA.

1. Crie um novo grupo-alvo e adicione os endereços IP privados dos endpoints do servidor Transfer Family AS2 como destinos na porta 5080. Para obter detalhes sobre a criação de um novo grupo-alvo, consulte [Para criar um grupo de destino](#create-target-group).

1. Configure verificações de saúde para que o grupo-alvo use o protocolo HTTP na porta 5080.

1. Crie uma nova regra para encaminhar o tráfego HTTPS do ouvinte para o grupo-alvo.

1. Configure o ouvinte para usar seu SSL/TLS certificado.

------

Depois de configurar o balanceador de carga, os clientes se comunicam com o balanceador de carga por meio do receptor de porta personalizado. Em seguida, o balanceador de carga se comunica com o servidor pela porta 5080.<a name="create-target-group"></a>

**Para criar um grupo de destino**

1. Depois de escolher **Criar grupo-alvo** no procedimento anterior, você será direcionado para a página **Especificar detalhes do grupo** de destino para um novo grupo-alvo.

1.  Na seção **Configurações básicas**, insira as seguintes informações.
   + Em **Escolher um tipo de destino**, escolha **Endereços IP**.
   + Em **Nome do grupo de destino**, insira um nome para o grupo de destino.
   + Para **Protocolo**, sua seleção depende de você estar usando um ALB ou um NLB.
     + **Para um Network Load Balancer (NLB), escolha TCP**
     + **Para um Application Load Balancer (ALB), escolha HTTP**
   + Em **Porta**, insira **5080**. 
   + Em **Tipo de endereço IP**, selecione **IPv4**.
   + Em **VPC**, escolha a VPC criada para o servidor Transfer Family AS2.

1. <a name="vpc-register-targets"></a>Na seção **Verificações de saúde**, escolha o **protocolo de verificação de saúde**.
   + **Para um ALB, escolha HTTP**
   + **Para um NLB, escolha TCP**

1. <a name="vpc-add-to-list"></a>Escolha **Próximo**.

1. Na página **Registrar alvos**, insira as seguintes informações:
   + Em **Rede**, confirme se a VPC que você criou para o servidor Transfer Family AS2 foi especificada.
   + Para o **endereço IPv4**, insira o endereço IPv4 privado dos endpoints do servidor Transfer Family AS2.

      Se você tiver mais de um endpoint para seu servidor, escolha **Adicionar endereço IPv4** para adicionar outra linha para inserir outro endereço IPv4. Repita esse processo até inserir os endereços IP privados de todos os endpoints do seu servidor.
   + Verifique se as **portas** estão definidas como **5080**.
   + Escolha **Incluir como pendente abaixo** para adicionar suas entradas à seção **Revisar metas**.

1. Na seção **Revisar alvos**, revise seus alvos IP.

1. Escolha **Criar grupo-alvo** e, em seguida, volte ao procedimento anterior para criar seu NLB e insira o novo grupo-alvo onde indicado.

**Teste o acesso ao servidor a partir de um endereço IP elástico**

Conecte-se ao servidor pela porta personalizada usando um endereço IP elástico ou o nome DNS do Network Load Balancer.

**Importante**  
Gerencie o acesso ao seu servidor a partir de endereços IP do cliente usando as [listas de controle de acesso à rede (ACL da rede)](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-network-acls.html) para as sub-redes configuradas no balanceador de carga. As permissões da Network ACL são definidas no nível da sub-rede, portanto, as regras se aplicam a todos os recursos que usam a sub-rede. Não é possível controlar o acesso de endereços IP de clientes usando grupos de segurança, porque o tipo de destino do balanceador de carga é definido como **endereços IP** em vez de **Instâncias**. Portanto, o balanceador de carga não preserva endereços IP de origem. Se as [verificações de integridade do Network Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/target-group-health-checks.html) falharem, isso significa que o balanceador de carga não pode se conectar ao endpoint do servidor. Para solucionar esse problema, verifique o seguinte:  
Confirme se o [grupo de segurança associado ao endpoint](https://aws.amazon.com/premiumsupport/knowledge-center/sftp-enable-elastic-ip-custom-port/) do servidor permite conexões de entrada das sub-redes configuradas no balanceador de carga. O balanceador de carga deve ser capaz de se conectar ao endpoint do servidor pela porta 5080.
Confirme se o **estado** do servidor está **online**.

## Transferindo arquivos usando um conector AS2
<a name="transfer-as2-connectors"></a>

Os conectores AS2 estabelecem um relacionamento entre parceiros comerciais para transferências de mensagens AS2 de um servidor Transfer Family para um destino externo de propriedade do parceiro.

Você pode usar o Transfer Family para enviar mensagens AS2 referenciando o ID do conector e os caminhos para os arquivos, conforme ilustrado no seguinte comando `start-file-transfer` AWS Command Line Interface ()AWS CLI:

```
aws transfer start-file-transfer --connector-id c-{{1234567890abcdef0}} \
--send-file-paths "/amzn-s3-demo-source-bucket{{/myfile1.txt}}" "/amzn-s3-demo-source-bucket{{/myfile2.txt}}"
```

Para obter detalhes dos conectores, execute o seguinte comando:

```
aws transfer list-connectors
```

O comando `list-connectors` retorna os IDs do conector, os URLs e nomes do recurso da Amazon (ARNs) dos seus conectores.

Para retornar as propriedades de um conector específico, execute o comando a seguir com o ID que você deseja usar:

```
aws transfer describe-connector --connector-id {{your-connector-id}}
```

O comando `describe-connector` retorna todas as propriedades do conector, incluindo URL, funções, perfis, avisos de disposição de mensagens (MDNs), tags e métricas de monitoramento.

Você pode confirmar que o parceiro recebeu os arquivos com êxito visualizando os arquivos JSON e MDN. Esses arquivos são nomeados de acordo com as convenções descritas em [Nomes e localizações dos arquivos](#file-names-as2). Se você configurou uma função de registro ao criar o conector, também poderá verificar seus CloudWatch registros quanto ao status das mensagens AS2.

Para ver os detalhes do conector AS2, consulte [Exibir detalhes do conector AS2](configure-as2-connector.md#connectors-view-info). Para obter mais informações sobre como criar conectores AS2, consulte [Configurar conectores AS2](configure-as2-connector.md).

**Para enviar uma mensagem de saída AS2**

O processo de saída é definido como uma mensagem ou arquivo enviado AWS para um cliente ou serviço externo. A sequência das mensagens de saída é a seguinte:

1. Um administrador chama o comando `start-file-transfer` AWS Command Line Interface (AWS CLI) ou a operação `StartFileTransfer` da API. Essa operação faz referência a uma configuração `connector`.

1. O Transfer Family detecta uma nova solicitação de arquivo e localiza o arquivo. O arquivo é compactado, assinado e criptografado. 

1. Um cliente HTTP de transferência executa uma solicitação HTTP POST para transmitir a carga para o servidor AS2 do parceiro. 

1. O processo retorna a resposta MDN assinada, em linha com a resposta HTTP (MDN síncrona ou assíncrona).

1. À medida que o arquivo se move entre os diferentes estágios de transmissão, o processo entrega o recibo da resposta do MDN e os detalhes do processamento ao cliente. 

1. O servidor AS2 remoto disponibiliza o arquivo descriptografado e verificado para o administrador parceiro.

![Diagrama que mostra a sequência de processamento das mensagens enviadas.](http://docs.aws.amazon.com/pt_br/transfer/latest/userguide/images/as2-architecture-outbound.png)


O processamento AS2 suporta muitos dos protocolos RFC 4130, com foco em casos de uso comuns e integração com implementações de servidores existentes AS2-enabled . Para obter detalhes sobre as configurações suportadas, consulte [Configurações AS2](create-b2b-server.md#as2-supported-configurations).

## Nomes e localizações dos arquivos
<a name="file-names-as2"></a>

Esta seção discute as convenções de nomenclatura de arquivos para transferências AS2.

Para Transferência de Arquivos de entrada, observe o seguinte:
+ Você especifica o diretório base em um contrato. O diretório base é o nome do bucket do Amazon S3 combinado com um prefixo, se houver. Por exemplo, .`/amzn-s3-demo-bucket/AS2-folder`
+ Se um arquivo de entrada for processado com êxito, o arquivo (e o arquivo JSON correspondente) será salvo na pasta `/processed`. Por exemplo, .`/amzn-s3-demo-bucket/AS2-folder/processed`

  O arquivo JSON contém os seguintes campos:
  + `agreement-id` 
  + `as2-from`
  + `as2-to`
  + `as2-message-id`
  + `transfer-id`
  + `client-ip`
  + `connector-id`
  + `failure-message`
  + `file-path`
  + `message-subject`
  + `mdn-message-id`
  + `mdn-subject`
  + `requester-file-name`
  + `requester-content-type`
  + `server-id`
  + `status-code`
  + `failure-code`
  + `transfer-size`
+ Se um arquivo de entrada não puder ser processado com êxito, o arquivo (e o arquivo JSON correspondente) será salvo na pasta `/failed`. Por exemplo, .`/amzn-s3-demo-bucket/AS2-folder/failed`
+ O arquivo transferido é armazenado na pasta `processed` como `{{original_filename}}.{{messageId}}.{{original_extension}}`. Ou seja, o ID da mensagem para a transferência é anexado ao nome do arquivo, antes da extensão original.
+ Um arquivo JSON é criado e salvo como `{{original_filename}}.{{messageId}}.{{original_extension}}.json`. Além do ID da mensagem que está sendo adicionado, a string `.json` é anexada ao nome do arquivo transferido.
+ Um arquivo de Aviso de Disposição de Mensagens (MDN) é criado e salvo como `{{original_filename}}.{{messageId}}.{{original_extension}}.mdn`. Além do ID da mensagem que está sendo adicionado, a string `.mdn` é anexada ao nome do arquivo transferido.
+ Se houver um arquivo de entrada chamado `ExampleFileInS3Payload.dat`, os seguintes arquivos serão criados:
  + **Arquivo** – `ExampleFileInS3Payload.c4d6b6c7-23ea-4b8c-9ada-0cb811dc8b35@44313c54b0a46a36.dat`
  + **JSON** – `ExampleFileInS3Payload.c4d6b6c7-23ea-4b8c-9ada-0cb811dc8b35@44313c54b0a46a36.dat.json` 
  + **MDN** – `ExampleFileInS3Payload.c4d6b6c7-23ea-4b8c-9ada-0cb811dc8b35@44313c54b0a46a36.dat.mdn` 

Para transferências de saída, a nomenclatura é semelhante, com a diferença de que não há arquivo de mensagem de entrada e, além disso, a ID de transferência da mensagem transferida é adicionada ao nome do arquivo. O ID de transferência é retornado pela operação API `StartFileTransfer` (ou quando outro processo ou script chama essa operação).
+ O `transfer-id` é um identificador associado a uma Transferência de Arquivos. Todas as solicitações que fazem parte de uma `StartFileTransfer` chamada compartilham um `transfer-id`.
+ O diretório base é o mesmo que o caminho que você usa para o arquivo de origem. Ou seja, o diretório base é o caminho que você especifica na operação ou no `start-file-transfer` AWS CLI comando da `StartFileTransfer` API. Por exemplo: 

  ```
  aws transfer start-file-transfer --send-file-paths {{/amzn-s3-demo-bucket/AS2-folder/file-to-send.txt}}
  ```

  Se você executar esse comando, os arquivos MDN e JSON serão salvos em `/amzn-s3-demo-bucket/AS2-folder/processed` (para transferências bem-sucedidas) ou `/amzn-s3-demo-bucket/AS2-folder/failed` (para transferências malsucedidas).
+ Um arquivo JSON é criado e salvo como `{{original_filename}}.{{transferId}}.{{messageId}}.{{original_extension}}.json`.
+ Um arquivo MDN é criado e salvo como `{{original_filename}}.{{transferId}}.{{messageId}}.{{original_extension}}.mdn`.
+ Se houver um arquivo de saída chamado `ExampleFileOutTestOutboundSyncMdn.dat`, os seguintes arquivos serão criados:
  + **JSON** – `ExampleFileOutTestOutboundSyncMdn.dedf4601-4e90-4043-b16b-579af35e0d83.fbe18db8-7361-42ff-8ab6-49ec1e435f34@c9c705f0baaaabaa.dat.json`
  + **MDN** – `ExampleFileOutTestOutboundSyncMdn.dedf4601-4e90-4043-b16b-579af35e0d83.fbe18db8-7361-42ff-8ab6-49ec1e435f34@c9c705f0baaaabaa.dat.mdn`

Você também pode verificar os CloudWatch registros para ver os detalhes de suas transferências, incluindo as que falharam.

## Códigos de status
<a name="status-codes"></a>

A tabela a seguir lista todos os códigos de status que podem ser registrados nos CloudWatch registros quando você ou seu parceiro enviam uma mensagem AS2. Diferentes etapas de processamento de mensagens se aplicam a diferentes tipos de mensagens e são destinadas somente ao monitoramento. Os estados COMPLETED e FAILED representam a etapa final do processamento e são visíveis nos arquivos JSON.


****  

| Código | Description | Processamento concluído? | 
| --- | --- | --- | 
| PROCESSANDO | A mensagem está sendo convertida em seu formato final. Por exemplo, as etapas de descompressão e descriptografia têm esse status. | Não | 
| MDN\_TRANSMITEM | O processamento de mensagens está enviando uma resposta MDN. | Não | 
| MDN\_RECEIVE | O processamento de mensagens está recebendo uma resposta MDN. | Não | 
| CONCLUÍDO | O processamento da mensagem foi concluído com êxito. Esse estado inclui quando um MDN é enviado para uma mensagem de entrada ou para verificação de mensagens enviadas pelo MDN. | Sim | 
| FAILED | O processamento da mensagem falhou. Para obter uma lista de códigos de erro, consulte[Códigos de erro AS2](as2-monitoring.md#as2-error-codes). | Sim | 

## Arquivos JSON de amostra
<a name="file-as2-json"></a>

Esta seção lista exemplos de arquivos JSON para transferências de entrada e saída, incluindo arquivos de amostra para transferências bem-sucedidas e transferências que falham.

Exemplo de arquivo de saída que foi transferido com sucesso:

```
{
  "requester-content-type": "application/octet-stream",
  "message-subject": "File xyzTest from MyCompany_OID to partner YourCompany",
  "requester-file-name": "TestOutboundSyncMdn-9lmCr79hV.dat",
  "as2-from": "MyCompany_OID",
  "connector-id": "c-c21c63ceaaf34d99b",
  "status-code": "COMPLETED",
  "disposition": "automatic-action/MDN-sent-automatically; processed",
  "transfer-size": 3198,
  "mdn-message-id": "OPENAS2-11072022063009+0000-df865189-1450-435b-9b8d-d8bc0cee97fd@PartnerA_OID_MyCompany_OID",
  "mdn-subject": "Message be18db8-7361-42ff-8ab6-49ec1e435f34@c9c705f0baaaabaa has been accepted",
  "as2-to": "PartnerA_OID",
  "transfer-id": "dedf4601-4e90-4043-b16b-579af35e0d83",
  "file-path": "/amzn-s3-demo-bucket/as2testcell0000/openAs2/TestOutboundSyncMdn-9lmCr79hV.dat",
  "as2-message-id": "fbe18db8-7361-42ff-8ab6-49ec1e435f34@c9c705f0baaaabaa",
  "timestamp": "2022-07-11T06:30:10.791274Z"
}
```

Exemplo de arquivo de saída que foi transferido sem sucesso:

```
{
  "failure-code": "HTTP_ERROR_RESPONSE_FROM_PARTNER",
  "status-code": "FAILED",
  "requester-content-type": "application/octet-stream",
  "subject": "Test run from Id da86e74d6e57464aae1a55b8596bad0a to partner 9f8474d7714e476e8a46ce8c93a48c6c",
  "transfer-size": 3198,
  "requester-file-name": "openAs2TestOutboundWrongAs2Ids-necco-3VYn5n8wE.dat",
  "as2-message-id": "9a9cc9ab-7893-4cb6-992a-5ed8b90775ff@718de4cec1374598",
  "failure-message": "http://Test123456789.us-east-1.elb.amazonaws.com:10080 returned status 500 for message with ID 9a9cc9ab-7893-4cb6-992a-5ed8b90775ff@718de4cec1374598",
  "transfer-id": "07bd3e07-a652-4cc6-9412-73ffdb97ab92",
  "connector-id": "c-056e15cc851f4b2e9",
  "file-path": "/amzn-s3-demo-bucket-4c1tq6ohjt9y/as2IntegCell0002/openAs2/openAs2TestOutboundWrongAs2Ids-necco-3VYn5n8wE.dat",
  "timestamp": "2022-07-11T21:17:24.802378Z"
}
```

Exemplo de arquivo de entrada que foi transferido com sucesso:

```
{
  "requester-content-type": "application/EDI-X12",
  "subject": "File openAs2TestInboundAsyncMdn-necco-5Ab6bTfCO.dat sent from MyCompany to PartnerA",
  "client-ip": "10.0.109.105",
  "requester-file-name": "openAs2TestInboundAsyncMdn-necco-5Ab6bTfCO.dat",
  "as2-from": "MyCompany_OID",
  "status-code": "COMPLETED",
  "disposition": "automatic-action/MDN-sent-automatically; processed",
  "transfer-size": 1050,
  "mdn-subject": "Message Disposition Notification",
  "as2-message-id": "OPENAS2-11072022233606+0000-5dab0452-0ca1-4f9b-b622-fba84effff3c@MyCompany_OID_PartnerA_OID",
  "as2-to": "PartnerA_OID",
  "agreement-id": "a-f5c5cbea5f7741988",
  "file-path": "processed/openAs2TestInboundAsyncMdn-necco-5Ab6bTfCO.OPENAS2-11072022233606+0000-5dab0452-0ca1-4f9b-b622-fba84effff3c@MyCompany_OID_PartnerA_OID.dat",
  "server-id": "s-5f7422b04c2447ef9",
  "timestamp": "2022-07-11T23:36:36.105030Z"
}
```

Exemplo de arquivo de entrada que foi transferido sem sucesso:

```
{
  "failure-code": "INVALID_REQUEST",
  "status-code": "FAILED",
  "subject": "Sending a request from InboundHttpClientTests",
  "client-ip": "10.0.117.27",
  "as2-message-id": "testFailedLogs-TestRunConfig-Default-inbound-direct-integ-0c97ee55-af56-4988-b7b4-a3e0576f8f9c@necco",
  "as2-to": "0beff6af56c548f28b0e78841dce44f9",
  "failure-message": "Unsupported date format: 2022/123/456T",
  "agreement-id": "a-0ceec8ca0a3348d6a",
  "as2-from": "ab91a398aed0422d9dd1362710213880",
  "file-path": "failed/01187f15-523c-43ac-9fd6-51b5ad2b08f3.testFailedLogs-TestRunConfig-Default-inbound-direct-integ-0c97ee55-af56-4988-b7b4-a3e0576f8f9c@necco",
  "server-id": "s-0582af12e44540b9b",
  "timestamp": "2022-07-11T06:30:03.662939Z"
}
```