SAP CC REST Agent Configuration

You open the SAP CC REST agent configuration dialog from a workflow configuration. To open the SAP CC REST agent configuration, click Build → New Configuration. Select Workflow from the Configurations dialog. When prompted to Select workflow type, select Realtime. Click Add agent and select SAP CC REST from the Agent Selection dialog.

Client Tab

The Client tab contains configuration data that is required to connect to a remote server.

sapcc_rest_client_tab.png
SAP CC REST agent configuration dialog - Client tab

Setting

Description

Setting

Description

REST API

Choose between Charging Service or Loading Service API. This will allow the SAP CC REST agent to switch between the two services.

REST API Version

The version of the Charging Service or Loading Service API. Each of the API versions will have its specific services associated with it that can be viewed under View Supported Services.

View Supported Services

Shows the supported services within the API that is selected in the REST API and REST API Version fields.

Host

Add IP address or hostname of the SAP Convergent Charging instance on the SAP Cloud.

ONLY accepts alphanumerical, dots and hyphens as valid values

Port

Add the Charging or Loading port of the SAP Convergent Charging instance on the SAP Cloud.

API Path

The path for the API to access the content from the SAP Convergent Charging instance on the SAP Cloud.

Route Error UDR

When this option is selected, and there is any unexpected exception, an Error UDR will be sent as an output from the agent.

For example,

  • Connection Failure or timeout due to wrong host, port, or authorization credentials.

If this option is not selected, the error will not be routed.

For more information, refer SAP CC REST UDRs | errorUDR

Use TLS

Select to use TLS encrypted communication with Host. You will be able to browse and select the Security Profile with the necessary credentials.

For more information about Security Profile, refer to Security Profile.

Info!

Refer to the Securing Communications with the Core Server System section in the SAP Convergent Charging Installation and Maintenance Guide for more information on how to apply TLS on the SAP CC server.

Authentication tab

The Authentication tab contains configurations related to the authentication required to establish a connection between the SAP CC REST agent and the SAP CC server.

sapcc_rest_authentication_tab.png
SAP CC REST agent configuration dialog for OAuth2 authentication type using Client Credentials - Authentication tab

 

Setting

Description

Setting

Description

Authentication Type

Choose between the following authentication method for the SAP CC REST agent:

  • Basic - Standard username and password authentication method used to connect to the SAP CC server.

  • OAuth 2.0 - Use of tokens created using an OAuth2 authorization server based on two grant types supported by the agent. Client Credentials and Resource Owner Password Credentials.

Basic Authentication

Username

The username for accessing the SAP CC server.

Password

The password associated with the username.

OAuth 2.0 Authentication - Client Credentials

Grant Type

Select the grant type:

  • Client Credentials
    The agent fetches the access token from the Access Token URI during initialization, using client id and client secret for basic authentication. The credentials are base64 encoded and sent in the header of the request.
    The response contains an access token, which is then used in subsequent requests.

  • Resource Owner Password Credentials

    The agent fetches the access token from the Access Token URI during initialization, using the following credentials for authentication:

    • Client ID

    • Client Secret

    • Username

    • Password

    The credentials are sent in the body of the request. The response contains an access token, which is then used in subsequent requests. 

Client ID

Enter the unique client identifier issued by the authorization server.

Client Secret

Enter the client's secret.

Username

Enter the resource owner username, this can be the end-user granting access to a protected resource. This field is required when you have selected Resource Owner Password Credentials from the drop-down list Grant Type.

Password

Enter the password associated with the username. This field is required when you have selected Resource Owner Password Credentials from the drop-down list Grant Type.

Access Token URI

Enter the URI where the access token can be obtained.

Token Expiration Override (s)

Enter a time in seconds when you would like to refresh the access token prior to the expiration. This allows the application to obtain a new access token without the user's interaction. 

Additional Parameters

Some authentication servers may require additional parameters in the body of the token requests. To add a parameter, click the Add button and then enter the name of the parameter in the Key field and the value of the parameter in the Value field.

Do not use escape characters in the value field, these will be added automatically by the agent. For instance, "https://example.com/ " will be sent as "https%3A%2F%2example.com%2F".

Note!

If an agent is configured on the Authentication Tab to use OAuth 2.0, an additional step may be required if the token needs to be obtained via HTTPS protocol.

The SAP CC REST agent internally uses the Java built-in HTTP Client to obtain a token. If a certificate is required to contact the authentication server, the proper certificate has to be put into the default certificates file for the respective JDK distribution used.

Example for OpenJDK 64-Bit Server VM Zulu17.40+19-CA

cd $JAVA_HOME/lib/security keytool -import -alias mycert -keystore cacerts -file oauth2Host.cert

Traffic Control Tab

The Traffic Control tab contains configurations required to control the request flow with the SAP CC Server.

 

Setting

Description

Setting

Description

Http Version

Allows the selection of the HTTP version for use in the Traffic Control. The fields under Connection Control as well as the Server Monitor will only be enabled when HTTP/2.0 is selected.

Connection Control (Enabled only with HTTP/2 as Http Version)

Min. Connection Per Destination

Specify the minimum number of connections towards an endpoint (identified by host:port) that the agent will try to maintain. A value of 0 indicates "no minimum". This is not a hard limit as there could be more connections created during the spike in traffic.

Min. Connection Per Destination Check Interval

Specify how often you wish to check the established connections. A value of 0 indicates "no check will be performed". After each interval, the agent will try to create additional connections to achieve number set in the Min Connections Per Destination parameter. No connections will be shut down if the current number of connections is greater than the number set in Min Connections Per Destination.

Default Concurrent Connection Streams

The initial value of concurrent streams that the client would like to handle per connection. The default value is 1000.

Timeout

Request Timeout (s)

Enter the timeout period in seconds for the request to the SAP CC REST agent to wait for a response before timing out.

Queue Settings

Max Requests Queued Per Destination

The size of the message queue in the Jetty server. The default value is 20000.

Retry Interval For Full Queues (ms)

A millisecond value to indicate the time it will take for the request to try again when the queue is full.

Max Retries For Full Queue

This field will indicate how many times the request will attempt to retry before routing it to Error UDR.

Server Monitor (Enabled only with HTTP/2 as Http Version)

Use HTTP/2.0 Server Monitor

Select this option to monitor the connection status of all servers that the agent has sent requests to. The monitoring is done by sending regular ping messages to the servers. If the servers are not responding, or there are other communication errors, they will be indicated as Unavailable. A list of the Available and Unavailable servers are available in two MIM values: Available Servers and Unreachable Servers.

Ping Interval (s)

Define the ping message interval for the Server Monitor. The time unit is seconds and 10 seconds is default.