Skip to content

/AWS1/IF_OSR=>REGISTERCAPABILITY()

About RegisterCapability

Registers a capability for an OpenSearch UI application. Use this operation to enable specific capabilities, such as AI features, for a given application. The capability configuration defines the type and settings of the capability to register. For more information about the AI features, see Agentic AI for OpenSearch UI.

Method Signature

METHODS /AWS1/IF_OSR~REGISTERCAPABILITY
  IMPORTING
    !IV_APPLICATIONID TYPE /AWS1/OSRAPPLICATIONID OPTIONAL
    !IV_CAPABILITYNAME TYPE /AWS1/OSRCAPABILITYNAME OPTIONAL
    !IO_CAPABILITYCONFIG TYPE REF TO /AWS1/CL_OSRCAPABBASEREQCONFIG OPTIONAL
  RETURNING
    VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_osrregcapabresponse
  RAISING
    /AWS1/CX_OSRACCESSDENIEDEX
    /AWS1/CX_OSRCONFLICTEXCEPTION
    /AWS1/CX_OSRDISABLEDOPEX
    /AWS1/CX_OSRINTERNALEXCEPTION
    /AWS1/CX_OSRRESOURCENOTFOUNDEX
    /AWS1/CX_OSRSERVICEQUOTAEXCDEX
    /AWS1/CX_OSRVALIDATIONEX
    /AWS1/CX_OSRCLIENTEXC
    /AWS1/CX_OSRSERVEREXC
    /AWS1/CX_RT_TECHNICAL_GENERIC
    /AWS1/CX_RT_SERVICE_GENERIC.

IMPORTING

Required arguments:

iv_applicationid TYPE /AWS1/OSRAPPLICATIONID /AWS1/OSRAPPLICATIONID

The unique identifier of the OpenSearch UI application to register the capability for.

iv_capabilityname TYPE /AWS1/OSRCAPABILITYNAME /AWS1/OSRCAPABILITYNAME

The name of the capability to register. Must be between 3 and 30 characters and contain only alphanumeric characters and hyphens. This identifies the type of capability being enabled for the application. For registering AI Assistant capability, use ai-capability

io_capabilityconfig TYPE REF TO /AWS1/CL_OSRCAPABBASEREQCONFIG /AWS1/CL_OSRCAPABBASEREQCONFIG

The configuration settings for the capability being registered. This includes capability-specific settings such as AI configuration.

RETURNING

oo_output TYPE REF TO /aws1/cl_osrregcapabresponse /AWS1/CL_OSRREGCAPABRESPONSE

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->registercapability(
  io_capabilityconfig = new /aws1/cl_osrcapabbasereqconfig( new /aws1/cl_osraiconfig( ) )
  iv_applicationid = |string|
  iv_capabilityname = |string|
).

This is an example of reading all possible response values

lo_result = lo_result.
IF lo_result IS NOT INITIAL.
  lv_capabilityname = lo_result->get_capabilityname( ).
  lv_applicationid = lo_result->get_applicationid( ).
  lv_capabilitystatus = lo_result->get_status( ).
  lo_capabilitybaseresponsec = lo_result->get_capabilityconfig( ).
  IF lo_capabilitybaseresponsec IS NOT INITIAL.
    lo_aiconfig = lo_capabilitybaseresponsec->get_aiconfig( ).
    IF lo_aiconfig IS NOT INITIAL.
    ENDIF.
  ENDIF.
ENDIF.