vania-janet/multiturn-rag-retrieval-data huggingface dataset:
String iamID = "iam-ServiceId-12345678-aaaa-bbbb-cccc-1234567890ab"; //set iam id of target user to set quotas to

        // if null is used instead of the iamID string, the following quota alteration will be applied to the default user

        // add quotas 

        ClientQuotaEntity entity = new ClientQuotaEntity(

                Collections.singletonMap(ClientQuotaEntity.USER, iamID));

        ClientQuotaAlteration alteration = new ClientQuotaAlteration(entity,

                Arrays.asList(new ClientQuotaAlteration.Op("consumer_byte_rate", 1000.0),

                        new ClientQuotaAlteration.Op("producer_byte_rate", 1000.0)));

        admin.alterClientQuotas(Arrays.asList(alteration)).all().get();

        // describe quotas

        DescribeClientQuotasResult describeClientQuotasFuture = admin.describeClientQuotas(ClientQuotaFilter.all());

        System.out.println(describeClientQuotasFuture.entities().get());

        //remove quotas (set them to null)

        entity = new ClientQuotaEntity(Collections.singletonMap(ClientQuotaEntity.USER, iamID));

        alteration = new ClientQuotaAlteration(entity,

                Arrays.asList(new ClientQuotaAlteration.Op("consumer_byte_rate", null),

                        new ClientQuotaAlteration.Op("producer_byte_rate", null)));

        admin.alterClientQuotas(Arrays.asList(alteration)).all().get();

    }

}
Show more









 IBM Cloud Activity Tracker events 

Whenever throughput quotas are updated, an Event Streams configuration event is generated, which can be monitored in IBM Cloud® Activity Tracker.
Select viewer to grant permissions to view instances in the Observability UI.

[Learn more about the roles that you need](https://cloud.ibm.com/docs/monitoring?topic=monitoring-iam).
8. Click Assign.









 Step 3. Add permissions to work with data in the Monitoring service 

Next, you must add a policy that grants the user permission to work with data in the Monitoring service.

When you define the policy, you need to select a service role. Service access roles define a user's or service's ability to perform actions on a service instance. The service access roles are manager, writer, and reader.



 Add permissions through the CLI 

To create an access group policy by using the CLI, you can use the [ibmcloud iam access-group-policy-create](https://cloud.ibm.com/docs/cli?topic=cli-ibmcloud_commands_iamibmcloud_iam_access_group_policy_create) command.

ibmcloud iam access-group-policy-create GROUP_NAME {-f, --file @JSON_FILE | --roles ROLE_NAME1,ROLE_NAME2... [--service-name SERVICE_NAME] [--service-instance SERVICE_INSTANCE] [--region REGION] [--resource-type RESOURCE_TYPE] [--resource RESOURCE] [--resource-group-name RESOURCE_GROUP_NAME] [--resource-group-id RESOURCE_GROUP_ID]}

Where valid roles are Reader, Writer, and Manager.

For example, you can run the following command to grant a user reader permissions:

ibmcloud iam access-group-policy-create my-access-group --roles Reader --service-name my-monitoring-instance --service-instance 99999999-9999-9999-999999





 Add permissions through the UI 

Complete the following steps to assign a policy to an access group through the UI:



1. From the menu bar, click Manage > Access (IAM), and select Access Groups.
2.
Expression language methods for actions 

The Watson Assistant expression language can be used to specify values that are independent of, or derived from, values that are collected in steps or stored in session variables. You can use an expression to define a step condition or to define the value of a session variable.

The Watson Assistant expression language is based on the Spring Expression Language (SpEL), but with some important differences in syntax. For detailed background information about SpEL, see [Spring Expression Language (SpEL)](https://docs.spring.io/spring-framework/docs/5.2.13.RELEASE/spring-framework-reference/core.htmlexpressions).

You can use SpEL expressions in two ways:



* Defining a step condition. For more information, see [Writing expressions](https://cloud.ibm.com/docs/watson-assistant?topic=watson-assistant-expressions).
* Assigning a value to a session variable. For more information, see [Using variables to manage conversation information](https://cloud.ibm.com/docs/watson-assistant?topic=watson-assistant-manage-info).





 Referencing action variables 

An action variable is created implicitly for any step that expects customer input, and the variable is bound to the step. To reference an action variable inside an expression, you must specify the step ID using the format ${step_id} (for example, ${step_771}. To find the step ID for a step, select the step and then look at the end of the URL in your browser.





 Referencing session variables 

Session variables are created explicitly in the Variables section of the step. To reference a session variable inside an expression, you must specify the variable ID using the format ${variable_id} (for example, ${current_time}. You can find the variable ID in the list of variables. (For more information, see [Using variables to manage conversation information](https://cloud.ibm.com/docs/watson-assistant?topic=watson-assistant-manage-info).)

When you are editing an expression, you can type $ to see a drop-down list of variables you can reference.
Example output

ok: got package assistant-v1, displaying field parameters
[
{
"key": "__bx_creds",
"value": {
"conversation": {
"credentials": "Credentials-1",
"instance": "Watson Assistant (formerly Conversation)-8h",
"password": "AAAA0AAAAAAA",
"url": "https://gateway.watsonplatform.net/assistant/api",
"username": "00a0aa00-0a0a-12aa-1234-a1a2a3a456a7"
}
}
}
]







 Installing from the Cloud Functions console 

Install the Watson Assistant package from the console.



1. In the Cloud Functions console, go to the [Create page](https://cloud.ibm.com/functions/create).
2. Select the namespace that you want to install the package into.
3. Click Install Packages.
4. Click on the Watson package group.
5. Click on the Watson Assistant Package.
6. Click Install.
7. After the package is installed you are redirected to the Actions page and can search for your new package, which is named assistant-v1.
8. To use the Actions in the assistant-v1 Package, you must bind service credentials to the actions.



* To bind service credentials to all actions in the package, follow steps 4 and 5 in the [CLI instructions](https://cloud.ibm.com/docs/openwhisk?topic=openwhisk-pkg_watson_assistantconversation_cli).
* To bind service credentials to individual actions, complete the following steps in the console.



You must complete the following steps for each action that you want to use.



1. Click on an action from the assistant-v1 Package that you want to use. The details page for that action opens.
2. In the left navigation, click on the Parameters section.
For the transferTarget parameter, use the DID number you created in Genesys Cloud, as well as the inbound SIP URI from your Genesys trunk. Use the following format:

sip:+18883334444\@example.com

Make sure you use the \ escape characters so Watson Assistant does not misinterpret the @ as part of the entity shorthand syntax.
5. Make a test call and say something that initiates a transfer to an agent. In your Genesys Cloud console, you should see the transfer take place.





 Share the conversation history with service desk agents 

To enable the service desk agent to get a quick view of the conversation history between the visitor and the assistant, set up the Watson Assistant Agent App app for your Genesys Pure Cloud Environment. For more information, see the documentation for the [Genesys starter kit](https://github.com/watson-developer-cloud/assistant-web-chat-service-desk-starter/tree/main/src/genesys/agentApp).
* UI
* CLI
* API







 Configuring route filters 

You can configure route filters using the UI, CLI, and API.



 Before you begin 

Before configuring a route filter, review the following information:



* The prefix must be an IPv4 subnet CIDR indicating both the address and mask length.
* [Route filtering examples](https://cloud.ibm.com/docs/dl?topic=dl-route-filtering-examples&interface=ui)
* You can configure a maximum of 15 import/export route filters per direct link. To increase this quota for Direct Link Connect or Direct Link Dedicated, [contact IBM Support](https://cloud.ibm.com/unifiedsupport/cases/form).







 Configuring route filters in the UI 

To create and configure route filters on a provisioned gateway, follow these steps:



1. Log in to the [Direct Link console](https://cloud.ibm.com/interconnectivity/direct-link), then click the Direct Link name in the table to show its details.
2. Click the BGP tab, then click Route filters. Alternatively, you can use the Route filters shortcut.
3. Depending on the route filter that you want to configure, click Import route filters or Export route filters.
4. For Default, specify to permit or deny all routes not specified by a route filter.
5. To create filters to add to the list, or to prioritize filters, click Configure filters.
6. Save your configuration. You are returned to the Details page where your route configuration is displayed.







 Configuring route filters from the CLI
* The name must be 253 characters or fewer and can contain lowercase letters, numbers, periods (.), and hyphens (-).



This value is required.

--topic, -t
: Set a topic in the Kafka source. Topics are used to filter messages to consume. This option can be specified multiple times. This value is required.

--consumer-group, --cg
: The name of the consumer group for events. This value is optional.

--destination-type, --dt
: The type of the destination. Valid values are app and job. This value is optional. The default value is app.

--extension, --ext
: Set CloudEvents extensions to send to the destination. Must be in NAME=VALUE format. This action adds a new CloudEvents extension or overrides an existing CloudEvent attribute. Specify one extension per --extension option; for example, --ext extA=A --ext extB=B. This value is optional.

--force, -f
: Force to create a Kafka event subscription. This option skips the validation of the specified destination and secret. This value is optional. The default value is false.

--no-wait, --nw
: Create the Kafka event subscription and do not wait for the subscription to be ready. If you specify the --no-wait option, the subscription create begins and does not wait. Use the subscription kafka get command to check the subscription status. This value is optional. The default value is false.

--output, -o
: Specifies the format of the command output. Valid values are json, yaml, jsonpath=JSONPATH_EXPRESSION, and jsonpath-as-json=JSONPATH_EXPRESSION. Use jsonpath to specify the path to an element of the JSON output. This value is optional.

--password, -p
: The password that is used to authenticate to the Kafka instance.
* The name must be 253 characters or fewer and can contain lowercase letters, numbers, periods (.), and hyphens (-).



This value is required.

--topic, -t
: Set a topic in the Kafka source. Topics are used to filter messages to consume. This option can be specified multiple times. This value is required.

--consumer-group, --cg
: The name of the consumer group for events. This value is optional.

--destination-type, --dt
: The type of the destination. Valid values are app and job. This value is optional. The default value is app.

--extension, --ext
: Set CloudEvents extensions to send to the destination. Must be in NAME=VALUE format. This action adds a new CloudEvents extension or overrides an existing CloudEvent attribute. Specify one extension per --extension option; for example, --ext extA=A --ext extB=B. This value is optional.

--force, -f
: Force to create a Kafka event subscription. This option skips the validation of the specified destination and secret. This value is optional. The default value is false.

--no-wait, --nw
: Create the Kafka event subscription and do not wait for the subscription to be ready. If you specify the --no-wait option, the subscription create begins and does not wait. Use the subscription kafka get command to check the subscription status. This value is optional. The default value is false.

--output, -o
: Specifies the format of the command output. Valid options are json, yaml, jsonpath=JSONPATH_EXPRESSION, and jsonpath-as-json=JSONPATH_EXPRESSION. Use jsonpath to specify the path to an element of the JSON output. This value is optional.

--password, -p
: The password that is used to authenticate to the Kafka instance.
ibmcloud ks logging filter rm 

Virtual Private Cloud

Classic infrastructure

Delete a logging filter.

ibmcloud ks logging filter rm --cluster CLUSTER [--id FILTER_ID] [--all] [--force-update] [-q]

Minimum required permissions
: Editor platform access role for the cluster in IBM Cloud Kubernetes Service

Command options:

-c, --cluster CLUSTER
: The name or ID of the cluster that you want to delete a filter from.

--id FILTER_ID
: The ID of the log filter to delete.

--all
: Optional: Delete all your log forwarding filters.

--force-update
: Force your Fluentd pods to update to the latest version. Fluentd must be at the latest version to change your logging configurations.

-q
: Optional: Do not show the message of the day or update reminders.



 Example logging filter rm command 

ibmcloud ks logging filter rm --cluster mycluster --id 885732







 ibmcloud ks logging filter update 

Virtual Private Cloud

Classic infrastructure

Update a logging filter.

ibmcloud ks logging filter update --cluster CLUSTER --id FILTER_ID --type LOG_TYPE [--logging-config CONFIG] [--namespace KUBERNETES_NAMESPACE] [--container CONTAINER_NAME] [--level LOGGING_LEVEL] [--message MESSAGE] [--regex-message MESSAGE] [--force-update] [--output json] [-q]

Minimum required permissions
: Editor platform access role for the cluster in IBM Cloud Kubernetes Service

Command options:

-c, --cluster CLUSTER
: Required: The name or ID of the cluster that you want to update a logging filter for.

--id FILTER_ID
: The ID of the log filter to update.

--type LOG_TYPE
: The type of logs that you want to apply the filter to. Currently all, container, and host are supported.

-lc, --logging-config CONFIG
About route filtering 

You can configure both import and export filters for a direct link.



*  Import route filters apply to on-premises routes that are learned by the direct link and advertised to the gateway's virtual connections. If a route is denied by an import filter, it is not added to the direct link's routing table.
*  Export route filters apply to the virtual connection routes learned by the direct link. These filters determine which routes get advertised to the on-premises network. If a route is denied by an export filter, it is included in the direct link's routing table, but is not advertised to the customer edge router (CER).



You can apply multiple filters of either direction to a direct link. You must first create the filters, then order them within the import or export route filter list. The decision to permit or deny a given route is determined by the first matching filter in the filter list. If no filter is matched, the default filter of the direction is applied.

Route filter configurations do not act as a firewall. Route filters affect only the subnets that are learned by the on-premises network. Route filters don't affect the addresses within the subnet after it's learned.

Route filters include a prefix (an address and mask length), an optional minimum matching length (GE, greater than or equal to), and a maximum matching length (LE, less than or equal to). Combined, these values comprise the prefix match specifications of the route filter and determine if the filter will apply to a given route.



  Related links 



*  [Configuring route filters](https://cloud.ibm.com/docs/dl?topic=dl-configure-route-filters)
*  [Route filtering examples](https://cloud.ibm.com/docs/dl?topic=dl-route-filtering-examples)
*  [Filtering routes using Transit Gateway prefix filtering](https://cloud.ibm.com/docs/dl?topic=dl-prefix-filtering)
You can decide how the emails are sent, use your own domain name, and define your sender details. With custom email settings, you can reduce the chances of an email getting filtered as spam while also furthering brand recognition for your application.

A direct connection to your email provider can help you to get information about individual messages such as the number of people that open the emails and which messages were not delivered. You can also see overall statistics that you can use to better manage your email campaigns.



 Configuring a custom provider with the GUI 

You can use the service dashboard to configure your custom provider.



1. Go to the Cloud Directory > Email templates > Email settings page of the service dashboard.
2. Select Custom. The information that you need to input appears.
3. In Webhook, enter your custom extension URL.
4. Select an Authorization type. You can choose from the following options:



* None: The webhook endpoint or URL, does not require an authorization header.
* Basic: The webhook endpoint requires an HTTP authorization header with every request in the form of a username and password.
* Authorization headers: The webhook request requires that you pass the authorization information for your endpoint in an HTTP authorization. For example, you might pass an OAuth 2.0 token: Authorization: Bearer eyJraWQiOiIyMDIwMDEyNTE2MzMiLCJhbGciOiJSUzI1NiJ9.eyJpYW1faWQiOiJJ.



5. Configure your Sender details.



1. In From, enter the email address that you want users to receive your emails from.
2. In Sender name, enter the name that you want associated with the "From" email.
3. In Reply-to, enter the email address where you want to receive any replies to the email.



6. Click Test to try your configuration with a test email.
7. Click Save to enable your configuration.







 Configuring a custom provider with the API
version <br>Required <br>string Requests the version of the API as of a date in the format YYYY-MM-DD. Any date up to the current date may be provided. Specify the current date to request the latest version. <br>Possible values: Value must match regular expression ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ 







 Example request 

This example illustrates deleting a prefix filter from a connection:

curl -X DELETE --location --header "Authorization: Bearer {iam_token}" "{base_url}/transit_gateways/{transit_gateway_id}/connections/{id}/prefix_filters/{filter_id}?version={version}"

curl -X DELETE "https://transit.cloud.ibm.com/v1/transit_gateways/9f559c43-63f4-4da5-b306-b525a8ddb275/connections/6c1bdc19-4adb-4550-8cdc-ef3b74b739f8/prefix_filters/a4aad53e-5828-4ac1-8dad-a08d940772d4?version=2020-03-31" -H "Authorization: Bearer $iam_token" -H "Content-Type: application/json"





 Response 

The following response details show after you initiate the request:



Table 8. Response details for deleting prefix filters

 Status code Details 

 204 Prefix filter deleted successfully. 
 404 Prefix filter with the specified identifier could not be found. 







 Example response 

This example illustrates the response that a prefix filter with the specified ID could not be found:

{
"errors": [
{
"code": "not_found",
"message": "Cannot find Prefix Filter",
"more_info": "https://cloud.ibm.com/apidocs/transit-gatewayerror-handling"
}
],
"trace": "request_id"
}
For more information, see [Checking user permissions](https://cloud.ibm.com/docs/satellite?topic=satellite-iam-assign-accesschecking-perms).





 Command options 

--filter FILTER
: Optional. Filter results by a cluster property. Currently, the only supported cluster property is the cluster ID.

--limit NUMBER
: Optional. Limit the number of clusters that are returned. The default value is 50.

-q
: Optional. Do not show the message of the day or update reminders.





 Example 

ibmcloud sat cluster ls







 ibmcloud sat cluster register 

Get a kubectl command to run in your cluster to install the Satellite Config agent. The Satellite Config agent is automatically installed in clusters that you run in your Satellite location. For all clusters that run in IBM Cloud, you must use this command to install the Satellite Config agent so that you can include these clusters in Satellite configurations. After you get the command, [log in to your cluster](https://cloud.ibm.com/docs/openshift?topic=openshift-access_clusteraccess_public_se) and run the command.

ibmcloud sat cluster register --name NAME [--silent] [-q]



 Minimum required permissions 

IBM Cloud IAM Operator platform role for the Cluster resource in Satellite. For more information, see [Checking user permissions](https://cloud.ibm.com/docs/satellite?topic=satellite-iam-assign-accesschecking-perms).





 Command options 

--name NAME
: The name of the cluster that you want to register.

--silent
: Optional. Return only the registration command in the CLI output.

-q
: Optional. Do not show the message of the day or update reminders.





 Example 

ibmcloud sat cluster register --name mycluster







 ibmcloud sat cluster unregister 

Unregister a cluster from the Satellite Config component.
Table filters require that you query at least one node. The AND operator can be used to create and combine multi-node filters.





 Accounts filter 

Account level filtering is supported, and there is a required filter parameter. For example:

accounts(filter: {accountTag: $accountTag}) {
...
}





 Operators 

Operator support varies, depending on the node type and node name. The following operators are supported for all types:



Table 4. Supported operators

 Operator Comparison 

 gt greater than 
 lt less than 
 geq greater or equal to 
 leq less or equal to 
 neq not equal 
 in in 







 Examples 

General example:

{
myQuery(
filter: {
clientCountry: "UK" all objects having client country equal to "UK"
datetime_gt: "2020-01-01 10:00:00" all object having datetime greater than "2020-01-01 10:00:00"
}
)
}

Filter a specific node:

httpRequests1hGroups(filter: {datetime: "2020-01-01 10:00:00"}) {
...
}

Filter on multiple fields:

httpRequests1hGroups(filter: {datetime_gt: "2018-01-01 10:00:00", datetime_lt: "2018-01-01 11:00:00"}) {
...
}

Filter using OR operator:

httpRequests1hGroups(filter: {
datetime: "2020-01-01 10:00:00",
OR:[{clientCountryName: "US"}, {clientCountryName: "UK"}]) {
...
}
GET /$DATABASE/_changes?feed=continuous&include_docs=true&since=now HTTP/1.1
Host: $SERVICE_URL
Authorization: ...

See the following example that uses the command line to supply since=now to join a _changes feed at the current moment in time:

curl "$SERVICE_URL/$DATABASE/_changes?feed=continuous&include_docs=true&since=now"

Accessing the _changes data programmatically is straightforward. For example, see the SDK examples in the [IBM Cloudant API docs](https://cloud.ibm.com/apidocs/cloudantpostchanges-databases) to follow changes with a few lines of code.

The following list includes some example use cases:



* Adding items to a message queue to trigger actions within your application, such as sending a customer email.
* Update an in-memory database to record live counts of activity.
* Writing data to a text file to push data into an SQL database.



The changes feed can be filtered with a filter function, by using a similar technique to [filtering during replication](https://cloud.ibm.com/docs/Cloudant?topic=Cloudant-replication-guidefiltered-replications-repl-guide).

See the following example that uses HTTP to filter the changes feed:

GET /$DATABASE/_changes?feed=continuous&include_docs=true&since=now&filter=mydesigndoc/myfilter HTTP/1.1
Host: $SERVICE_URL
Authorization: ...

See the following example that uses the command line to filter the changes feed:

curl "$SERVICE_URL/$DATABASE/_changes?feed=continuous&include_docs=true&since=now&filter=mydesigndoc/myfilter"

The ordering of documents within the _changes feed is not always the same. In other words, changes might not appear in strict time order. The reason is that data is returned from multiple IBM Cloudant nodes, and eventual consistency rules apply.





 Replication pitfalls