View Categories

Mise à jour des rubriques d’un relevé d’heures PATCH /api/v1/timesheets/{id}/wageTypes

Cette opération permet d’ajouter des rubriques manuellement, ou bien de modifier des valeurs pour certaines rubriques générées automatiquement.

La modification est autorisée selon les conditions suivantes :

  • les quantités journalières de rubriques sont modifiables sur :
    • les rubriques ajoutées manuellement
    • les rubriques déclenchées qui ne représentent pas du temps de travail
  • les éléments de valorisation sont modifiables sur toutes les rubriques

Paramètres :

  • id (identifiant du relevé d’heures)

Payload par use case :

Use case : ajout de rubrique

ChampTypeObligatoireDescriptionNotes
wageTypes[]arrayRubriques de rémunération 
└ codestringCode rubrique 
└ missionIdstringMission associéeID numérique
└ analyticIdstring | nullIdentifiant analytiqueID numérique
└ subAnalyticIdstring | nullIdentifiant sous-analytiqueID numérique
└ percentagenumber | nullTaux de la rubrique en pourcentExemple : 25
└ paidRatenumber | nullTaux payé de la rubriqueExemple : 12.78
└ coefficientnumber | nullCoefficient de la rubriqueExemple : 1.234
└ billedRatenumber | nullTaux facturé de la rubriqueExemple : 13.89
days[]arrayJours sur lesquels la rubrique est ajoutée 
   └ datestringDate du jourFormat ISO 8601 (AAAA-MM-JJ)
   └ quantitynumberQuantité de la rubriqueExemple : 7.33

Pour connaître les éléments de rémunération (percentage, paidRate, coefficient, billedRate) d’une rubrique, l’opération GET /api/v1/timesheets/{id}/financialItems permet de renvoyer pour le relevé concerné ces informations pour une rubrique donnée pour chaque jour de mission.

Use case : modification de rubrique

ChampTypeObligatoireDescriptionNotes
wageTypes[]arrayRubriques de rémunération 
└ codestringCode rubrique 
└ missionIdstringMission associéeID numérique
└ analyticIdstring | nullIdentifiant analytiqueID numérique
└ subAnalyticIdstring | nullIdentifiant sous-analytiqueID numérique
└ percentagenumber | nullTaux de la rubrique en pourcentExemple : 25
└ paidRatenumber | nullTaux payé de la rubriqueExemple : 12.78
└ coefficientnumber | nullCoefficient de la rubriqueExemple : 1.234
└ billedRatenumber | nullTaux facturé de la rubriqueExemple : 13.89
days[]arrayJours sur lesquels la rubrique est ajoutée 
   └ datestringDate du jourFormat ISO 8601 (AAAA-MM-JJ)
   └ quantitynumberQuantité de la rubriqueExemple : 7.33

Exemple :

curl -X PATCH "https://api.dev.peopulse.com/api/v1/timesheets/f1659ebd-0811-4170-a19b-cedf2f18029e%2F/wageTypes" \
-H 'accept: application/json'\
-H 'authorization: Bearer XXX'\
-H 'content-type: application/json' \
-d '{"wageTypes":[{"id":"f1659ebd-0811-4170-a19b-cedf2f18029e","code":"0203","days":[{"id":"598cd0c3-aaa7-4166-994b-e90d4590e2b6","date":"2025-08-22","quantity":0}]},{"id":"d73cabe6-7b80-4344-8e03-05cdd36fb837","code":"1125","percentage":125,"paidRate":13.5,"coefficient":1,"billedRate":13.5,"missionId":"5457"},{"code":"1099","percentage":0,"paidRate":12,"coefficient":1,"billedRate":12,"missionId":"5457","analyticId":"1","subAnalyticId":"877","days":[{"date":"2025-08-18","quantity":1},{"date":"2025-08-19","quantity":1},{"date":"2025-08-20","quantity":1}]}]}'

{
"wageTypes": [
{
"id": "f1659ebd-0811-4170-a19b-cedf2f18029e",
"days": [
{
"id": "598cd0c3-aaa7-4166-994b-e90d4590e2b6",
"date": "2025-08-22",
"quantity": 0
}
]
},
{
"id": "d73cabe6-7b80-4344-8e03-05cdd36fb837",
"code": "1125",
"percentage": 125,
"paidRate": 13.5,
"coefficient": 1,
"billedRate": 13.5,
"missionId": "5457"
},
{
"code": "1099",
"percentage": 0,
"paidRate": 12,
"coefficient": 1,
"billedRate": 12,
"missionId": "5457",
"analyticId": "1",
"subAnalyticId": "877",
"days": [
{
"date": "2025-08-18",
"quantity": 1
},
{
"date": "2025-08-19",
"quantity": 1
},
{
"date": "2025-08-20",
"quantity": 1
}
]
}
]
}

Champs de la réponse :

ChampTypeObligatoireDescriptionNotes
wageTypes[]arrayRubriques de rémunération 
└ idstringIdentifiantUUID
└ codestringCode rubrique 
└ namestringNom rubrique 
└ activityPeriodstringPériode d’activitéFormat ISO 8601 Exemple : 2025-12
└ missionIdstringMission associéeID numérique
analyticobjectAnalytique 
   └ idstringIdentifiant analytiqueID numérique
   └ codestringCode analytique 
   └ labelstringLibellé analytique 
   └ subAnalyticobjectSous-analytiquenull si pas de sous-analytique
     └ idstringIdentifiant sous-analytiqueID numérique
     └ codestringCode sous-analytique 
     └ labelstringLibellé sous-analytique 
└ categoryenumCatégorie de rubrique triggered┃quickEntry┃manualEntryDéclenchée / intégrée à la saisie rapide / ajoutée “manuellement”
└ valuationModeenumMode de valorisation de la rubriquePAID┃PAID_BILLED┃BILLEDPayée / payée facturée / facturée
└ booleanInputbooleanSaisie booléenne de rubriqueDans le cas de la saisie rapide, indication si la rubrique est une case à cocher
└ readonlybooleanRubrique en lecture seuleToute rubrique représentant du temps de travail ne peut pas être modifiée (c’est la saisie qui doit être modifiée).
└ percentagenumber | nullTaux de la rubrique en pourcentExemple : 25
└ paidRatenumber | nullTaux payé de la rubriqueExemple : 12.78
└ coefficientnumber | nullCoefficient de la rubriqueExemple : 1.234
└ billedRatenumber | nullTaux facturé de la rubriqueExemple : 13.89
days[]arrayJours sur lesquels la rubrique est générée 
   └ idstringIdentifiant du jour pour la rubriqueUUID
   └ datestringDate du jourFormat ISO 8601 (AAAA-MM-JJ)
   └ quantitynumberQuantité de la rubriqueExemple : 7.33
dispute[]arrayLitiges éventuelsnull si aucun litige n’a été ouvert
   └ idstringIdentifiant du litigeUUID
   └ isDisputeAcceptedbooleanAcceptation du litigeFormat ISO 8601 (AAAA-MM-JJ)Un litige accepté est conservé dans l’ historique.Si solvedDisputeDate est renseigné :si isDisputeAccepted est à false : le litige a été refusé, on le garde en historiquesi isDisputeAccepted est à true : le litige a été accepté, ses valeurs ont déjà été remplacées, on garde en historique le fait que la rubrique est issue d’un litigeSinon : le litige n’a pas encore été traité.
   └ solvedDisputeDatestringDate de résolution du litige
   └ days[]arrayJours sur lesquels il y a litige 
     └ idstringIdentifiant du jour pour le litigeUUID
     └ datestringDate du jourFormat ISO 8601 (AAAA-MM-JJ)
     └ quantitynumberQuantité proposée pour correction 
preinvoicearrayPréfacture éventuellesnull si la rubrique n’a pas encore été envoyée
   └ idstringIdentifiant de préfactureUUID
   └ numberstringNuméro de préfacture