How do you deal with sticky sessions?
When using our load-balanced nodes.
Our sticky session is based on cookies from the website visited (as explained here). If you use cURL, it does not automatically manage cookies which means that for every call, a new session is created, thus explaining why you may have different IPs during the same session. If you caught the cookie of the first call and resent it in the second call, you will get the same IP (this also means your Web page needs to set a cookie). For this, you need to set specific cURL options which you can find here. An alternative to cURL is PhantomJS but the problem is the same: you will need to configure PhantomJS to manage cookies.
When using our sub-nodes.
If you are not using our load-balanced nodes, you can attribute a sub-node for a given hour or session, meaning all calls from your servers made during that time or session will go through the same node, thus the same IP.