# IP

## Get IP from session

> Get IP from session

```json
{"openapi":"3.0.0","servers":[{"url":"https://ip.hypersolutions.co"}],"paths":{"/ip":{"get":{"summary":"Get IP from session","description":"Get IP from session","operationId":"getIp","parameters":[{"in":"header","name":"x-api-key","required":true,"schema":{"type":"string"},"description":"Your API key for authentication"}],"responses":{"200":{"description":"OK IP was returned","content":{"application/json":{"schema":{"type":"object","properties":{"ip":{"type":"string","description":"The IP"}}}}}}}}}}}
```

## Understanding Proxy IP Requirements

The `/ip` endpoint is a critical component of our service because:

* Our sensor APIs require your proxy's IP address as an input field
* We need to know exactly which IP address is making requests to target websites
* This ensures proper functionality of our APIs

## Rotating vs. Session Proxies

**Problem with Rotating Proxies**

If you're using **rotating proxies**, you may encounter inconsistencies between:

* The IP our system identifies when you call the `/ip` endpoint
* The IP that's actually used when connecting to target websites

This happens because rotating proxies issue a new IP address on each CONNECT request, which occurs whenever a connection to a new domain is established. As a result:

1. You request our `/ip` endpoint and get IP address `1.2.3.4`
2. You use our sensor APIs for a target website
3. A new CONNECT request is issued by your proxy on accessing the target website
4. The target website sees you coming from IP address `5.6.7.8`

## **Solution: Use Session/Sticky Proxies**

**Session proxies** (also called sticky proxies) maintain the same IP address for the duration of a session, solving this problem:

* They ensure the IP address remains consistent across multiple requests
* The IP returned by our `/ip` endpoint will match the IP seen by target websites
* Our sensor APIs will receive the correct IP information
* All requests within the same session will use the same outgoing IP address

#### Implementation Guide

When integrating with our sensor APIs:

1. **Configure your proxy settings** to use session/sticky mode instead of rotating mode
2. **Use the `/ip` endpoint** to retrieve your current proxy IP address
3. **Pass this IP** as an input parameter to our sensor APIs

By using session proxies, you'll ensure that our sensor APIs receive the correct IP address that target websites will see, improving reliability and performance of your integrations.
