Passando parâmetros para um serviço API em Step Functions - AWS Step Functions

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

Passando parâmetros para um serviço API em Step Functions

Use o Parameters campo em um Task estado para controlar quais parâmetros são passados para um serviçoAPI.

Dentro do Parameters campo, você deve usar a forma plural dos parâmetros da matriz em uma API ação. Por exemplo, se você usar o campo Filtro da DescribeSnapshots API ação para integração com a AmazonEC2, deverá definir o campo comoFilters. Se você não usar o formato plural, o Step Functions retornará o seguinte erro:

The field Filter is not supported by Step Functions.

Passe estática JSON como parâmetros

Você pode incluir um JSON objeto diretamente na definição da sua máquina de estado para passar como parâmetro para um recurso.

Por exemplo, para definir o RetryStrategy parâmetro SubmitJob API para o AWS Batch, você pode incluir o seguinte em seus parâmetros.

"RetryStrategy": { "attempts": 5 }

Você também pode passar vários parâmetros com estáticaJSON. Como um exemplo mais completo, a seguir estão os Parameters campos Resource e da especificação de uma tarefa que é publicada em um SNS tópico da Amazon chamadomyTopic.

"Resource": "arn:aws:states:::sns:publish", "Parameters": { "TopicArn": "arn:aws:sns:us-east-2:123456789012:myTopic", "Message": "test message", "MessageAttributes": { "my attribute no 1": { "DataType": "String", "StringValue": "value of my attribute no 1" }, "my attribute no 2": { "DataType": "String", "StringValue": "value of my attribute no 2" } } },

Transmitir a entrada de estado como parâmetros usando caminhos

É possível transmitir partes da entrada de estado como parâmetros usando caminhos. Um caminho é uma string, começando com$, usada para identificar componentes no JSON texto. Os caminhos do Step Functions usam JsonPathsintaxe.

Para especificar que um parâmetro use um caminho, termine o nome do parâmetro com .$. Por exemplo, se sua entrada de estado contiver texto em um nó chamado message, você poderá transmitir esse texto como parâmetro usando um caminho.

Considere a seguinte entrada de estado:

{ "comment": "A message in the state input", "input": { "message": "foo", "otherInfo": "bar" }, "data": "example" }

Para passar o valor do nó nomeado message como um parâmetro chamadomyMessage, especifique a seguinte sintaxe:

"Parameters": {"myMessage.$": "$.input.message"},

Em seguida, o Step Functions transmite o valor foo como um parâmetro.

Para ver mais informações sobre como usar parâmetros no Step Functions, consulte o seguinte:

Passar nós do objeto de contexto como parâmetros

Além do conteúdo estático e de nós do estado de entrada, é possível passar nós do objeto de contexto como parâmetros. O objeto de contexto são JSON dados dinâmicos que existem durante a execução de uma máquina de estado. Ele inclui informações sobre sua máquina de estado e a execução atual. É possível acessar o objeto de contexto usando um caminho no campo "Parameters" de uma definição de estado.

Para obter mais informações sobre o objeto de contexto e como acessar os dados de um campo "Parameters", consulte o seguinte: