Renouveler un contrat saisonnier (crée un draft chaîné)
POST
/v1/long-stay-contracts/{id}/renew
const url = 'https://example.com/v1/long-stay-contracts/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/renew';const options = { method: 'POST', headers: {'X-API-Key': '<X-API-Key>', 'Content-Type': 'application/json'}, body: '{"newContractId":"2489E9AD-2EE2-8E00-8EC9-32D5F69181C0","newTotalAmountCents":"example","newCurrency":"EUR","newPeriodStart":"2026-04-15","newPeriodEnd":"2026-04-15","newInstallments":[{"id":"2489E9AD-2EE2-8E00-8EC9-32D5F69181C0","seqNo":1,"dueDate":"2026-04-15","amountCents":"example","currency":"EUR"}],"newNoticePeriodDays":1,"newDepositNature":"arrhes","newTerminationPolicy":"pro_rata_nuits"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://example.com/v1/long-stay-contracts/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/renew \ --header 'Content-Type: application/json' \ --header 'X-API-Key: <X-API-Key>' \ --data '{ "newContractId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "newTotalAmountCents": "example", "newCurrency": "EUR", "newPeriodStart": "2026-04-15", "newPeriodEnd": "2026-04-15", "newInstallments": [ { "id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "seqNo": 1, "dueDate": "2026-04-15", "amountCents": "example", "currency": "EUR" } ], "newNoticePeriodDays": 1, "newDepositNature": "arrhes", "newTerminationPolicy": "pro_rata_nuits" }'Authorizations
Section intitulée « Authorizations »Parameters
Section intitulée « Parameters »Path Parameters
Section intitulée « Path Parameters » id
required
string format: uuid
Request Body required
Section intitulée « Request Body required » Media type application/json
object
newContractId
required
string format: uuid
newTotalAmountCents
required
Montant total en centimes (bigint string)
string
newCurrency
required
string
newPeriodStart
required
string format: date
newPeriodEnd
string format: date
newInstallments
required
Array<object>
object
id
required
string format: uuid
seqNo
required
integer
dueDate
required
string format: date
amountCents
required
Centimes (bigint string)
string
currency
required
string
newNoticePeriodDays
integer
newDepositNature
string
newTerminationPolicy
string
Responses
Section intitulée « Responses »Contrat renouvelé
Media type application/json
object
data
required
object
currentContractId
required
string format: uuid
nextContractId
required
string format: uuid
Example generated
{ "data": { "currentContractId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "nextContractId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0" }}Corps invalide
Media type application/json
object
code
required
Code machine de l’erreur
string
message
required
Message lisible
string
origin
Origine domaine de l’erreur (optionnel)
object
boundedContext
string
module
string
status
required
integer
traceId
required
Identifiant de corrélation pour le support
string
Example
{ "code": "RESERVATION_NOT_FOUND", "message": "Réservation introuvable", "status": 404}Non authentifié
Media type application/json
object
code
required
Code machine de l’erreur
string
message
required
Message lisible
string
origin
Origine domaine de l’erreur (optionnel)
object
boundedContext
string
module
string
status
required
integer
traceId
required
Identifiant de corrélation pour le support
string
Example
{ "code": "RESERVATION_NOT_FOUND", "message": "Réservation introuvable", "status": 404}Contrat introuvable
Media type application/json
object
code
required
Code machine de l’erreur
string
message
required
Message lisible
string
origin
Origine domaine de l’erreur (optionnel)
object
boundedContext
string
module
string
status
required
integer
traceId
required
Identifiant de corrélation pour le support
string
Example
{ "code": "RESERVATION_NOT_FOUND", "message": "Réservation introuvable", "status": 404}