Skip to content

/AWS1/IF_QST=>CREATEFLOW()

About CreateFlow

Creates a new flow in the specified Amazon Web Services account. Creates both a DRAFT and PUBLISHED (auto-published) version.

This operation is idempotent. Supply a ClientToken to safely retry without creating duplicate resources.

Method Signature

METHODS /AWS1/IF_QST~CREATEFLOW
  IMPORTING
    !IV_AWSACCOUNTID TYPE /AWS1/QSTACCOUNTID OPTIONAL
    !IV_NAME TYPE /AWS1/QSTTITLEINPUT OPTIONAL
    !IV_DESCRIPTION TYPE /AWS1/QSTFLOWDESCRIPTIONINPUT OPTIONAL
    !IO_FLOWDEFINITION TYPE REF TO /AWS1/CL_RT_DOCUMENT OPTIONAL
    !IT_PERMISSIONS TYPE /AWS1/CL_QSTPERMISSION=>TT_PERMISSIONSLIST OPTIONAL
    !IV_CLIENTTOKEN TYPE /AWS1/QSTCREFLOWREQCLITKNSTR OPTIONAL
  RETURNING
    VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_qstcreateflowresponse
  RAISING
    /AWS1/CX_QSTACCESSDENIEDEX
    /AWS1/CX_QSTCONFLICTEXCEPTION
    /AWS1/CX_QSTINTERNALFAILUREEX
    /AWS1/CX_QSTINVPARAMVALUEEX
    /AWS1/CX_QSTLIMITEXCEEDEDEX
    /AWS1/CX_QSTRESOURCEEXISTSEX
    /AWS1/CX_QSTRESOURCENOTFOUNDEX
    /AWS1/CX_QSTTHROTTLINGEX
    /AWS1/CX_QSTCLIENTEXC
    /AWS1/CX_QSTSERVEREXC
    /AWS1/CX_RT_TECHNICAL_GENERIC
    /AWS1/CX_RT_SERVICE_GENERIC.

IMPORTING

Required arguments:

iv_awsaccountid TYPE /AWS1/QSTACCOUNTID /AWS1/QSTACCOUNTID

The ID of the Amazon Web Services account where you want to create the flow.

iv_name TYPE /AWS1/QSTTITLEINPUT /AWS1/QSTTITLEINPUT

The display name for the flow.

io_flowdefinition TYPE REF TO /AWS1/CL_RT_DOCUMENT /AWS1/CL_RT_DOCUMENT

The definition of the flow, specifying the steps and configurations. This is the flow definition in Quick Flow's internal format. The format is subject to change.

Always derive or depend on the flow definition from the DescribeFlow operation to ensure you are working with the latest format.

Optional arguments:

iv_description TYPE /AWS1/QSTFLOWDESCRIPTIONINPUT /AWS1/QSTFLOWDESCRIPTIONINPUT

The description for the flow.

it_permissions TYPE /AWS1/CL_QSTPERMISSION=>TT_PERMISSIONSLIST TT_PERMISSIONSLIST

Initial permissions for the flow. If omitted, the flow is created without any permissions.

iv_clienttoken TYPE /AWS1/QSTCREFLOWREQCLITKNSTR /AWS1/QSTCREFLOWREQCLITKNSTR

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

RETURNING

oo_output TYPE REF TO /aws1/cl_qstcreateflowresponse /AWS1/CL_QSTCREATEFLOWRESPONSE

Examples

Syntax Example

This is an example of the syntax for calling the method. It includes every possible argument and initializes every possible value. The data provided is not necessarily semantically accurate (for example the value "string" may be provided for something that is intended to be an instance ID, or in some cases two arguments may be mutually exclusive). The syntax shows the ABAP syntax for creating the various data structures.

DATA(lo_result) = lo_client->createflow(
  io_flowdefinition = /AWS1/CL_RT_DOCUMENT=>FROM_JSON_STR( |\{"foo":"this is a JSON object..."\}| )
  it_permissions = VALUE /aws1/cl_qstpermission=>tt_permissionslist(
    (
      new /aws1/cl_qstpermission(
        it_actions = VALUE /aws1/cl_qstactionslist_w=>tt_actionslist(
          ( new /aws1/cl_qstactionslist_w( |string| ) )
        )
        iv_principal = |string|
      )
    )
  )
  iv_awsaccountid = |string|
  iv_clienttoken = |string|
  iv_description = |string|
  iv_name = |string|
).

This is an example of reading all possible response values

lo_result = lo_result.
IF lo_result IS NOT INITIAL.
  lv_string = lo_result->get_arn( ).
  lv_flowid = lo_result->get_flowid( ).
  lv_string = lo_result->get_requestid( ).
  lv_statuscode = lo_result->get_status( ).
ENDIF.