Sabit adresler
Sabit adres paketi işlemleri (family: dedicated, ürün ipv4). Her biri paketin tamamına
uygulanır: tüm adreslerine aynı anda. Trafik paketinde bu rotalar 422 unsupported_capability
ile yanıt verir.
Pakette hangi işlemlerin kullanılabildiği, kartındaki capabilities alanında listelenir:
prolong, credentials, replace, fingerprint, renewal.
Süre ve durumlar
Section titled “Süre ve durumlar”| Durum | Ne oluyor | Ne yapılabilir |
|---|---|---|
provisioning | paket veriliyor, en fazla 2 dakika | beklemek |
active | adresler expires_at tarihine kadar çalışır | her şey |
expired | süre doldu, adresler yanıt vermiyor | extendable_until tarihine kadar uzatmak - aynı adresler geri gelir |
closed | extendable_until geçti, adresler serbest bırakıldı | yalnızca yeni satın alma |
suspended | paket devre dışı | desteğe yazmak |
Kartın süreyle ilgili alanları:
| Alan | Anlamı |
|---|---|
expires_at | ödenen sürenin sonu |
extendable_until | uzatmanın aynı adresleri geri getirdiği son an |
credentials_retired | true - süre bittikten sonra parola devre dışı bırakıldı; uzatma yeni bir parola verir |
Süre dolduğunda olay günlüğüne package.expired düşer.
GET /api/v1/packages/{id}/prolong-options
Section titled “GET /api/v1/packages/{id}/prolong-options”Hangi dönemlerle uzatılabileceği ve sizin için fiyatı. Yetki packages:read.
{ "options": [ { "period": "week", "price": "1.98" }, { "period": "2_weeks", "price": "2.58" }, { "period": "month", "price": "2.98" }, { "period": "2_months", "price": "5.96" }, { "period": "3_months", "price": "8.94" } ], "currency": "USD"}price - paketin tamamının, tüm adreslerinin fiyatıdır.
POST /api/v1/packages/{id}/prolong
Section titled “POST /api/v1/packages/{id}/prolong”Paketi uzatma. Yetki packages:write, Idempotency-Key zorunludur: bu bir tahsilattır. Gövde:
{"period": "month"}, dönem prolong-options içinden seçilir.
curl -X POST https://ipv.rent/api/v1/packages/57/prolong \ -H 'Authorization: Bearer YOUR_API_KEY' \ -H "Idempotency-Key: $(uuidgen)" \ -H 'Content-Type: application/json' \ -d '{"period":"month"}'{ "order_id": 140, "package_id": 57, "status": "completed", "price": "2.98", "expires_at": "2026-12-04T12:00:00+00:00", "credentials_reissued": false}- Dönem mevcut
expires_atdeğerine, süre zaten dolmuşsa uzatma anına eklenir. - Adresler ve kullanıcı adı aynı kalır.
credentials_reissued: true- eski parola devre dışı bırakıldı ve yenisi verildi; onu paket kartından alın.- Uzatma,
applied_to_package_idiçeren ayrı bir sipariş oluşturur.
Retler:
- 400 -
invalid_body(gövde yok veya JSON değil),validation_failed - 404 -
not_found - 409 -
idempotency_in_progress - 422 -
unknown_period,insufficient_balance,prolong_window_closed(adresler artık geri getirilemez - paketclosed, yeni satın alma gerekir),unsupported_capability,purchase_refunded,idempotency_key_required,idempotency_key_invalid,idempotency_key_reused - 500 -
order_failed,order_needs_attention,operation_indeterminate- satın almadaki gibi
POST /api/v1/packages/{id}/renewal
Section titled “POST /api/v1/packages/{id}/renewal”Otomatik yenileme. Yetki packages:write. Hiçbir şey düşmez.
curl -X POST https://ipv.rent/api/v1/packages/57/renewal \ -H 'Authorization: Bearer YOUR_API_KEY' -H 'Content-Type: application/json' \ -d '{"enabled":true,"period":"month"}'| Alan | Anlamı |
|---|---|
enabled | zorunlu: true veya false |
period | her seferinde hangi dönemle uzatılacağı; alan yoksa önceki değer kalır |
Yanıt - paket kartı. Otomatik yenileme nasıl çalışır:
- varsayılan olarak açıktır, dönem satın alınan dönemdir;
- tahsilat
expires_attarihinden bir gün önce, o andaki fiyatla yapılır; tarih ve tutarrenewal.next_charge_atverenewal.next_charge_amountalanlarındadır; - para yetmezse
renewal.last_failuredeğeriinsufficient_balanceolur, denemelerexpires_atsonrasında 3 gün daha birkaç saatte bir tekrarlanır; - bundan sonra otomatik yenileme kendiliğinden kapanır,
renewal.disabled_atdoldurulur.
Retler: 400 invalid_body (enabled yok); 404 not_found; 422 unknown_period,
unsupported_capability.
POST /api/v1/packages/{id}/replace
Section titled “POST /api/v1/packages/{id}/replace”Paketin tüm adreslerini aynı konumdaki yenileriyle değiştirme. Yetki packages:write. Gövde
gerekmez. Ücretsiz.
Değişim arka planda yapılır. Yanıt - 202 ve replacement.state: pending içeren kart. state
değişene kadar kartı okuyun, genellikle bir dakikadan kısa sürer:
replacement.state | Anlamı |
|---|---|
pending | değişim sürüyor |
done | addresses içinde yeni adresler var, eskileri çalışmıyor |
failed | hiçbir şey değişmedi, yeniden istenebilir |
Kullanıcı adı, parola, süre ve parmak izi değişmez. Bir sonraki değişim 30 gün sonra mümkündür:
karttaki replace_available_at ne zaman olduğunu gösterir.
Retler:
- 404 -
not_found - 409 -
replace_in_progress(değişim zaten sürüyor) - 422 -
package_expired(süre doldu - önce uzatın),unsupported_capability - 429 -
replace_cooldown(adresler yakın zamanda değiştirildi; tarihreplace_available_atiçinde)
POST /api/v1/packages/{id}/fingerprint
Section titled “POST /api/v1/packages/{id}/fingerprint”p0f parmak izi: adresler seçilen işletim sistemi ve tarayıcı gibi görünür. Paketin tamamı için tek
profil. Yetki packages:write. Ücretsiz.
curl -X POST https://ipv.rent/api/v1/packages/57/fingerprint \ -H 'Authorization: Bearer YOUR_API_KEY' -H 'Content-Type: application/json' \ -d '{"profile":"windows_chrome"}'profile - kartın fingerprint.profiles listesindeki bir değer: windows_chrome, windows_edge,
windows_firefox, android_chrome, macos_chrome. null taklidi kapatır.
Yeni parmak izi 2-3 dakika içinde uygulanır. Değişiklikten önce açılan bağlantılar eskisini korur - yeniden bağlanın.
Retler: 400 validation_failed (profil listede yok); 404 not_found; 422 package_expired,
unsupported_capability.
Parola
Section titled “Parola”Parola yenileme ortak bir rotadır:
POST /api/v1/packages/{id}/password. Kullanıcı
adı değişmez, eski parola paketin tüm adreslerinde anında çalışmayı bırakır.