vania-janet/multiturn-rag-retrieval-data huggingface dataset:
Since there is no SAN in the cert, it sees it as a bad connection and fails the SSL handshake.





 How to fix it 

You can disable the Reject unauthorized of the destiantion, or upload the correct certificate as mentioned below:

If you look at the error message it does not say CN, (e.g. [ERROR] Connection ## had error: Host: . is not cert's CN: ), but the cert's list, which leads me to believe you have generated your self-signed cert incorrectly. The problem is that the cert was generated using an FQDN or CN with an IP_Address, this will not work since IP addresses are only supported when using SAN.

Method for generating a certificate with an IP as the CN with openssl:



1. Create an openssl config file, I copied mine from /usr/lib/ssl/openssl.cnf
2. Add an alternate_names section to the file like below:

[ alternate_names ]

IP.1 = <my application's ip>
3. In the [ v3_ca ] section, add this line:

subjectAltName = @alternate_names
4. Under the CA_default section, uncomment copy_extensions (extension copying option: use with caution):

copy_extensions = copy
5. Generate the private key

openssl genrsa -out private.key 3072
6. Generate the certificate with options about organization

openssl req -new -x509 -key private.key -sha256 -out certificate.pem -days 730 -config
7. Combine the files

cat private.key certificate.pem > SAN.pem
8. Load the SAN.pem file into your destination as the client-TLS cert.
9. Load the SAN.pem file into your on-premises application and restart.
10. Your destination can be configured for either TCP, HTTP or HTTPS and you cloud side application should now be able to connect to your on-premises application.
max_response_milliseconds Object Maximum latency for services used during the call. See [max_response_milliseconds](https://cloud.ibm.com/docs/watson-assistant?topic=watson-assistant-cdr-log-referencecdr-log-reference-max_response_milliseconds). 
 assistant_interaction_summaries Array Details about the Watson Assistant interactions that took place during the call. See [assistant_interaction_summaries](https://cloud.ibm.com/docs/watson-assistant?topic=watson-assistant-cdr-log-referencecdr-log-reference-assistant_interaction_summaries). 
 injected_custom_data Object A set of key/value pairs extracted from the cdr_custom_data context variable. 
 warnings_and_errors Array Any warnings or errors that were logged during the call. See [warnings_and_errors](https://cloud.ibm.com/docs/watson-assistant?topic=watson-assistant-cdr-log-referencecdr-log-reference-warnings_and_errors). 
 realtime_transport_network_summary Object Statistics for the inbound stream in the inbound_stream object and statistics for the outbound stream in the outbound_stream object. Included only if RTCP is enabled. See [realtime_transport_network_summary](https://cloud.ibm.com/docs/watson-assistant?topic=watson-assistant-cdr-log-referencecdr-log-reference-realtime_transport_network_summary). 





 call 

The call object contains the following properties:



Properties of the call object

 Property Type Description 

 start_timestamp String The time when the call started, in ISO format (yyyy-MM-ddTHH:mm:ss.SSSZ). 
 stop_timestamp String The time when the call ended, in ISO format (yyyy-MM-ddTHH:mm:ss.SSSZ). 
 milliseconds_elapsed Number The duration of the call, in milliseconds. 
 end_reason string The reason the call ended.
R ɜ<br><br>ɜː<br><br>ɚ<br><br>ɝ 025C<br><br>025C+02D0<br><br>025A<br><br>025D butter, hurt 







 Diphthongs 



Table 2. Diphthongs (UK English)

 SPR symbol IPA symbol IPA Unicode Example words 

 O ɔɪ 0254+026A toil, boy 
 W aʊ 0061+028A out, cow 
 Y aɪ 0061+026A life, fine 







 Reduced vowels 



Table 3. Reduced vowels (UK English)

 SPR symbol IPA symbol IPA Unicode Example words 

 x ə 0259 sofa, alone, suppose, America 
 X i<br><br>ɨ 0069<br><br>0268 roses, hinted 







 Consonants 



Table 4. Consonants (UK English)

 SPR symbol IPA symbol IPA Unicode Example words 

 b b 0062 bad, sob 
 C tʃ<br><br>ʧ 0074+0283<br><br>02A7 chip, witch, nature 
 d d 0064 dip, had 
 D ð 00F0 this, breathe 
 f f 0066 field, if, graph 
 g g<br><br>ɡ 0067<br><br>0261 good, bug 
 G ŋ 014B sing, finger 
 h h<br><br>x<br><br>χ<br><br>ɦ 0068<br><br>0078<br><br>03C7<br><br>0266 hot, hero 
 J dʒ<br><br>ʤ 0064+0292<br><br>02A4 Jane, huge 
 k k 006B kill, make, back 
 l l 006C low, hall 
 L l̩ 006C+0329 candle 
 m m 006D man, hum, summer 
 n n 006E never, sun, winner 
 p p 0070 pit, rip
W w̃ 0077+0303 capitão, São 







 Consonants 



Table 3. Consonants (Brazilian Portuguese)

 SPR symbol IPA symbol IPA Unicode Example words 

 b b 0062 abraço, Brasil 
 C tʃ<br><br>ʧ 0074+0283<br><br>02A7 sete, bote 
 d d 0064 dar, dente 
 f f 0066 flauta, faixa 
 g g 0067 <br>0261 gato, guarda 
 J dʒ<br><br>ʤ 0064+0292<br><br>02A4 bode, diz 
 k k 006B cama, queda 
 l l 006C leite, cavalo 
 'ly' ʎ 028E lhe, bagulho 
 m m 006D forma, macaco 
 n n 006E dono, novo 
 N ɲ 0272 cunha, ninho 
 p p 0070 pluma, primo 
 r ɾ 027E caro, trem 
 R ʁ 0281 carro, rio 
 s s 0073 certo, avançar, sete 
 S ʃ 0283 chave, baixa 
 t t 0074 trono, porta 
 v v 0076 vila, breve 
 z z 007A zero, caso 
 Z ʒ 0292 geral, jogo
"rev":"2-ff7b85665c4c297838963c80ecf481a3"
},
{
"ok":true,
"id":"5a049246-179f-42ad-87ac-8f080426c17c",
"rev":"2-9d5401898196997853b5ac4163857a29"
},
{
"ok":true,
"id":"d1f61e66-7708-4da6-aa05-7cbc33b44b7e",
"rev":"2-cbdef49ef3ddc127eff86350844a6108"
}
]
Show more





 Deleting documents in bulk 

To delete a document from the database, you must provide the ID and the revision of a specific document with the "_deleted": true field.

See an example JSON structure to request bulk delete of two documents:

The return JSON structure summarizes the deleted documents, with the new revision and ID information.

{
"docs": [
{
"_id": "person34567",
"_deleted": true,
"_rev": "2-54dd23d6a630d0d75c2c5d4ef894454e"
},
{
"_id": "person568",
"_deleted": true,
"_rev": "3-8a245604ee5e829d7fbd1b456aed01ac"
}
]
}

See an example JSON structure that is returned after bulk delete:

[
{
"ok": true,
"id": "person34567",
"rev": "3-674ccbb6ec6fe6d7ba0fb30a5eecf664"
},
The Terraform execution plan summarizes all the actions that need to be run to create the Activity Tracker instance, the resource Key, and IAM access policy in your account.

./terraform plan
3. Create the resources.

./terraform apply



Next, you can:



* [Monitor archiving with Activity Tracker](https://cloud.ibm.com/docs/activity-tracker?topic=activity-tracker-archiving-la-monitor).
* [Monitoring archiving by using IBM Cloud Monitoring](https://cloud.ibm.com/docs/activity-tracker?topic=activity-tracker-archiving-monitor).







 Removing the archiving configuration 

Complete the following steps from the directory where you have the terraform script that you use to configure archiving:



1. Initialize the Terraform CLI.

./terraform init
2. Create a Terraform execution plan. The Terraform execution plan summarizes all the actions that need to be run to create the Activity Tracker instance, the resource Key, and IAM access policy in your account.

./terraform plan
3. Delete the configuration.

./terraform destroy
"X-Request-Id": ["37b94c40-a4bf-4942-a0da-45dc5434d610"],
"X-Xss-Protection": ["1; mode=block"]
},
"Result": {

"errors": [{

"code": "bad_field",
"message": "Failed to attach public gateway of different zone to the subnet",
"target": {

"name": "public_gateway.id",
"type": "field",
"value": "r010-2df568da-f87e-468d-9696-27b05e126179"
}
}],
"trace": "37b94c40-a4bf-4942-a0da-45dc5434d610"
},
"RawResult": null
}


The Zones can have multiple subnets, but you need at least one subnet per zone for IP distribution. One subnet can be part of only one zone. Public gateway can be attached to one or more subnets (of the same zone). Each zone has only one public gateway.
* How can I resolve the unexpected HTTP status code 502 (502 Bad Gateway) null error when deploying an instance of IBM Cloud Database RabbitMQ by using Terraform?

The sample Terraform configuration with the default memory and disk allocation size for RabbitMQ resource

resource "ibm_database" "messages-for-rabbitmq" {
name = "rabbitmq"
plan = "standard"
location = "eu-de"
service = "messages-for-rabbitmq"
resource_group_id = data.ibm_resource_group.resource_group.id
adminpassword = "password12"
members_memory_allocation_mb = 2048
members_disk_allocation_mb = 1024

service_endpoints = var.service_endpoints
}
"X-Request-Id": ["37b94c40-a4bf-4942-a0da-45dc5434d610"],
"X-Xss-Protection": ["1; mode=block"]
},
"Result": {

"errors": [{

"code": "bad_field",
"message": "Failed to attach public gateway of different zone to the subnet",
"target": {

"name": "public_gateway.id",
"type": "field",
"value": "r010-2df568da-f87e-468d-9696-27b05e126179"
}
}],
"trace": "37b94c40-a4bf-4942-a0da-45dc5434d610"
},
"RawResult": null
}

Show more

The Zones can have multiple subnets, but you need at least one subnet per zone for IP distribution. One subnet can be part of only one zone. Public gateway can be attached to one or more subnets (of the same zone). Each zone has only one public gateway.





 How can I resolve the unexpected HTTP status code 502 (502 Bad Gateway) null error when deploying an instance of IBM Cloud Database RabbitMQ by using Terraform? 

The sample Terraform configuration with the default memory and disk allocation size for RabbitMQ resource

resource "ibm_database" "messages-for-rabbitmq" {
name = "rabbitmq"
plan = "standard"
location = "eu-de"
service = "messages-for-rabbitmq"
resource_group_id = data.ibm_resource_group.resource_group.id
adminpassword = "password12"
members_memory_allocation_mb = 2048
members_disk_allocation_mb = 1024

service_endpoints = var.service_endpoints
}
External connectivity can be achieved by using a public gateway that is attached to a subnet, or a floating IP address that is attached to a virtual server instance. Use a public gateway for source network address translation (SNAT) and a floating IP for destination network address translation (DNAT).

Table 1 summarizes the differences between the options:



Table 1. External connectivity options

 Public gateway Floating IP 

 Instances can initiate connections to the internet, but they can't receive connections from the internet. Instances can initiate or receive connections to or from the internet 
 Provides connectivity for an entire subnet Provides connectivity for a single instance 



For secure external connectivity, use the VPN service to connect your VPC to another network. For more information about VPNs, see [Using VPN with your VPC](https://cloud.ibm.com/docs/vpc?topic=vpc-using-vpn).



 Use a public gateway for external connectivity of a subnet 

A Public Gateway enables a subnet and all its attached virtual server instances to connect to the internet. Subnets are private by default. After a subnet is attached to the public gateway, all instances in that subnet can connect to the internet. Although each zone has only one public gateway, the public gateway can be attached to multiple subnets.

Public gateways use Many-to-1 NAT, which means that thousands of instances with private addresses use one public IP address to communicate with the public internet.

The following figure summarizes the current scope of gateway services.



Table 2. Current scope of gateway services

 SNAT DNAT ACL VPN 

 Instances can have outbound-only access to the internet. Allow inbound connectivity from the internet to a Private IP. Provide restricted inbound access from the internet to instances or subnets. Site-to-site VPN handles customers of any size, and single or multiple locations. 
 Entire subnets share the outbound public endpoint. Provides limited access to a single private server. Restrict access inbound from internet, based on service, protocol, or port. High throughput (up to 10 Gbps) provides customers the ability to transfer large data files securely and quickly.
],

"yeah",
1.66,
2.02
],

"how's",
2.15,
2.44
],

"Billy",
2.45,
3.03
],

"good",
3.57,
3.95
]
]
"confidence": 0.82,
"transcript": "hello yeah yeah how's Billy good "
}
],
"final": true
}
],
"speaker_labels": [
{
"from": 0.28,
"to": 0.79,
"speaker": 2,
"confidence": 0.52,
"final": false
},
{
"from": 1.07,
"to": 1.53,
"speaker": 1,
"confidence": 0.63,
"final": false
},
{
"from": 1.66,
"to": 2.02,
"speaker": 2,
"confidence": 0.54,
"final": false
},
{
"from": 2.15,
"to": 2.44,
"speaker": 2,
"confidence": 0.51,
"final": false
},
{
"from": 2.45,
"to": 3.03,
"speaker": 2,
"confidence": 0.55,
"final": false
},
{
"from": 3.57,
"to": 3.95,
"speaker": 1,
"confidence": 0.63,
"final": true
}
]
}
Show more

The transcript field shows the final transcript of the audio, which lists the words as they were spoken by all participants.
To check the routing table of T0, use the NSX-T GUI or login to NSX-T edge node and its T0 Service Router (SR) VRF.







 Ingress private connectivity with gateway cluster 

Private ingress connectivity to NSX-T overlay is enabled through NAT or though using overlay tunnels. You can use IP addresses from the private portable subnet that is provisioned for T0 private uplinks for these use cases. With Juniper vSRX running on the [gateway cluster](https://cloud.ibm.com/docs/vmwaresolutions?topic=vmwaresolutions-vc_orderinginstance-addl-clustersvc_orderinginstance-addl-clusters-gate), you can alternatively route portable IP addresses to the T0 HA VIP and use the portable IP subnets in the overlay.

Zoom

![Private ingress access to IBM Cloud NSX-T overlay with gateway cluster](https://cloud.ibm.com/docs-content/v1/content/5bdb37c0149145723c5437e8176651928565e722/vmwaresolutions/images/arch-pattern-nsx-t-private-access-ingress-vsrx.svg)

Figure 3. Private ingress access to IBM Cloud NSX-T overlay with gateway cluster

The following list summarizes this architecture pattern deployment.



1. The automation deploys an NSX-T T0 Gateway in the NSX-T workload edge cluster. The T0 gateway provides connectivity to IBM Cloud private network. With gateway cluster, this uplink VLAN can be routed through the firewall, for example Juniper vSRX.
2. The automation deploys an example NSX-T overlay topology with a T1 Gateway and a few example segments attached both to the T1 and T0 Gateways. You can customize the topology based on your needs.
3. Workload T0 Gateway has a private uplink that is attached to the IBM Cloud private VLAN with three IP addresses, two for uplinks in edge 1 and edge 2 and one for HA VIP.
"_rev": "1-54dd23d6a630d0d75c2c5d4ef894454e"
},
{
"name": "Taylor",
"age": 50,
"gender": "female",
"_id": "5a049246-179f-42ad-87ac-8f080426c17c",
"_attachments": {

},
"_rev": "1-0cde94a828df5cdc0943a10f3f36e7e5"
},
{
"name": "Owen",
"age": 51,
"gender": "female",
"_id": "d1f61e66-7708-4da6-aa05-7cbc33b44b7e",
"_attachments": {

},
"_rev": "1-a2b6e5dac4e0447e7049c8c540b309d6"
}
]
}
Show more

The return JSON structure summarizes the updated documents, with the new revision and ID information.

See an example JSON structure that is returned after bulk update:

[
{
"ok":true,
"id":"96f898f0-f6ff-4a9b-aac4-503992f31b01",
"rev":"2-ff7b85665c4c297838963c80ecf481a3"
},
{
"ok":true,
"id":"5a049246-179f-42ad-87ac-8f080426c17c",
"rev":"2-9d5401898196997853b5ac4163857a29"
},
{
"ok":true,
IBM has since transitioned to a new architecture for its gateways that leverages SR-IOV on the host. This caused the vSRX configuration’s interface mapping to change in many cases. Differences in the interface configuration are also influenced by whether the vSRX is:



* 10G or 1G
* Standalone or High Availability
* Public and Private, or Private Only
* The vSRX Version



* All 15.1 based vSRX’s use the legacy architecture
* Some 18.4 based vSRX’s also use the legacy architecture





Both the legacy and current architecture is detailed in the following sections.



 vSRX High Availability interfaces (current architecture) 



Table 2: vSRX High Availability interfaces (current architecture)

 Interface 10G Pub+Priv 10G Priv Only 1G Pub+Priv 1G Priv Only 

 ge-0/0/0 fab0 fab0 fab0 fab0 
 ge-0/0/1 reth0 reth0 reth0 reth0 
 ge-0/0/2 reth0 reth0 reth0 reth0 
 ge-0/0/3 reth1 reth2 reth1 reth2 
 ge-0/0/4 reth1 reth2 reth1 reth2 
 ge-0/0/5 reth2 fab0 reth2 fab0 
 ge-0/0/6 reth2 Does Not Exist reth2 Does Not Exist 
 ge-0/0/7 reth3 Does Not Exist reth3 Does Not Exist 
 ge-0/0/8 reth3 Does Not Exist reth3 Does Not Exist 
 ge-0/0/9 fab0 Does Not Exist fab0 Does Not Exist 
 ge-7/0/0 fab1 fab1 fab1 fab1 
 ge-7/0/1 reth0 reth0 reth0 reth0 
 ge-7/0/2 reth0 reth0 reth0 reth0 
 ge-7/0/3 reth1 reth2 reth1 reth2 
 ge-7/0/4 reth1 reth2 reth1 reth2
The Terraform execution plan summarizes all the actions that are done to create the virtual private cloud instance in your account.

terraform plan --out plan1

You must enter an SAP main password and your API key.

The SAP main password must be 10 - 14 characters long and contain at least one digit (0-9). It can contain only the following characters: a-z, A-Z, 0-9, @, #, $, _. This password cannot contain !. It must not start with a digit or an underscore ( _ ).
7. Verify that the plan shows all of the resources that you want to create and that the names and values are correct. If the plan needs to be adjusted, edit the input.auto.tfvars file to correct resources and run terraform plan again.
8. Create the virtual private cloud for SAP instance and IAM access policy in IBM Cloud.

terraform apply "plan1"

The virtual private cloud and components are created and you see output similar to the terraform plan output.
9. Add the SAP credentials and the virtual server instance IP to the SAP GUI. For more information about the SAP GUI, see [SAP GUI](https://help.sap.com/doc/7abd5470728810148a4b1a83b0e91070/1511%20000/en-US/frameset.htm).







 Next steps 

If you need to rename your resources after they are created, modify the input.auto.tfvars file to change the names and run terraform plan and terraform apply again. Do not use the IBM Cloud Dashboard and user interface to modify your VPC after it is created. The Terraform scripts create a complete solution and selectively modifying resources with the user interface might cause unexpected results.

If you need to remove the SAP NetWeaver 7.x and Db2 distributed installation, go to your project folder and run terraform destroy. The terraform destroy command does not remove the VPC in this scenario because the VPC was not created with the Terraform scripts.





 Related information
Downloading fixes and updates 

You must use the AIX [Service Update Management Assistant (SUMA)](https://www.ibm.com/support/knowledgecenter/ssw_aix_72/install/serv_update_mgt.html) or the IBM i Send PTF Order (SNDPTFORD) command to download fixes and updates from the IBM Fix Central website.

If you'd like to download fixes and updates, you must perform one of the following:



* Put your virtual machine (VM) on the public network. You can add a public network [during](https://cloud.ibm.com/docs/power-iaas?topic=power-iaas-creating-power-virtual-serverconfiguring-instance) or [after](https://cloud.ibm.com/docs/power-iaas?topic=power-iaas-modifying-serveradding-removing-network) the provisioning stage. Depending on your VM, see the [SUMA tasks and the command line](https://cloud.ibm.com/docs/power-iaas?topic=power-iaas-downloading-fixes-updatessuma-tasks-cli) section for information on the suma command or the [SNDPTFORD command](https://cloud.ibm.com/docs/power-iaas?topic=power-iaas-downloading-fixes-updatessndptford-command).
* Set up another VM as an AIX [NIM server](https://cloud.ibm.com/docs/power-iaas?topic=power-iaas-provisioning-nim) or an IBM i [Network installation Server](https://cloud.ibm.com/docs/power-iaas?topic=power-iaas-downloading-fixes-updatesibmi-network-server).
* Set up another public-facing VM with an [HTTP/HTTPS proxy](https://cloud.ibm.com/docs/power-iaas?topic=power-iaas-downloading-fixes-updatesconfiguring-suma).





 Ordering fixes and updates for AIX VMs
R ə˞<br><br>ɚ<br><br>ɜː<br><br>ɝ 0259+02DE<br><br>025A<br><br>025C+02D0<br><br>025D butter, hurt 







 Diphthongs 



Table 2. Diphthongs (US English)

 SPR symbol IPA symbol IPA Unicode Example words 

 O ɔɪ 0254+026A toil, boy 
 W aʊ 0061+028A out, cow 
 Y aɪ 0061+026A life, fine 







 Reduced vowels 



Table 3. Reduced vowels (US English)

 SPR symbol IPA symbol IPA Unicode Example words 

 x ə 0259 sofa, alone, suppose, tedious, America 
 X ɨ<br><br>ı 0268<br><br>0131 roses, connect, melody, symphony, hinted 







 Consonants 



Table 4. Consonants (US English)

 SPR symbol IPA symbol IPA Unicode Example words 

 b b 0062 bad, sob 
 C tʃ<br><br>ʧ 0074+0283<br><br>02A7 chip, witch, nature 
 d d 0064 dip, had 
 D ð 00F0 this, breathe 
 f f 0066 field, if, graph 
 F (flap) ɾ 027E writer, fiddle, little 
 g g<br><br>ɡ 0067<br><br>0261 good, bug 
 G ŋ 014B sing, finger 
 h h<br><br>ɦ<br><br>x<br><br>χ 0068<br><br>0266<br><br>0078<br><br>03C7 hot, hero, challah 
 J dʒ<br><br>ʤ 0064+0292<br><br>02A4 Jane, huge 
 k k 006B kill, cat, make, back 
 l l 006C low, hall 
 m m 006D man, hum, summer 
 M m̩ 006D+0329 hmmm
Portuguese (Brazilian) symbols 

The service supports the following symbols for Brazilian Portuguese.



 Regular vowels 



Table 1. Regular vowels (Brazilian Portuguese)

 SPR symbol IPA symbol IPA Unicode Example words 

 a ^1^ a<br><br>ɐ 0061<br><br>0250 virar, mar<br><br>Terra, muita 
 e e 0065 dedo, português 
 E ɛ 025B és, belo, eco 
 i i 0069 ligar, bode 
 o o 006F cor, bolha 
 c ɔ 0254 próximo, porta 
 u u 0075 lugar, peru 
 'a' ɐ̃ 0250+0303 banco, lã 
 'e' ẽ 0065+0303 <br>1EBD incenso, agente 
 'i' ĩ 0069+0303 <br>0129 assim, incenso 
 'o' õ 006F+0303 <br>00F5 cônsul, tom 
 'u' ũ 0075+0303 <br>0169 alguns, um 



Note:



1. The SPR symbol a maps to two different IPA symbols with different pronunciations: a and ɐ. In general, the SPR symbol maps to a for synthesis of stressed syllables and to ɐ for synthesis of unstressed syllables.







 Semi-vowels 



Table 2. Semi-vowels (Brazilian Portuguese)

 SPR symbol IPA symbol IPA Unicode Example words 

 y j 006A dois, noiva 
 Y j̃ 006A+0303 mãe, muito 
 w w 0077 meu, quarto 
 W w̃ 0077+0303 capitão, São 







 Consonants 



Table 3. Consonants (Brazilian Portuguese)

 SPR symbol IPA symbol IPA Unicode Example words 

 b b 0062 abraço, Brasil 
 C tʃ<br><br>ʧ 0074+0283<br><br>02A7 sete, bote 
 d d 0064 dar, dente 
 f f 0066 flauta, faixa
If you wish to cache non-static assets, you must set a Cache Level of Cache Everything using a Page Rule.



An Edge functions script runs after CIS security features, but before everything else. Therefore, an Edge functions script cannot affect the operation of security features (since they are already finished), but it can affect other features, like Image Size Optimization, or how the response is cached at the edge.

Updating the cf object is similar to modifying a request. You can add the cf object to a Request by passing a custom object to [fetch](https://cloud.ibm.com/reference/apis/fetch/).

// Disable ScrapeShield for this request.
fetch(event.request, { cf: { scrapeShield: false } })

Invalid or incorrectly-named settings in the cf object are silently ignored. Be careful to test that you are getting the behavior you want.







 Edge function use cases 

These examples are for demonstration purposes only, and not intended for use in production.



* [A/B testing](https://cloud.ibm.com/docs/cis?topic=cis-edge-functions-use-casesab-testing)
* [Adding a response header](https://cloud.ibm.com/docs/cis?topic=cis-edge-functions-use-casesadd-response-header)
* [Aggregating multiple requests](https://cloud.ibm.com/docs/cis?topic=cis-edge-functions-use-casesaggregate-multiple-requests)
* [Conditional routing](https://cloud.ibm.com/docs/cis?topic=cis-edge-functions-use-casesconditional-routing)
* [Hot-link protection](https://cloud.ibm.com/docs/cis?topic=cis-edge-functions-use-caseshot-link-protection)
* [Originless responses](https://cloud.ibm.com/docs/cis?topic=cis-edge-functions-use-casesoriginless-responses)