콘텐츠로 이동

빠른 시작

Terminal window
export KEY='YOUR_KEY'
export BASE='https://ipv.rent'
Terminal window
curl -s "$BASE/api/v1/products" -H "Authorization: Bearer $KEY"
{
"products": [
{
"slug": "residential",
"name": "Residential",
"family": "traffic_gateway",
"unit": "gb",
"unit_price": "2.00",
"monthly_price_from": null,
"currency": "USD",
"min_volume": 1,
"volume_presets": [1, 5, 10, 25, 50, 100, 250, 500],
"volume_discounts": []
},
{
"slug": "ipv4",
"name": "IPv4",
"family": "dedicated",
"unit": "ip",
"unit_price": null,
"monthly_price_from": "1.49",
"currency": "USD",
"min_volume": 1,
"volume_presets": [],
"volume_discounts": []
}
]
}

slug는 이후 모든 요청에서 product 필드의 값입니다. 여기서부터는 상품마다 한 갈래씩 진행합니다.

1. 가격

Terminal window
curl -s -X POST "$BASE/api/v1/quote" \
-H "Authorization: Bearer $KEY" -H 'Content-Type: application/json' \
-d '{"product":"residential","volume":10}'
{
"unit": "2.00",
"unit_label": "per_gb",
"quantity": 10,
"discount": "0.00",
"discount_percent": "0.00",
"total": "20.00",
"currency": "USD"
}

2. 구매

Terminal window
curl -s -X POST "$BASE/api/v1/packages" \
-H "Authorization: Bearer $KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H 'Content-Type: application/json' \
-d '{
"product": "residential",
"volume": 10,
"client_reference": "first-run"
}'
{
"order_id": 128,
"package_id": 42,
"status": "completed",
"price": "20.00",
"client_reference": "first-run"
}

멱등성 키는 요청 전에 저장해 두세요: 타임아웃 후 재시도할 때 같은 값을 보내야 합니다.

3. 연결

Terminal window
curl -s -X POST "$BASE/api/v1/packages/42/proxies" \
-H "Authorization: Bearer $KEY" -H 'Content-Type: application/json' \
-d '{
"count": 2,
"mode": "sticky",
"protocol": "http",
"ttl_minutes": 30,
"geo": {
"country": "us"
}
}'
{
"count": 2,
"proxies": [
{
"host": "residential.ipv.rent",
"port": 10000,
"username": "USERNAME_1",
"password": "PASSWORD",
"rotation_url": "https://ipv.rent/r/9f3c1e..."
},
{
"host": "residential.ipv.rent",
"port": 10000,
"username": "USERNAME_2",
"password": "PASSWORD",
"rotation_url": "https://ipv.rent/r/1a77b2..."
}
]
}

4. 확인

Terminal window
curl -x 'http://USERNAME_1:[email protected]:10000' https://api.ipify.org

1. 선택할 수 있는 것

Terminal window
curl -s "$BASE/api/v1/products/ipv4/options" -H "Authorization: Bearer $KEY"
{
"type": "ipv4",
"countries": [
{
"code": "us",
"name": "United States",
"periods": ["week", "2_weeks", "month", "2_months", "3_months"],
"quantity_max": null,
"plans": [
{
"id": "dc",
"traffic_gb": null,
"periods": ["week", "2_weeks", "month", "2_months", "3_months"],
"operators": [
{
"id": "united-states",
"name": "United States",
"available": 374
}
]
}
]
},
"..."
]
}

operators는 국가 안의 위치입니다: 국가 전체 또는 도시. available은 그 위치에서 지금 비어 있는 주소 수이며, 이보다 많이 살 수는 없습니다. quantity_max: null은 구매 수량에 별도 제한이 없다는 뜻입니다.

2. 가격

Terminal window
curl -s -X POST "$BASE/api/v1/quote" \
-H "Authorization: Bearer $KEY" -H 'Content-Type: application/json' \
-d '{
"product": "ipv4",
"country": "us",
"operator": "united-states",
"period": "month",
"quantity": 2
}'
{
"unit": "1.49",
"unit_label": "per_ip",
"quantity": 2,
"discount": "0.00",
"discount_percent": "0.00",
"total": "2.98",
"currency": "USD"
}

3. 구매

Terminal window
curl -s -X POST "$BASE/api/v1/packages" \
-H "Authorization: Bearer $KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H 'Content-Type: application/json' \
-d '{
"product": "ipv4",
"country": "us",
"operator": "united-states",
"period": "month",
"quantity": 2
}'
{
"order_id": 131,
"package_id": 57,
"status": "completed",
"price": "2.98",
"client_reference": null,
"package_ids": [57],
"requested": 2,
"fulfilled": 2
}

한 번의 구매로 받은 모든 주소는 하나의 패키지입니다.

4. 주소와 접속 정보

Terminal window
curl -s "$BASE/api/v1/packages/57" -H "Authorization: Bearer $KEY"
{
"id": 57,
"family": "dedicated",
"product": "ipv4",
"status": "active",
"expires_at": "2026-11-04T12:00:00+00:00",
"auto_renew": true,
"credentials": {
"username": "USERNAME",
"password": "PASSWORD"
},
"addresses": [
{
"host": "198.51.100.11",
"port_http": 10010,
"port_socks": 10011
},
{
"host": "198.51.100.12",
"port_http": 10012,
"port_socks": 10013
}
],
"...": "..."
}

주소는 구매 후 2분 이내에 응답하기 시작합니다.

5. 확인

Terminal window
curl -x 'http://USERNAME:[email protected]:10010' https://api.ipify.org

연장, 자동 갱신, 주소 교체, 지문은 고정 주소 페이지에 있습니다.

1. 선택할 수 있는 것

Terminal window
curl -s "$BASE/api/v1/products/mobile/options" -H "Authorization: Bearer $KEY"
{
"type": "mobile",
"countries": [
{
"code": "fr",
"name": "France",
"periods": ["day", "week", "month", "3_months"],
"quantity_max": null,
"plans": [
{
"id": "unlimited",
"traffic_gb": null,
"periods": ["day", "week", "month", "3_months"],
"operators": [
{
"id": "free-mobile",
"name": "Free Mobile",
"available": 7
},
{
"id": "sfr",
"name": "SFR",
"available": 3
}
]
}
]
},
"..."
]
}

operators는 해당 국가의 이동통신사입니다. available - 그 통신사에서 지금 비어 있는 포트 수이며, 그보다 많이 살 수 없습니다.

2. 가격

Terminal window
curl -s -X POST "$BASE/api/v1/quote" \
-H "Authorization: Bearer $KEY" -H 'Content-Type: application/json' \
-d '{
"product": "mobile",
"country": "fr",
"operator": "free-mobile",
"period": "day",
"quantity": 1
}'

3. 구매

Terminal window
curl -s -X POST "$BASE/api/v1/packages" \
-H "Authorization: Bearer $KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H 'Content-Type: application/json' \
-d '{
"product": "mobile",
"country": "fr",
"operator": "free-mobile",
"period": "day",
"quantity": 1
}'

통신사의 빈 포트가 요청한 수보다 적으면 구매는 422 out_of_stock으로 거절됩니다. 금액은 차감되지 않습니다.

4. 포트와 접속 정보

Terminal window
curl -s "$BASE/api/v1/packages/58" -H "Authorization: Bearer $KEY"
{
"id": 58,
"family": "dedicated",
"product": "mobile",
"status": "active",
"credentials": {
"username": "USERNAME",
"password": "PASSWORD"
},
"addresses": [
{
"host": "fr2.mobile.ipv.rent",
"port_http": 13029,
"port_socks": 13029
}
],
"endpoint": {
"country": "fr",
"operator": "Free Mobile",
"rotation_interval_minutes": 0,
"rotation_url": "https://ipv.rent/r/9f3c1e..."
},
"capabilities": ["prolong", "rotate", "rotation_interval", "credentials", "renewal"],
"...": "..."
}

HTTP와 SOCKS5는 같은 포트에서 작동합니다.

5. 확인과 IP 변경

Terminal window
curl -x 'http://USERNAME:[email protected]:13029' https://api.ipify.org
curl -s 'https://ipv.rent/r/9f3c1e...'

rotation_url에 GET을 보내면 포트가 같은 통신사의 새 IP를 받습니다. 응답 목록은 IP 변경에 있습니다. IP가 바뀌는 동안 포트는 몇 초간 연결을 끊습니다. IP 변경 타이머는 대시보드에서 설정합니다.

연장, 자동 갱신, 비밀번호는 고정 주소 페이지에 있습니다: 모바일 패키지에도 똑같이 적용됩니다. 주소 교체와 지문은 모바일 포트에서 사용할 수 없습니다. 기간이 끝난 모바일 포트는 연장할 수 없습니다.