Skip to content

API for Amazon Cognito Identity

ABAP Package /AWS1/API_CGI_IMPL
ABAP SDK "TLA" CGI
ABAP Interface /AWS1/IF_CGI

The "TLA" is a Three Letter Abbreviation that appears in ABAP class names, data dictionary objects and other ABAP objects throughout the AWS SDK for SAP ABAP. The TLA for Amazon Cognito Identity is CGI. This TLA helps squeeze ABAP objects into the 30-character length limit of the ABAP data dictionary.

Installation

To install the AWS SDK for SAP ABAP, import the Core transport, along with the transport for the Cognito Identity module and other API modules you are interested in. A few modules are included in the Core transport itself. For more information, see the Developer Guide guide.

About The Service

Amazon Cognito Federated Identities

Amazon Cognito Federated Identities is a web service that delivers scoped temporary credentials to mobile devices and other untrusted environments. It uniquely identifies a device and supplies the user with a consistent identity over the lifetime of an application.

Using Amazon Cognito Federated Identities, you can enable authentication with one or more third-party identity providers (Facebook, Google, or Login with Amazon) or an Amazon Cognito user pool, and you can also choose to support unauthenticated access from your app. Cognito delivers a unique identifier for each user and acts as an OpenID token provider trusted by AWS Security Token Service (STS) to access temporary, limited-privilege AWS credentials.

For a description of the authentication flow from the Amazon Cognito Developer Guide see Authentication Flow.

For more information see Amazon Cognito Federated Identities.

Using the SDK

In your code, create a client using the SDK module for Amazon Cognito Identity, which is created with factory method /AWS1/CL_CGI_FACTORY=>create(). In this example we will assume you have configured an SDK profile in transaction /AWS1/IMG called ZFINANCE.

DATA(go_session)   = /aws1/cl_rt_session_aws=>create( 'ZFINANCE' ).
DATA(go_cgi)       = /aws1/cl_cgi_factory=>create( go_session ).

Your variable go_cgi is an instance of /AWS1/IF_CGI, and all of the operations in the Amazon Cognito Identity service are accessed by calling methods in /AWS1/IF_CGI.

API Operations

For an overview of ABAP method calls corresponding to API operations in Amazon Cognito Identity, see the Operation List.

Factory Method

/AWS1/CL_CGI_FACTORY=>create( )

Creates an object of type /AWS1/IF_CGI.

IMPORTING

Optional arguments:

IV_PROTOCOL TYPE /AWS1/RT_PROTOCOL /AWS1/RT_PROTOCOL

IO_SESSION TYPE REF TO /AWS1/CL_RT_SESSION_BASE /AWS1/CL_RT_SESSION_BASE

IV_REGION TYPE /AWS1/RT_REGION_ID /AWS1/RT_REGION_ID

IV_CUSTOM_ENDPOINT TYPE /AWS1/RT_ENDPOINT /AWS1/RT_ENDPOINT

RETURNING

OO_CLIENT TYPE REF TO /AWS1/IF_CGI /AWS1/IF_CGI

/AWS1/IF_CGI represents the ABAP client for the Cognito Identity service, representing each operation as a method call. For more information see the API Page page.

Configuring Programmatically

DATA(lo_config) = DATA(go_cgi)->get_config( ).

lo_config is a variable of type /AWS1/CL_CGI_CONFIG. See the documentation for /AWS1/CL_CGI_CONFIG for details on the settings that can be configured.

Paginators

Paginators for Amazon Cognito Identity can be created via get_paginator() which returns a paginator object of type /AWS1/IF_CGI_PAGINATOR. The operation method that is being paginated is called using the paginator object, which accepts any necessary parameters to provide to the underlying API operation. This returns an iterator object which can be used to iterate over paginated results using has_next() and get_next() methods.

Details about the paginator methods available for service Amazon Cognito Identity can be found in interface /AWS1/IF_CGI_PAGINATOR.