# Protocols

Mobile speaks the same protocols as residential — HTTP, HTTPS, SOCKS5 on port `7777`, with the protocol auto-detected from the client handshake. See [Residential protocols](/products/overview/protocols.md) for full curl/Python/Node samples and the SOCKS5 DNS-leak warning.

## Mobile-specific notes

* **Connection reuse is more important.** Mobile first-hop latency is high — re-using TCP/TLS connections (HTTP keep-alive, HTTP/2 multiplexing) significantly improves throughput.
* **HTTP/2 to the target works through the SOCKS5 / `CONNECT` tunnel.** helodata does not strip or downgrade.
* **WebSockets work** via standard `CONNECT` / SOCKS5 upgrade. Useful for chat apps and real-time APIs that gate behind mobile networks.
* **Mobile carrier transparent proxies** sometimes mutate HTTP headers (e.g. add `Via`, `X-Forwarded-For`). helodata does not strip these — the target sees them as the carrier would. Use HTTPS to avoid mutation.

## Quick reference

```bash
# HTTP/HTTPS
curl -x http://helo_s1a2b3c4d5e-type-mob-region-us-asn-6167:PASSWORD@gate.helodata.io:7777 \
     https://example.com

# SOCKS5 (note socks5h:// for remote DNS)
curl --socks5-hostname helo_s1a2b3c4d5e-type-mob-region-us-asn-6167:PASSWORD@gate.helodata.io:7777 \
     https://example.com
```

## When to prefer which on mobile

| Use case                         | Pick                             |
| -------------------------------- | -------------------------------- |
| Native HTTP scraping             | HTTP/HTTPS                       |
| Mobile app emulation with HTTP/2 | HTTP/HTTPS                       |
| Long-lived WebSocket             | HTTP/HTTPS (`CONNECT`) or SOCKS5 |
| Lower per-request overhead       | SOCKS5                           |
| Debugging with mitmproxy         | HTTP/HTTPS                       |


---

# 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.helodata.com/products/overview-1/protocols.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.
