PUT
/
api
/
v3
/
users
/
{id}
Update a User by id
curl --request PUT \
  --url https://{host}/api/v3/users/{id} \
  --header 'Authorization: <authorization>' \
  --header 'Content-Type: application/json' \
  --data '{
  "firstName": "John",
  "lastName": "Doe",
  "mail": "jdoe@corp.com",
  "login": "jdoe",
  "legalEntityId": 1,
  "dtContractStart": "2025-01-01T00:00:00",
  "cspId": 2,
  "calendarId": null,
  "employeeNumber": "000000452",
  "birthDate": "1989-12-22T00:00:00",
  "userWorkCycles": [
    {
      "id": 67,
      "startsOn": "1920-01-01T00:00:00",
      "endsOn": "2220-01-01T00:00:00",
      "workCycleID": 9
    }
  ],
  "departmentId": 14,
  "managerId": 455,
  "rolePrincipalId": 55,
  "habilitedRoles": [
    {
      "id": 59
    },
    {
      "id": 81
    },
    {
      "id": 64
    },
    {
      "id": 65
    }
  ],
  "cultureID": 1040,
  "address": "13, rue Martin Bernard, 75 Paris",
  "directLine": "0123456789",
  "jobTitle": "Developer",
  "gender": "Male",
  "nationalityId": "FR",
  "personalEmail": "email@test.fr",
  "personalMobile": "0612345678",
  "professionalMobile": "0612345678",
  "quote": "string",
  "e_bloodType": "AB",
  "profile_figgo": {
    "id": 156
  },
  "userAxisValues_2": {
    "id": 35
  },
  "allowsElectronicPayslip": true,
  "bankName": "Banque Postale",
  "rib": null,
  "iban": "FR0312739000302346383836C42",
  "bic": "PSSTFRPPXXX",
  "frenchCarTaxHorsePower": 5,
  "frenchMotocyclesTaxHorsePower": null
}'
{
  "data": {
    "id": 416,
    "name": "John Doe",
    "url": "http://example.ilucca.net/api/users/1",
    "displayName": "Doe John",
    "modifiedAt": "2015-09-07T10:20:06.583",
    "lastName": "DOE",
    "firstName": "John",
    "login": "jdoe",
    "mail": "no-reply@lucca.fr",
    "dtContractStart": "2014-09-01T00:00:00",
    "dtContractEnd": null,
    "birthDate": "1989-12-22T00:00:00",
    "employeeNumber": "00057",
    "calendarId": 1,
    "calendar": {
      "id": 1,
      "url": "http://example.ilucca.net/api/v3/publicHolidayCalendars/1",
      "name": "Jours fériés en France"
    },
    "cultureID": 1036,
    "culture": {
      "id": 1036,
      "name": "français (France)",
      "url": "http://example.ilucca.net/api/v3/cultures/1036"
    },
    "picture": {
      "id": "74d381db-dd4d-4f64-bc1e-582d806e58a8",
      "url": "http://example.ilucca.net/api/v3/files/74d381db-dd4d-4f64-bc1e-582d806e58a8",
      "name": "jdoe.png"
    },
    "legalEntityId": 1,
    "legalEntity": {
      "id": 1,
      "name": "Lucca",
      "url": "http://example.ilucca.net/api/v3/legalEntities/1"
    },
    "departmentId": 13,
    "department": {
      "id": 13,
      "name": "BU Timmi/Lucca",
      "url": "http://example.ilucca.net/api/v3/departments/13"
    },
    "managerId": 383,
    "manager": {
      "id": 383,
      "name": "Roger Smith",
      "url": "http://example.ilucca.net/api/v3/users/383"
    },
    "rolePrincipalId": 55,
    "rolePrincipal": {
      "id": 55,
      "name": "User",
      "url": "http://example.ilucca.net/api/v3/roles/55"
    },
    "habilitedRoles": [
      {
        "id": 59,
        "name": "Employee +",
        "url": "http://example.ilucca.net/api/v3/roles/59"
      },
      {
        "id": 63,
        "name": "Analytics access",
        "url": "http://example.ilucca.net/api/roles/63"
      }
    ],
    "userWorkCycles": [
      {
        "id": 288,
        "ownerID": 416,
        "workCycleID": 6,
        "startsOn": "1900-01-01T00:00:00",
        "endsOn": "2015-03-09T00:00:00"
      },
      {
        "id": 289,
        "ownerID": 416,
        "workCycleID": 9,
        "startsOn": "2015-03-10T00:00:00",
        "endsOn": "2015-10-13T00:00:00"
      },
      {
        "id": 317,
        "ownerID": 416,
        "workCycleID": 14,
        "startsOn": "2015-10-13T00:00:00",
        "endsOn": "9999-12-31T00:00:00"
      }
    ],
    "allowsElectronicPayslip": true,
    "userAxisValues_2": {
      "id": 35
    }
  }
}

Headers

Authorization
string
required

API key. Value must be formatted like so: lucca application={api_key}.

Path Parameters

id
string
required

ID of the user.

Query Parameters

fields
string

Comma-separated list of fields of the user to include in responses. Extended data can be retrieved with ?fields=extendedData.

Body

application/json
firstName
string
required

Employee's first name (given name).

Minimum length: 1
lastName
string
required

Employee's last name (family name).

Minimum length: 1
login
string
required

Unique identifier of this employee.

Minimum length: 1
mail
string
required

Employee's professional email address.

Minimum length: 1
dtContractStart
string<date-time>
required

First day of employment.

Establishment this employee works for.

Required range: x >= 1
employeeNumber
string | null
required

Employee number. Must be unique by establishment (i.e. legalEntity).

Minimum length: 1
departmentId
integer
required

Identifier of the department this employee works in.

Required range: x >= 1
managerId
integer | null
required

Identifier this user/employee's manager. Is also a user/employee. Null may be interpreted as "this employee has no manager but themselves".

birthDate
string<date-time> | null
required

Birth date of this employee.

cultureID
integer
required

Language code identifiers (LCID).

Required range: 1025 <= x <= 58380
Examples:

1036

1033

1031

1034

calendarId
integer | null
required

Unique identifier of this employee's business-holidays calendar.

Required range: x >= 1
rolePrincipalId
integer
required

Identifier of the "primary" role this user/employee has.

There are two types of roles: "primary" and "secondary". A user/employee must have a single primary role, that dictates their overall level of access, as well as zero or several complementary "secondary" roles.

Required range: x >= 1
habilitedRoles
object[]
required

List of "secondary" (complementary) roles given to this user/employee.

dtContractEnd
string<date-time> | null

Last day of employment. Leave null if unknown.

manager
object
cspId
integer | null

Identifier of the socio-professional category of this employee.

Required range: x >= 1
nationalityId
string | null

ISO 3166-1 alpha-2 country code

Required string length: 2
Examples:

"FR"

"UK"

"US"

"ES"

"IT"

"DE"

seniorityDate
string<date-time> | null

Seniority date of this employee. If left null, you may fall back on this employee's dtContractStart.

insuranceNumber
string | null

Social security number of this employee.

calendar
object
userWorkCycles
object[]

Work-cycles describe the expected (recurring) working hours of the employee. An employee may be given multiple work-cycles over their career, but no two may overlap.

picture
object

Profile picture of this user/employee.

rolePrincipal
object
address
string | null

Personal address of this user/employee.

directLine
string<phone> | null

Professional landline phone number of this user/employee.

jobTitle
string | null

Job title of this user/employee.

Minimum length: 1
gender
enum<string>
default:Undefined

Employee declared gender.

Available options:
Undefined,
Male,
Female,
Misc
personalEmail
string<email> | null

Personal email address of this user/employee.

personalMobile
string<phone> | null

Personal mobile phone number of this user/employee.

professionalMobile
string<phone> | null

Professional mobile phone number of this user/employee.

allowsElectronicPayslip
boolean | null

Whether this user/employee gave their consent to receive their payslip in an electronic format (i.e. PDF and email) rather than through physical means. This property is used by the Lucca Payslips application.

quote
string | null

Optional personal quote of this user/employee. Reflects their mood and/or character. Displayed in the "who's who".

personalCard
string | null

Personal credit card number. Only when Lucca Expenses is installed.

corporateCard
string | null

Coporate credit card number. Only when Lucca Expenses is installed.

bankName
string | null

Name of bank of this user/employee bank account.

rib
string | null

Employee personal bank account RIB (French: "Relevé d'identité Bancaire").

iban
string | null

Employee personal bank account IBAN (International Bank Account Number).

bic
string | null

Employee personal bank account SWIFT BIC code (routing number).

frenchCarTaxHorsePower
integer | null

Number of fiscal horspowers of the employee car in the context of mileage-related expense claims. Only when Lucca Expenses is installed.

frenchMotocyclesTaxHorsePower
integer | null

Number of fiscal horspowers of the employee motorcycle in the context of mileage-related expense claims. Only when Lucca Expenses is installed.

unitSellPrice
number | null

Legacy property. Should not be used.

modifiedAt
string<date-time>

Timestamp of the last time this user/employees attributes were modified.

Minimum length: 1
profile_figgo
object | null

Leave accrual profile in Lucca Absences

fullTimeEquivalent
object | null

Full-time equivalent ratio in Lucca Compensation.

theoreticalRemuneration
object | null

Theoretical compensation in Lucca Compensation.

manager2Id
integer | null

Manager 2 may be used in the Lucca Absences approval workflow (depends on how it is configured).

manager2Id should be used in write requests, and manager2 in read requests in order to retrieve the corresponding user representation.

Response

OK

data
object
Example:
{
"id": 416,
"name": "John Doe",
"url": "http://example.ilucca.net/api/users/1",
"displayName": "Doe John",
"modifiedAt": "2015-09-07T10:20:06.583",
"lastName": "DOE",
"firstName": "John",
"login": "jdoe",
"mail": "no-reply@lucca.fr",
"dtContractStart": "2014-09-01T00:00:00",
"dtContractEnd": null,
"birthDate": "1989-12-22T00:00:00",
"employeeNumber": "00057",
"calendarId": 1,
"calendar": {
"id": 1,
"url": "http://example.ilucca.net/api/v3/publicHolidayCalendars/1",
"name": "Jours fériés en France"
},
"cultureID": 1036,
"culture": {
"id": 1036,
"name": "français (France)",
"url": "http://example.ilucca.net/api/v3/cultures/1036"
},
"picture": {
"id": "74d381db-dd4d-4f64-bc1e-582d806e58a8",
"url": "http://example.ilucca.net/api/v3/files/74d381db-dd4d-4f64-bc1e-582d806e58a8",
"name": "jdoe.png"
},
"legalEntityId": 1,
"legalEntity": {
"id": 1,
"name": "Lucca",
"url": "http://example.ilucca.net/api/v3/legalEntities/1"
},
"departmentId": 13,
"department": {
"id": 13,
"name": "BU Timmi/Lucca",
"url": "http://example.ilucca.net/api/v3/departments/13"
},
"managerId": 383,
"manager": {
"id": 383,
"name": "Roger Smith",
"url": "http://example.ilucca.net/api/v3/users/383"
},
"rolePrincipalId": 55,
"rolePrincipal": {
"id": 55,
"name": "User",
"url": "http://example.ilucca.net/api/v3/roles/55"
},
"habilitedRoles": [
{
"id": 59,
"name": "Employee +",
"url": "http://example.ilucca.net/api/v3/roles/59"
},
{
"id": 63,
"name": "Analytics access",
"url": "http://example.ilucca.net/api/roles/63"
}
],
"userWorkCycles": [
{
"id": 288,
"ownerID": 416,
"workCycleID": 6,
"startsOn": "1900-01-01T00:00:00",
"endsOn": "2015-03-09T00:00:00"
},
{
"id": 289,
"ownerID": 416,
"workCycleID": 9,
"startsOn": "2015-03-10T00:00:00",
"endsOn": "2015-10-13T00:00:00"
},
{
"id": 317,
"ownerID": 416,
"workCycleID": 14,
"startsOn": "2015-10-13T00:00:00",
"endsOn": "9999-12-31T00:00:00"
}
],
"allowsElectronicPayslip": true,
"userAxisValues_2": { "id": 35 }
}