Skip to content

/AWS1/IF_SHI=>UPDATECASE()

About UpdateCase

Updates an existing case.

Method Signature

METHODS /AWS1/IF_SHI~UPDATECASE
  IMPORTING
    !IV_CASEID TYPE /AWS1/SHICASEID OPTIONAL
    !IV_TITLE TYPE /AWS1/SHICASETITLE OPTIONAL
    !IV_DESCRIPTION TYPE /AWS1/SHICASEDESCRIPTION OPTIONAL
    !IV_REPORTEDINCIDENTSTARTDATE TYPE /AWS1/SHITIMESTAMP OPTIONAL
    !IV_ACTUALINCIDENTSTARTDATE TYPE /AWS1/SHITIMESTAMP OPTIONAL
    !IV_ENGAGEMENTTYPE TYPE /AWS1/SHIENGAGEMENTTYPE OPTIONAL
    !IT_WATCHERSTOADD TYPE /AWS1/CL_SHIWATCHER=>TT_WATCHERS OPTIONAL
    !IT_WATCHERSTODELETE TYPE /AWS1/CL_SHIWATCHER=>TT_WATCHERS OPTIONAL
    !IT_THREATACTORIPADDRESSEST00 TYPE /AWS1/CL_SHITHREATACTORIP=>TT_THREATACTORIPLIST OPTIONAL
    !IT_THREATACTORIPADDRESSEST01 TYPE /AWS1/CL_SHITHREATACTORIP=>TT_THREATACTORIPLIST OPTIONAL
    !IT_IMPACTEDSERVICESTOADD TYPE /AWS1/CL_SHIIMPACTEDSVCSLIST_W=>TT_IMPACTEDSERVICESLIST OPTIONAL
    !IT_IMPACTEDSERVICESTODELETE TYPE /AWS1/CL_SHIIMPACTEDSVCSLIST_W=>TT_IMPACTEDSERVICESLIST OPTIONAL
    !IT_IMPACTEDAWSREGIONSTOADD TYPE /AWS1/CL_SHIIMPACTEDAWSREGION=>TT_IMPACTEDAWSREGIONLIST OPTIONAL
    !IT_IMPACTEDAWSREGIONSTODEL TYPE /AWS1/CL_SHIIMPACTEDAWSREGION=>TT_IMPACTEDAWSREGIONLIST OPTIONAL
    !IT_IMPACTEDACCOUNTSTOADD TYPE /AWS1/CL_SHIIMPACTEDACCOUNTS_W=>TT_IMPACTEDACCOUNTS OPTIONAL
    !IT_IMPACTEDACCOUNTSTODELETE TYPE /AWS1/CL_SHIIMPACTEDACCOUNTS_W=>TT_IMPACTEDACCOUNTS OPTIONAL
    !IT_CASEMETADATA TYPE /AWS1/CL_SHICASEMETADATAENTRY=>TT_CASEMETADATA OPTIONAL
  RETURNING
    VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_shiupdatecaseresponse
  RAISING
    /AWS1/CX_SHIACCESSDENIEDEX
    /AWS1/CX_SHICONFLICTEXCEPTION
    /AWS1/CX_SHIINTERNALSERVEREX
    /AWS1/CX_SHIINVALIDTOKENEX
    /AWS1/CX_SHIRESOURCENOTFOUNDEX
    /AWS1/CX_SHISECINCIDENTRSPNO00
    /AWS1/CX_SHISERVICEQUOTAEXCDEX
    /AWS1/CX_SHITHROTTLINGEX
    /AWS1/CX_SHIVALIDATIONEX
    /AWS1/CX_SHICLIENTEXC
    /AWS1/CX_SHISERVEREXC
    /AWS1/CX_RT_TECHNICAL_GENERIC
    /AWS1/CX_RT_SERVICE_GENERIC.

IMPORTING

Required arguments:

iv_caseid TYPE /AWS1/SHICASEID /AWS1/SHICASEID

Required element for UpdateCase to identify the case ID for updates.

Optional arguments:

iv_title TYPE /AWS1/SHICASETITLE /AWS1/SHICASETITLE

Optional element for UpdateCase to provide content for the title field.

iv_description TYPE /AWS1/SHICASEDESCRIPTION /AWS1/SHICASEDESCRIPTION

Optional element for UpdateCase to provide content for the description field.

iv_reportedincidentstartdate TYPE /AWS1/SHITIMESTAMP /AWS1/SHITIMESTAMP

Optional element for UpdateCase to provide content for the customer reported incident start date field.

iv_actualincidentstartdate TYPE /AWS1/SHITIMESTAMP /AWS1/SHITIMESTAMP

Optional element for UpdateCase to provide content for the incident start date field.

iv_engagementtype TYPE /AWS1/SHIENGAGEMENTTYPE /AWS1/SHIENGAGEMENTTYPE

Optional element for UpdateCase to provide content for the engagement type field. Available engagement types include Security Incident | Investigation.

it_watcherstoadd TYPE /AWS1/CL_SHIWATCHER=>TT_WATCHERS TT_WATCHERS

Optional element for UpdateCase to provide content to add additional watchers to a case.

it_watcherstodelete TYPE /AWS1/CL_SHIWATCHER=>TT_WATCHERS TT_WATCHERS

Optional element for UpdateCase to provide content to remove existing watchers from a case.

it_threatactoripaddressest00 TYPE /AWS1/CL_SHITHREATACTORIP=>TT_THREATACTORIPLIST TT_THREATACTORIPLIST

Optional element for UpdateCase to provide content to add additional suspicious IP addresses related to a case.

it_threatactoripaddressest01 TYPE /AWS1/CL_SHITHREATACTORIP=>TT_THREATACTORIPLIST TT_THREATACTORIPLIST

Optional element for UpdateCase to provide content to remove suspicious IP addresses from a case.

it_impactedservicestoadd TYPE /AWS1/CL_SHIIMPACTEDSVCSLIST_W=>TT_IMPACTEDSERVICESLIST TT_IMPACTEDSERVICESLIST

Optional element for UpdateCase to provide content to add services impacted.

it_impactedservicestodelete TYPE /AWS1/CL_SHIIMPACTEDSVCSLIST_W=>TT_IMPACTEDSERVICESLIST TT_IMPACTEDSERVICESLIST

Optional element for UpdateCase to provide content to remove services impacted.

it_impactedawsregionstoadd TYPE /AWS1/CL_SHIIMPACTEDAWSREGION=>TT_IMPACTEDAWSREGIONLIST TT_IMPACTEDAWSREGIONLIST

Optional element for UpdateCase to provide content to add regions impacted.

it_impactedawsregionstodel TYPE /AWS1/CL_SHIIMPACTEDAWSREGION=>TT_IMPACTEDAWSREGIONLIST TT_IMPACTEDAWSREGIONLIST

Optional element for UpdateCase to provide content to remove regions impacted.

it_impactedaccountstoadd TYPE /AWS1/CL_SHIIMPACTEDACCOUNTS_W=>TT_IMPACTEDACCOUNTS TT_IMPACTEDACCOUNTS

Optional element for UpdateCase to provide content to add accounts impacted.

AWS account ID's may appear less than 12 characters and need to be zero-prepended. An example would be 123123123 which is nine digits, and with zero-prepend would be 000123123123. Not zero-prepending to 12 digits could result in errors.

it_impactedaccountstodelete TYPE /AWS1/CL_SHIIMPACTEDACCOUNTS_W=>TT_IMPACTEDACCOUNTS TT_IMPACTEDACCOUNTS

Optional element for UpdateCase to provide content to add accounts impacted.

AWS account ID's may appear less than 12 characters and need to be zero-prepended. An example would be 123123123 which is nine digits, and with zero-prepend would be 000123123123. Not zero-prepending to 12 digits could result in errors.

it_casemetadata TYPE /AWS1/CL_SHICASEMETADATAENTRY=>TT_CASEMETADATA TT_CASEMETADATA

Update the case request with case metadata

RETURNING

oo_output TYPE REF TO /aws1/cl_shiupdatecaseresponse /AWS1/CL_SHIUPDATECASERESPONSE

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->updatecase(
  it_casemetadata = VALUE /aws1/cl_shicasemetadataentry=>tt_casemetadata(
    (
      new /aws1/cl_shicasemetadataentry(
        iv_key = |string|
        iv_value = |string|
      )
    )
  )
  it_impactedaccountstoadd = VALUE /aws1/cl_shiimpactedaccounts_w=>tt_impactedaccounts(
    ( new /aws1/cl_shiimpactedaccounts_w( |string| ) )
  )
  it_impactedaccountstodelete = VALUE /aws1/cl_shiimpactedaccounts_w=>tt_impactedaccounts(
    ( new /aws1/cl_shiimpactedaccounts_w( |string| ) )
  )
  it_impactedawsregionstoadd = VALUE /aws1/cl_shiimpactedawsregion=>tt_impactedawsregionlist(
    ( new /aws1/cl_shiimpactedawsregion( |string| ) )
  )
  it_impactedawsregionstodel = VALUE /aws1/cl_shiimpactedawsregion=>tt_impactedawsregionlist(
    ( new /aws1/cl_shiimpactedawsregion( |string| ) )
  )
  it_impactedservicestoadd = VALUE /aws1/cl_shiimpactedsvcslist_w=>tt_impactedserviceslist(
    ( new /aws1/cl_shiimpactedsvcslist_w( |string| ) )
  )
  it_impactedservicestodelete = VALUE /aws1/cl_shiimpactedsvcslist_w=>tt_impactedserviceslist(
    ( new /aws1/cl_shiimpactedsvcslist_w( |string| ) )
  )
  it_threatactoripaddressest00 = VALUE /aws1/cl_shithreatactorip=>tt_threatactoriplist(
    (
      new /aws1/cl_shithreatactorip(
        iv_ipaddress = |string|
        iv_useragent = |string|
      )
    )
  )
  it_threatactoripaddressest01 = VALUE /aws1/cl_shithreatactorip=>tt_threatactoriplist(
    (
      new /aws1/cl_shithreatactorip(
        iv_ipaddress = |string|
        iv_useragent = |string|
      )
    )
  )
  it_watcherstoadd = VALUE /aws1/cl_shiwatcher=>tt_watchers(
    (
      new /aws1/cl_shiwatcher(
        iv_email = |string|
        iv_jobtitle = |string|
        iv_name = |string|
      )
    )
  )
  it_watcherstodelete = VALUE /aws1/cl_shiwatcher=>tt_watchers(
    (
      new /aws1/cl_shiwatcher(
        iv_email = |string|
        iv_jobtitle = |string|
        iv_name = |string|
      )
    )
  )
  iv_actualincidentstartdate = '20150101000000.0000000'
  iv_caseid = |string|
  iv_description = |string|
  iv_engagementtype = |string|
  iv_reportedincidentstartdate = '20150101000000.0000000'
  iv_title = |string|
).

This is an example of reading all possible response values

lo_result = lo_result.
IF lo_result IS NOT INITIAL.
ENDIF.

Invoke UpdateCase

Invoke UpdateCase

DATA(lo_result) = lo_client->updatecase(
  it_impactedaccountstoadd = VALUE /aws1/cl_shiimpactedaccounts_w=>tt_impactedaccounts(
    ( new /aws1/cl_shiimpactedaccounts_w( |000000000000| ) )
  )
  it_impactedaccountstodelete = VALUE /aws1/cl_shiimpactedaccounts_w=>tt_impactedaccounts(
    ( new /aws1/cl_shiimpactedaccounts_w( |111111111111| ) )
  )
  it_impactedawsregionstoadd = VALUE /aws1/cl_shiimpactedawsregion=>tt_impactedawsregionlist(
    ( new /aws1/cl_shiimpactedawsregion( |ap-southeast-1| ) )
  )
  it_impactedawsregionstodel = VALUE /aws1/cl_shiimpactedawsregion=>tt_impactedawsregionlist(
    ( new /aws1/cl_shiimpactedawsregion( |us-east-1| ) )
  )
  it_impactedservicestoadd = VALUE /aws1/cl_shiimpactedsvcslist_w=>tt_impactedserviceslist(
    ( new /aws1/cl_shiimpactedsvcslist_w( |Amazon EC2| ) )
  )
  it_impactedservicestodelete = VALUE /aws1/cl_shiimpactedsvcslist_w=>tt_impactedserviceslist(
    ( new /aws1/cl_shiimpactedsvcslist_w( |Amazon EKS| ) )
  )
  it_threatactoripaddressest00 = VALUE /aws1/cl_shithreatactorip=>tt_threatactoriplist(
    (
      new /aws1/cl_shithreatactorip(
        iv_ipaddress = |190.160.190.160|
        iv_useragent = |Browser|
      )
    )
  )
  it_threatactoripaddressest01 = VALUE /aws1/cl_shithreatactorip=>tt_threatactoriplist(
    (
      new /aws1/cl_shithreatactorip(
        iv_ipaddress = |192.168.192.168|
        iv_useragent = |Browser|
      )
    )
  )
  it_watcherstoadd = VALUE /aws1/cl_shiwatcher=>tt_watchers(
    (
      new /aws1/cl_shiwatcher(
        iv_email = |Sam@example.com|
        iv_jobtitle = |CEO|
        iv_name = |Same|
      )
    )
  )
  it_watcherstodelete = VALUE /aws1/cl_shiwatcher=>tt_watchers(
    (
      new /aws1/cl_shiwatcher(
        iv_email = |bob@example.com|
        iv_jobtitle = |CFO|
        iv_name = |Bob|
      )
    )
  )
  iv_actualincidentstartdate = '20230325153201.7890000'
  iv_caseid = |8403556009|
  iv_description = |Case description|
  iv_engagementtype = |Investigation|
  iv_reportedincidentstartdate = '20230327153201.7890000'
  iv_title = |My sample case|
).