Aller au contenu

Adresses fixes

Opérations sur un forfait d’adresses fixes (family: dedicated, produit ipv4). Chacune agit sur le forfait entier : sur toutes ses adresses à la fois. Sur un forfait de trafic, ces routes répondent 422 unsupported_capability.

Les opérations disponibles pour un forfait sont listées dans le champ capabilities de sa fiche : prolong, credentials, replace, fingerprint, renewal.

StatutCe qui se passeCe que vous pouvez faire
provisioningle forfait est en cours de délivrance, jusqu’à 2 minutesattendre
activeles adresses fonctionnent jusqu’à expires_attout
expiredla durée est écoulée, les adresses ne répondent pasprolonger avant extendable_until - les mêmes adresses reviendront
closedextendable_until est passé, les adresses sont libéréesuniquement un nouvel achat
suspendedle forfait est désactivéécrire à l’assistance

Champs de la fiche liés à la durée :

ChampSignification
expires_atfin de la durée payée
extendable_untiljusqu’à quel moment la prolongation rend les mêmes adresses
credentials_retiredtrue - le mot de passe a été désactivé après la fin de la durée ; la prolongation en délivrera un nouveau

Quand la durée se termine, package.expired arrive dans le journal des événements.

Pour quelles périodes vous pouvez prolonger et combien cela vous coûte. Droit 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 - le prix pour le forfait entier, pour toutes ses adresses.

Prolonger le forfait. Droit packages:write, Idempotency-Key obligatoire : c’est un débit. Corps : {"period": "month"}, la période étant tirée de prolong-options.

Fenêtre de terminal
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
}
  • La période s’ajoute à l’expires_at actuel, et si la durée est déjà écoulée - au moment de la prolongation.
  • Les adresses et l’identifiant restent les mêmes.
  • credentials_reissued: true - l’ancien mot de passe avait été désactivé et un nouveau a été délivré ; prenez-le dans la fiche du forfait.
  • La prolongation crée une commande distincte avec applied_to_package_id.

Erreurs :

  • 400 - invalid_body (pas de corps ou pas du JSON), validation_failed
  • 404 - not_found
  • 409 - idempotency_in_progress
  • 422 - unknown_period, insufficient_balance, prolong_window_closed (les adresses ne peuvent plus être récupérées - forfait closed, un nouvel achat est nécessaire), unsupported_capability, purchase_refunded, idempotency_key_required, idempotency_key_invalid, idempotency_key_reused
  • 500 - order_failed, order_needs_attention, operation_indeterminate - comme pour l’achat

Renouvellement automatique. Droit packages:write. Ne débite rien.

Fenêtre de terminal
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"}'
ChampSignification
enabledobligatoire : true ou false
periodpour quelle période prolonger à chaque fois ; sans ce champ, la période précédente est conservée

La réponse est la fiche du forfait. Fonctionnement du renouvellement automatique :

  • il est activé par défaut, la période est celle qui a été achetée ;
  • le débit a lieu un jour avant expires_at, au prix en vigueur à ce moment ; la date et le montant figurent dans renewal.next_charge_at et renewal.next_charge_amount ;
  • si l’argent ne suffit pas, renewal.last_failure devient insufficient_balance, les tentatives se répètent toutes les quelques heures pendant encore 3 jours après expires_at ;
  • ensuite, le renouvellement automatique se désactive tout seul, renewal.disabled_at est renseigné.

Erreurs : 400 invalid_body (pas de enabled) ; 404 not_found ; 422 unknown_period, unsupported_capability.

Remplacer toutes les adresses du forfait par de nouvelles dans le même emplacement. Droit packages:write. Aucun corps nécessaire. Gratuit.

Le remplacement se fait en arrière-plan. La réponse est 202 avec la fiche contenant replacement.state: pending. Relisez la fiche jusqu’à ce que state change, en général en moins d’une minute :

replacement.stateSignification
pendingremplacement en cours
doneaddresses contient les nouvelles adresses, les anciennes ne fonctionnent plus
failedrien n’a changé, vous pouvez relancer la demande

L’identifiant, le mot de passe, la durée et l’empreinte ne changent pas. Un nouveau remplacement est possible au bout de 30 jours : replace_available_at dans la fiche indique quand.

Erreurs :

  • 404 - not_found
  • 409 - replace_in_progress (un remplacement est déjà en cours)
  • 422 - package_expired (durée écoulée - prolongez d’abord), unsupported_capability
  • 429 - replace_cooldown (les adresses ont été remplacées récemment ; la date est dans replace_available_at)

Empreinte p0f : les adresses se présentent comme l’OS et le navigateur choisis. Un seul profil pour tout le forfait. Droit packages:write. Gratuit.

Fenêtre de terminal
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 - une valeur de fingerprint.profiles de la fiche : windows_chrome, windows_edge, windows_firefox, android_chrome, macos_chrome. null désactive l’usurpation.

La nouvelle empreinte s’applique au bout de 2-3 minutes. Les connexions ouvertes avant le changement conservent l’ancienne - reconnectez-vous.

Erreurs : 400 validation_failed (profil absent de la liste) ; 404 not_found ; 422 package_expired, unsupported_capability.

La régénération du mot de passe est une route commune : POST /api/v1/packages/{id}/password. L’identifiant ne change pas, l’ancien mot de passe cesse immédiatement de fonctionner sur toutes les adresses du forfait.