

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

# Enviar mensagens a uma fila do Amazon SQS com o Step Functions
<a name="connect-sqs"></a>

Você pode enviar mensagens para uma fila do Amazon SQS usando as ações de API do Amazon SQS a seguir e um exemplo de código de estado `Task` para fluxos de trabalho do Step Functions.

Para saber mais sobre a integração com AWS serviços no Step Functions, consulte [Integração de produtos da ](integrate-services.md) e. [Transmitir parâmetros a uma API de serviço no Step Functions](connect-parameters.md)

Para saber mais sobre o recebimento de mensagens no Amazon SQS, consulte [Receber e Excluir Sua Mensagem](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/step-receive-delete-message.html) no *Guia do Desenvolvedor do Amazon Simple Queue Service*.

O exemplo a seguir inclui um `Task` estado (JSONata) que envia uma mensagem do Amazon Simple Queue Service (Amazon SQS) (Amazon SQS) com opção: **MessageAttributes**

```
{
 "StartAt": "Send to SQS",
 "States": {
   "Send to SQS": {
     "Type": "Task",
     "Resource": "arn:aws:states:::sqs:sendMessage",
     "Arguments": {
       "QueueUrl": "https://sqs.us-east-1.amazonaws.com/{{account-id}}/myQueue",
       "MessageBody": "{% $states.input.message %}",
       "MessageAttributes": {
         "my_attribute_no_1": {
           "DataType": "String",
           "StringValue": "{{attribute1}}"
         },
         "my_attribute_no_2": {
           "DataType": "String",
           "StringValue": "{{attribute2}}"
         }
       }
     },
     "End": true
    }
  }
}
```

O estado de máquina a seguir inclui um estado `Task` que publica em uma fila do Amazon SQS e aguarda o retorno do token da tarefa. Consulte [Aguardar um retorno de chamada com um token de tarefa](connect-to-resource.md#connect-wait-token).

```
{  
   "StartAt":"Send message to SQS",
   "States":{  
      "Send message to SQS":{  
         "Type":"Task",
         "Resource":"arn:aws:states:::sqs:sendMessage.waitForTaskToken",
         "Arguments":{  
            "QueueUrl":"https://sqs.us-east-1.amazonaws.com/{{account-id}}/myQueue",
            "MessageBody":{  
               "Input" : "{% $states.input.message %}",
               "MyTaskToken" : "{% $states.context.Task.Token %}"
            }
         },
         "End":true
      }
   }
}
```

## Amazon SQS otimizado APIs
<a name="connect-sqs-api"></a>
+ [https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html)

**Os parâmetros em Step Functions são expressos em PascalCase**  
Mesmo que a API de serviço nativa esteja no CamelCase, por exemplo, a `startSyncExecution` ação da API, você especifica parâmetros PascalCase em, como:. `StateMachineArn`

**Cota para dados de entrada ou resultado**  
Ao enviar ou receber dados entre serviços, o máximo de entrada ou resultado de uma tarefa é 256 KiB de dados como uma string codificada em UTF-8. Consulte [Cotas relacionadas a execuções de máquina de estado](service-quotas.md#service-limits-state-machine-executions).

## Políticas do IAM para chamar o Amazon SQS
<a name="sqs-iam"></a>

Os modelos de exemplo a seguir mostram como AWS Step Functions gera políticas do IAM com base nos recursos na definição da sua máquina de estado. Para obter mais informações, consulte [Como o Step Functions gera políticas do IAM para serviços integrados](service-integration-iam-templates.md) e [Descobrir padrões de integração de serviços no Step Functions](connect-to-resource.md).

*Recursos estáticos*

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "sqs:SendMessage"
            ],
            "Resource": [
                "arn:aws:sqs:{{us-east-1}}:{{123456789012}}:myQueueName"
            ]
        }
    ]
}
```

*Recursos dinâmicos*

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "sqs:SendMessage"
            ],
            "Resource": "*"
        }
    ]
}
```