# Making Requests

Our Residential Proxies support flexible IP targeting, random or sticky sessions, and custom ISP filtering — all controlled through a structured username. Once you understand the format, you can easily generate powerful, targeted proxy sessions without needing extra setup.

## Proxy Access Components

You’ll need:

* **Hostname**: Fixed — provided in your dashboard
* **Port**: Fixed — provided in your dashboard
* **Username**: Structured with targeting options (see below)
* **Password**: Your sub-account password

{% hint style="info" %}

## Example

* **Username**: subaccount-country-us-sst-15-ssid-device1
* **Password**: yourpassword
* **Proxy**: yourproxyhost:yourport
  {% endhint %}

## Username Structure

All targeting and session options are embedded in your username using this general format:

{% code overflow="wrap" fullWidth="false" %}

```
<subaccount>-country-<country_code>-st-<state_code>-city-<city_name>-isp-<isp_code>-sst-<session_time>-ssid-<session_id>
```

{% endcode %}

{% hint style="info" %}

## NOTE

Not all parameters are required. You can mix and match the parameters depending on your use case — whether you're using rotating IPs, sticky sessions, or both. See use cases below.
{% endhint %}

<table><thead><tr><th width="131">Segment</th><th width="216">Example Value</th><th>Explanation</th></tr></thead><tbody><tr><td>subaccount</td><td>beeproxy</td><td>Your unique sub-account name. This is used to identify your proxy session and is issued in your account dashboard.</td></tr><tr><td>country</td><td>country-us</td><td>Specifies the target country using a two-letter country code. In this example, traffic is routed through the United States.</td></tr><tr><td>st</td><td>st-ohio</td><td>(Optional) Adds a filter by state or region. Helps narrow IP selection to a specific area within the country.</td></tr><tr><td>city</td><td>city-newyork</td><td>(Optional) Adds city-level targeting to improve geo-accuracy. Use underscores for cities with spaces.</td></tr><tr><td>isp</td><td>isp-as22773_Cox_Communications_Inc.</td><td>(Optional) Filters IPs based on ISP name or ASN. Useful for advanced fingerprint matching or ISP-specific use cases.</td></tr><tr><td>sst</td><td>sst-15</td><td>Required for sticky sessions. Sets how long (in minutes) the IP stays fixed before rotating (e.g. 15 minutes).</td></tr><tr><td>ssid</td><td>ssid-ID1</td><td>(Optional, but recommended for parallel use) Defines a unique session ID to allow multiple sticky IPs from the same config.</td></tr></tbody></table>

## Modes of Operation

### 1. Rotating IP Mode (Random)

Each request gets a fresh IP. You don’t need to specify **`sst`** or **`ssid`**.

**Use When**: Speed is more important than continuity — e.g., scraping, price monitoring.

{% hint style="info" %}

## Examples

* Basic US IP, no stickiness : `subaccount-country-us`&#x20;
* Rotating IP from New York, US: `subaccount-country-us-city-newyork`&#x20;
* Rotating IP with ISP filtering: `subaccount-isp-as22773_Cox_Communications_Inc`&#x20;
  {% endhint %}

{% hint style="success" %}

## Tips

For fastest response, target only by country. Adding city/state/ISP narrows the IP pool. Avoid over-filtering with state + city + isp unless necessary — this can limit IP availability.
{% endhint %}

### 2. Sticky IP Mode

Keeps the same IP for a session of sst minutes. Optional `ssid` lets you create multiple sticky IPs from the same configuration.

**Use When**: You need IP persistence — e.g., logging into accounts, managing sessions, or running bots.

{% hint style="info" %}

## Required

* sst: Session duration (in minutes)
* Optional: ssid: Unique session ID to get multiple IPs under same config
  {% endhint %}

{% hint style="info" %}

## Examples

* US IP held for 15 minutes: `subaccount-country-us-sst-15`&#x20;
* Hanoi IP, sticky for 20 mins: `subaccount-country-vn-city-hanoi-sst-20`&#x20;
* Parallel sticky sessions from same config: `subaccount-country-us-sst-15-ssid-id1`  `subaccount-country-us-sst-15-ssid-id2`&#x20;
  {% endhint %}

Each unique ssid gives you a different IP, even if other parameters are the same.

## Sample cURL Request

```
curl -x yourproxyhost:yourport \
     -U "subaccount-country-us-sst-15-ssid-bot01:yourpassword" \
     https://ipinfo.io

```

## Choose the Right Setup

<table><thead><tr><th>Use Case</th><th width="201">Required Fields</th><th>Notes</th></tr></thead><tbody><tr><td>Fastest random IPs</td><td>country</td><td>No sst, no ssid</td></tr><tr><td>Geolocated rotating IPs</td><td>country, city/isp</td><td>Optional state, city, isp</td></tr><tr><td>Sticky sessions (single device)</td><td>country, sst</td><td>Keeps IP fixed during session time</td></tr><tr><td>Sticky across devices/apps</td><td>country, sst, ssid</td><td>Use different ssid per instance</td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.beeproxy.com/quick-start/making-requests.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
